+
+ {
+ local $ENV{GRAPHQL_CLIENT_OPTIONS} = '--url asdf --query "baz qux" --unpack';
+ local $expected->{query} = 'baz qux';
+ local $expected->{unpack} = 1;
+ $r = GraphQL::Client::CLI->_get_options(qw{--url foo});
+ is_deeply($r, $expected, 'options can come from GRAPHQL_CLIENT_OPTIONS') or diag explain $r;
+ }
+};
+
+subtest 'get_options_transport' => sub {
+ my $expected = {
+ format => 'json:pretty',
+ filter => undef,
+ help => undef,
+ manual => undef,
+ operation_name => undef,
+ outfile => undef,
+ query => 'bar',
+ transport => { headers => {'X-Test' => 'value', 'X-Test-2' => 'val2' } },
+ unpack => 0,
+ url => 'foo',
+ variables => undef,
+ version => undef,
+ };
+
+ my $r = GraphQL::Client::CLI->_get_options(qw{--url foo --query bar --transport headers.X-Test=value --transport headers.X-Test-2=val2});
+ is_deeply($r, $expected, '--url, --query set option and correctly expanded transport options') or diag explain $r;