module = new Module(); } /** * @testdox The module has the expected default values after initialization * @covers Modules\Admin\Models\Module * @group module */ public function testDefault() : void { self::assertEquals('', $this->module->id); self::assertInstanceOf('\DateTimeImmutable', $this->module->createdAt); self::assertEquals('', $this->module->name); self::assertEquals(ModuleStatus::INACTIVE, $this->module->status); self::assertEquals(\json_encode($this->module->jsonSerialize()), $this->module->__toString()); self::assertEquals($this->module->jsonSerialize(), $this->module->toArray()); } /** * @testdox The name can be set and returned * @covers Modules\Admin\Models\Module * @group module */ public function testNameInputOutput() : void { $this->module->name = 'Name'; self::assertEquals('Name', $this->module->name); } /** * @testdox The status can be set and returned * @covers Modules\Admin\Models\Module * @group module */ public function testStatusInputOutput() : void { $this->module->status = ModuleStatus::ACTIVE; self::assertEquals(ModuleStatus::ACTIVE, $this->module->status); } /** * @testdox The module can be serialized * @covers Modules\Admin\Models\Module * @group module */ public function testSerializations() : void { self::assertEquals(\json_encode($this->module->jsonSerialize()), $this->module->__toString()); self::assertEquals($this->module->jsonSerialize(), $this->module->toArray()); } }