diff --git a/.gitignore b/.gitignore index 723ef36..2e343bb 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ -.idea \ No newline at end of file +.idea +/bin +/vendor \ No newline at end of file diff --git a/composer.json b/composer.json index 9ac0fd0..1e006fc 100644 --- a/composer.json +++ b/composer.json @@ -14,6 +14,12 @@ "require": { "php": ">=5.3.2" }, + "require-dev": { + "phpspec/phpspec": "~2.0" + }, + "config": { + "bin-dir": "bin" + }, "autoload": { "psr-0": { "SimpleUPS\\": "src/" diff --git a/spec/SimpleUPS/AddressValidate/ResponseSpec.php b/spec/SimpleUPS/AddressValidate/ResponseSpec.php new file mode 100644 index 0000000..e06a859 --- /dev/null +++ b/spec/SimpleUPS/AddressValidate/ResponseSpec.php @@ -0,0 +1,28 @@ +beConstructedWith($address); + } + + function it_populates_valid_response_from_xml() + { + $xml = new \SimpleXMLElement(file_get_contents(__DIR__.'/fixtures/AddressValidateResponse-Valid.xml')); + + $this->isAddressValid()->shouldReturn(null); + $this->getCorrectedAddress()->shouldReturn(null); + + $this->fromXml($xml); + + $this->isAddressValid()->shouldReturn(true); + $this->getCorrectedAddress()->shouldReturnAnInstanceOf('SimpleUPS\AddressValidate\Address'); + } +} diff --git a/spec/SimpleUPS/AddressValidate/fixtures/AddressValidateResponse-Valid.xml b/spec/SimpleUPS/AddressValidate/fixtures/AddressValidateResponse-Valid.xml new file mode 100644 index 0000000..7fdd5df --- /dev/null +++ b/spec/SimpleUPS/AddressValidate/fixtures/AddressValidateResponse-Valid.xml @@ -0,0 +1,15 @@ + + + + + 123 + + 1234 Broadway + San Diego + CA + 12345 + 1234 + US + + +