| 432 | | |
|---|
| 433 | | /** |
|---|
| 434 | | * Test serializing an object without annotations and different stragies |
|---|
| 435 | | * |
|---|
| 436 | | * @todo Implement tests for mixing annotations with strategies |
|---|
| 437 | | */ |
|---|
| 438 | | public function testDefaultObjectStrategies() { |
|---|
| 439 | | $obj = new XMLSerializerDefaultObj(); |
|---|
| 440 | | |
|---|
| 441 | | // No strategy |
|---|
| 442 | | $writer = new stubDomXMLStreamWriter(); |
|---|
| 443 | | $this->serializer->serialize($obj, $writer); |
|---|
| 444 | | $this->assertEqual('<?xml version="1.0" encoding="ISO-8859-1"?>' . "\n" . '<XMLSerializerDefaultObj><foo>foo</foo><getBar>bar</getBar></XMLSerializerDefaultObj>', $writer->asXML()); |
|---|
| 445 | | |
|---|
| 446 | | // STRATEGY_ALL |
|---|
| 447 | | $writer = new stubDomXMLStreamWriter(); |
|---|
| 448 | | $this->serializer->serialize($obj, $writer, array(stubXMLSerializer::OPT_STRATEGY => stubXMLSerializer::STRATEGY_ALL)); |
|---|
| 449 | | $this->assertEqual('<?xml version="1.0" encoding="ISO-8859-1"?>' . "\n" . '<XMLSerializerDefaultObj><foo>foo</foo><getBar>bar</getBar></XMLSerializerDefaultObj>', $writer->asXML()); |
|---|
| 450 | | |
|---|
| 451 | | // STRATEGY_NONE |
|---|
| 452 | | $writer = new stubDomXMLStreamWriter(); |
|---|
| 453 | | $this->serializer->serialize($obj, $writer, array(stubXMLSerializer::OPT_STRATEGY => stubXMLSerializer::STRATEGY_NONE)); |
|---|
| 454 | | $this->assertEqual('<?xml version="1.0" encoding="ISO-8859-1"?>' . "\n" . '<XMLSerializerDefaultObj/>', $writer->asXML()); |
|---|
| 455 | | |
|---|
| 456 | | // STRATEGY_PROPS |
|---|
| 457 | | $writer = new stubDomXMLStreamWriter(); |
|---|
| 458 | | $this->serializer->serialize($obj, $writer, array(stubXMLSerializer::OPT_STRATEGY => stubXMLSerializer::STRATEGY_PROPS)); |
|---|
| 459 | | $this->assertEqual('<?xml version="1.0" encoding="ISO-8859-1"?>' . "\n" . '<XMLSerializerDefaultObj><foo>foo</foo></XMLSerializerDefaultObj>', $writer->asXML()); |
|---|
| 460 | | |
|---|
| 461 | | // STRATEGY_METHODS |
|---|
| 462 | | $writer = new stubDomXMLStreamWriter(); |
|---|
| 463 | | $this->serializer->serialize($obj, $writer, array(stubXMLSerializer::OPT_STRATEGY => stubXMLSerializer::STRATEGY_METHODS)); |
|---|
| 464 | | $this->assertEqual('<?xml version="1.0" encoding="ISO-8859-1"?>' . "\n" . '<XMLSerializerDefaultObj><getBar>bar</getBar></XMLSerializerDefaultObj>', $writer->asXML()); |
|---|
| 465 | | } |
|---|