summaryrefslogtreecommitdiffstats
path: root/tests/library/SSRS/Object
diff options
context:
space:
mode:
authorarron.woods <arron.woods@deae1e92-32f9-c189-e222-5b9b5081a27a>2011-03-10 23:14:50 +0000
committerarron.woods <arron.woods@deae1e92-32f9-c189-e222-5b9b5081a27a>2011-03-10 23:14:50 +0000
commit634884044dd95345962db9e54764f37f6ba84853 (patch)
treee16f69cd22e0ac4a1759987e2f66566b4f9a08eb /tests/library/SSRS/Object
downloadphp-ssrs-634884044dd95345962db9e54764f37f6ba84853.zip
php-ssrs-634884044dd95345962db9e54764f37f6ba84853.tar.gz
php-ssrs-634884044dd95345962db9e54764f37f6ba84853.tar.bz2
v0.1 committed
Diffstat (limited to 'tests/library/SSRS/Object')
-rwxr-xr-xtests/library/SSRS/Object/AbstractTest.php30
-rwxr-xr-xtests/library/SSRS/Object/CatalogItemsTest.php69
2 files changed, 99 insertions, 0 deletions
diff --git a/tests/library/SSRS/Object/AbstractTest.php b/tests/library/SSRS/Object/AbstractTest.php
new file mode 100755
index 0000000..3cfa8f4
--- /dev/null
+++ b/tests/library/SSRS/Object/AbstractTest.php
@@ -0,0 +1,30 @@
+<?php
+
+class SSRS_Object_AbstractTest extends PHPUnit_Framework_TestCase {
+
+ public function testSetDataWithStdClass() {
+ $data = new stdClass;
+ $data->test1 = 'a';
+ $data->test2 = 'b';
+
+ $object = new SSRS_Object_Abstract($data);
+
+ $this->assertEquals($data->test1, $object->test1);
+ $this->assertEquals($data->test2, $object->test2);
+ }
+
+ public function testSetDataWithArray() {
+ $data = array('test1' => 'a', 'test2' => 'b');
+
+ $object = new SSRS_Object_Abstract($data);
+
+ $this->assertEquals($data['test1'], $object->test1);
+ $this->assertEquals($data['test2'], $object->test2);
+ }
+
+ public function testSetDataWithNull() {
+ $object = new SSRS_Object_Abstract();
+ $this->assertEquals(array(), $object->data);
+ }
+
+} \ No newline at end of file
diff --git a/tests/library/SSRS/Object/CatalogItemsTest.php b/tests/library/SSRS/Object/CatalogItemsTest.php
new file mode 100755
index 0000000..a62d9e6
--- /dev/null
+++ b/tests/library/SSRS/Object/CatalogItemsTest.php
@@ -0,0 +1,69 @@
+<?php
+
+require_once('library/SSRS/Object/Abstract.php');
+require_once('library/SSRS/Object/CatalogItems.php');
+require_once('library/SSRS/Object/CatalogItem.php');
+
+/**
+ * Description of CatalogItemsTest
+ *
+ * @author arron
+ */
+class SSRS_Object_CatalogItemsTest extends PHPUnit_Framework_TestCase {
+
+ public function testSetCatalogItems() {
+ $catalogItem1 = new stdClass;
+ $catalogItem1->ID = '1386fc6d-9c58-489f-adea-081146b62799';
+ $catalogItem1->Name = 'Reference Report';
+ $catalogItem1->Path = '/Reports/Reference Report';
+ $catalogItem1->TypeName = 'Report';
+ $catalogItem1->Size = '234413';
+ $catalogItem1->CreationDate = '2011-03-03T12:32:57.063';
+ $catalogItem1->ModifiedDate = '2011-03-03T12:51:12.05';
+ $catalogItem1->CreatedBy = 'MSSQL\WebAccount';
+ $catalogItem1->ModifiedBy = 'MSSQL\WebAccount';
+
+ $data = new stdClass;
+ $data->CatalogItems = new stdClass;
+ $data->CatalogItems->CatalogItem = array($catalogItem1);
+
+ $expected = new SSRS_Object_CatalogItems();
+ $expected->addCatalogItem(new SSRS_Object_CatalogItem($catalogItem1));
+
+ $object = new SSRS_Object_CatalogItems($data);
+ $this->assertEquals($expected, $object);
+ }
+
+ /**
+ * @expectedException PHPUnit_Framework_Error
+ */
+ public function testPassingInvalidObjectToAddCatalogItemThrowsError() {
+ $object = new SSRS_Object_CatalogItems();
+ $object->addCatalogItem(new SSRS_Object_Abstract());
+ }
+
+ public function testCatalogItemsEmptyArrayOnInit() {
+ $object = new SSRS_Object_CatalogItems();
+ $this->assertEquals(array(), $object->CatalogItems);
+ }
+
+ public function testAddCatalogItem() {
+ $object = new SSRS_Object_CatalogItems();
+ $object->addCatalogItem(new SSRS_Object_CatalogItem());
+
+ $this->assertEquals(1, count($object->CatalogItems));
+ }
+
+ public function testSetCatalogItemsKeepsCurrentItems() {
+ $dummy = new stdClass;
+ $dummy->CatalogItem[] = new SSRS_Object_CatalogItem();
+
+ $object = new SSRS_Object_CatalogItems();
+ $object->setCatalogItems($dummy);
+ $this->assertEquals(1, count($object->CatalogItems));
+
+ $object->setCatalogItems($dummy);
+ $this->assertEquals(2, count($object->CatalogItems));
+ }
+
+} \ No newline at end of file