summaryrefslogtreecommitdiffstats
path: root/tests/library/SSRSTest/Object
diff options
context:
space:
mode:
authorArron Woods <me@arronwoods.com>2013-12-05 22:40:45 +0000
committerArron Woods <me@arronwoods.com>2013-12-05 22:40:45 +0000
commitad0e2ffc901c27477bba23bf762215b7e2350d21 (patch)
treefde2e3020c30110a967142cd879c216538cb33bd /tests/library/SSRSTest/Object
parente0fd2e51a5546d0d85cf249a6ebf45f9e06e6017 (diff)
downloadphp-ssrs-ad0e2ffc901c27477bba23bf762215b7e2350d21.zip
php-ssrs-ad0e2ffc901c27477bba23bf762215b7e2350d21.tar.gz
php-ssrs-ad0e2ffc901c27477bba23bf762215b7e2350d21.tar.bz2
Tests almost back to passing
Diffstat (limited to 'tests/library/SSRSTest/Object')
-rwxr-xr-xtests/library/SSRSTest/Object/AbstractTest.php34
-rwxr-xr-xtests/library/SSRSTest/Object/CatalogItemsTest.php70
2 files changed, 104 insertions, 0 deletions
diff --git a/tests/library/SSRSTest/Object/AbstractTest.php b/tests/library/SSRSTest/Object/AbstractTest.php
new file mode 100755
index 0000000..e4cd0d9
--- /dev/null
+++ b/tests/library/SSRSTest/Object/AbstractTest.php
@@ -0,0 +1,34 @@
+<?php
+
+namespace SSRSTest\Object;
+
+use SSRS\Object\ObjectAbstract;
+
+class AbstractTest extends \PHPUnit_Framework_TestCase {
+
+ public function testSetDataWithStdClass() {
+ $data = new \stdClass;
+ $data->test1 = 'a';
+ $data->test2 = 'b';
+
+ $object = $this->getMockForAbstractClass('\SSRS\Object\ObjectAbstract', array($data));
+
+ $this->assertEquals($data->test1, $object->test1);
+ $this->assertEquals($data->test2, $object->test2);
+ }
+
+ public function testSetDataWithArray() {
+ $data = array('test1' => 'a', 'test2' => 'b');
+
+ $object = $this->getMockForAbstractClass('\SSRS\Object\ObjectAbstract', array($data));
+
+ $this->assertEquals($data['test1'], $object->test1);
+ $this->assertEquals($data['test2'], $object->test2);
+ }
+
+ public function testSetDataWithNull() {
+ $object = $this->getMockForAbstractClass('\SSRS\Object\ObjectAbstract');
+ $this->assertEquals(array(), $object->data);
+ }
+
+} \ No newline at end of file
diff --git a/tests/library/SSRSTest/Object/CatalogItemsTest.php b/tests/library/SSRSTest/Object/CatalogItemsTest.php
new file mode 100755
index 0000000..554670f
--- /dev/null
+++ b/tests/library/SSRSTest/Object/CatalogItemsTest.php
@@ -0,0 +1,70 @@
+<?php
+
+namespace SSRSTest\Object;
+
+use SSRS\Object\CatalogItems;
+use SSRS\Object\CatalogItem;
+
+/**
+ * Description of CatalogItemsTest
+ *
+ * @author arron
+ */
+class 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 CatalogItems();
+ $expected->addCatalogItem(new CatalogItem($catalogItem1));
+
+ $object = new CatalogItems($data);
+ $this->assertEquals($expected, $object);
+ }
+
+ /**
+ * @expectedException PHPUnit_Framework_Error
+ */
+ public function testPassingInvalidObjectToAddCatalogItemThrowsError() {
+ $object = new CatalogItems();
+ $object->addCatalogItem(new \stdClass());
+ }
+
+ public function testCatalogItemsEmptyArrayOnInit() {
+ $object = new CatalogItems();
+ $this->assertEquals(array(), $object->CatalogItems);
+ }
+
+ public function testAddCatalogItem() {
+ $object = new CatalogItems();
+ $object->addCatalogItem(new CatalogItem());
+
+ $this->assertEquals(1, count($object->CatalogItems));
+ }
+
+ public function testSetCatalogItemsKeepsCurrentItems() {
+ $dummy = new \stdClass;
+ $dummy->CatalogItem[] = new CatalogItem();
+
+ $object = new 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