diff --git a/composer.json b/composer.json index 575582a..c26a158 100644 --- a/composer.json +++ b/composer.json @@ -20,7 +20,8 @@ } }, "require": { - "php": ">=7.0" + "php": ">=7.0", + "ext-json": "*" }, "require-dev": { "symfony/process": "^3.3", diff --git a/spec/CigarCliSpec.php b/spec/CigarCliSpec.php old mode 100644 new mode 100755 index dd644d1..59ad5b4 --- a/spec/CigarCliSpec.php +++ b/spec/CigarCliSpec.php @@ -73,4 +73,18 @@ expect($process->getExitCode())->toBe(0); }); + + it('can be passed headers as full arguments', function () { + $process = new Process('cd spec && cp stubs/.cigar.headers.json .cigar.json && ../bin/cigar --header="X-Cigar-Header: some-header-content-here" --header="X-Cigar-Header-2: more-header-content-here"'); + $process->run(); + + expect($process->getExitCode())->toBe(0); + }); + + it('can be passed headers as short arguments', function () { + $process = new Process('cd spec && cp stubs/.cigar.headers.json .cigar.json && ../bin/cigar -h "X-Cigar-Header: some-header-content-here" -h "X-Cigar-Header-2: more-header-content-here"'); + $process->run(); + + expect($process->getExitCode())->toBe(0); + }); }); diff --git a/spec/stubs/.cigar.headers.json b/spec/stubs/.cigar.headers.json new file mode 100755 index 0000000..856017f --- /dev/null +++ b/spec/stubs/.cigar.headers.json @@ -0,0 +1,12 @@ +[ + { + "url": "http://httpbin.org/headers", + "status": 200, + "content": "some-header-content-here" + }, + { + "url": "http://httpbin.org/headers", + "status": 200, + "content": "more-header-content-here" + } +]