diff --git a/Theme/Backend/costobject-list.tpl.php b/Theme/Backend/costobject-list.tpl.php
new file mode 100644
index 0000000..a227552
--- /dev/null
+++ b/Theme/Backend/costobject-list.tpl.php
@@ -0,0 +1,52 @@
+getData('costobject');
+
+$previous = empty($costobject) ? '{/prefix}tag/list' : '{/prefix}tag/list?{?}&id=' . \reset($costobject)->getId() . '&ptype=-';
+$next = empty($costobject) ? '{/prefix}tag/list' : '{/prefix}tag/list?{?}&id=' . \end($costobject)->getId() . '&ptype=+';
+
+echo $this->getData('nav')->render(); ?>
+
+
+
+
= $this->getHtml('CostObjects') ?>
+
+
+
+
diff --git a/tests/Admin/AdminTest.php b/tests/Admin/AdminTest.php
new file mode 100644
index 0000000..2d57366
--- /dev/null
+++ b/tests/Admin/AdminTest.php
@@ -0,0 +1,26 @@
+setCode('123');
+ $costcenter->setName('Test CostCenter');
+ $costcenter->setDescription('Test description');
+
+ $id = CostCenterMapper::create($costcenter);
+ self::assertGreaterThan(0, $costcenter->getId());
+ self::assertEquals($id, $costcenter->getId());
+
+ $costcenterR = CostCenterMapper::withConditional('language', ISO639x1Enum::_EN)::get($costcenter->getId());
+ self::assertEquals($costcenter->getCode(), $costcenterR->getCode());
+ self::assertEquals($costcenter->getName(), $costcenterR->getName());
+ self::assertEquals($costcenter->getDescription(), $costcenterR->getDescription());
+ }
+}
diff --git a/tests/Models/CostCenterTest.php b/tests/Models/CostCenterTest.php
new file mode 100644
index 0000000..5db274c
--- /dev/null
+++ b/tests/Models/CostCenterTest.php
@@ -0,0 +1,66 @@
+getId());
+ self::assertEquals('', $cc->getName());
+ self::assertEquals('', $cc->getCode());
+ self::assertEquals('', $cc->getDescription());
+ self::assertEquals(null, $cc->getParent());
+ }
+
+ public function testNameInputOutput() : void
+ {
+ $cc = new CostCenter();
+
+ $cc->setName('TestName');
+ self::assertEquals('TestName', $cc->getName());
+ }
+
+ public function testCodeInputOutput() : void
+ {
+ $cc = new CostCenter();
+
+ $cc->setCode('TestCode');
+ self::assertEquals('TestCode', $cc->getCode());
+ }
+
+ public function testDescriptionInputOutput() : void
+ {
+ $cc = new CostCenter();
+
+ $cc->setDescription('TestDescription');
+ self::assertEquals('TestDescription', $cc->getDescription());
+ }
+
+ public function testParentInputOutput() : void
+ {
+ $cc = new CostCenter();
+
+ $cc->setParent(1);
+ self::assertEquals(1, $cc->getParent());
+ }
+}
diff --git a/tests/Models/CostObjectMapperTest.php b/tests/Models/CostObjectMapperTest.php
new file mode 100644
index 0000000..7e5361d
--- /dev/null
+++ b/tests/Models/CostObjectMapperTest.php
@@ -0,0 +1,42 @@
+setCode('123');
+ $costobject->setName('Test CostObject');
+ $costobject->setDescription('Test description');
+
+ $id = CostObjectMapper::create($costobject);
+ self::assertGreaterThan(0, $costobject->getId());
+ self::assertEquals($id, $costobject->getId());
+
+ $costobjectR = CostObjectMapper::withConditional('language', ISO639x1Enum::_EN)::get($costobject->getId());
+ self::assertEquals($costobject->getCode(), $costobjectR->getCode());
+ self::assertEquals($costobject->getName(), $costobjectR->getName());
+ self::assertEquals($costobject->getDescription(), $costobjectR->getDescription());
+ }
+}
diff --git a/tests/Models/CostObjectTest.php b/tests/Models/CostObjectTest.php
new file mode 100644
index 0000000..10e3af6
--- /dev/null
+++ b/tests/Models/CostObjectTest.php
@@ -0,0 +1,66 @@
+getId());
+ self::assertEquals('', $co->getName());
+ self::assertEquals('', $co->getCode());
+ self::assertEquals('', $co->getDescription());
+ self::assertEquals(null, $co->getParent());
+ }
+
+ public function testNameInputOutput() : void
+ {
+ $co = new CostObject();
+
+ $co->setName('TestName');
+ self::assertEquals('TestName', $co->getName());
+ }
+
+ public function testCodeInputOutput() : void
+ {
+ $co = new CostObject();
+
+ $co->setCode('TestCode');
+ self::assertEquals('TestCode', $co->getCode());
+ }
+
+ public function testDescriptionInputOutput() : void
+ {
+ $co = new CostObject();
+
+ $co->setDescription('TestDescription');
+ self::assertEquals('TestDescription', $co->getDescription());
+ }
+
+ public function testParentInputOutput() : void
+ {
+ $co = new CostObject();
+
+ $co->setParent(1);
+ self::assertEquals(1, $co->getParent());
+ }
+}