diff options
Diffstat (limited to 'tests/MetaboxTest.php')
-rw-r--r-- | tests/MetaboxTest.php | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/tests/MetaboxTest.php b/tests/MetaboxTest.php new file mode 100644 index 0000000..d5a27a3 --- /dev/null +++ b/tests/MetaboxTest.php @@ -0,0 +1,65 @@ +<?php + +use PHPUnit\Framework\TestCase; +use PostTypes\Metabox; +use PostTypes\MetaboxField; + +class MetaboxTest extends TestCase +{ + /** + * @var Metabox + */ + public $metabox; + + /** + * @var MetaboxField + */ + public $field; + + /** + * @inheritDoc + */ + protected function setUp(): void + { + $this->metabox = new Metabox('Test Metabox'); + $this->field = new MetaboxField('Test Field'); + } + + /** + * @test + */ + public function hasGroupKeyOnInstantiation() + { + $this->assertEquals('group_test_metabox', $this->metabox->key); + } + + /** + * @test + */ + public function assignsPostTypeOnce() + { + $this->metabox->posttype(['post', 'page']); + + $expectedPostTypes = [ + 'post' => 'post', + 'page' => 'page', + ]; + + $this->assertEquals($expectedPostTypes, $this->metabox->posttypes); + + $this->metabox->posttype('post'); + + $this->assertEquals($expectedPostTypes, $this->metabox->posttypes); + } + + /** + * @test + */ + public function modifiesAndHoldsPassedField() + { + $this->metabox->field($this->field); + + $this->assertEquals($this->field->parent, $this->metabox->key); + $this->assertEquals($this->metabox->fields[$this->field->key], $this->field); + } +} |