public function testHas() { $enum = EnumBasic::ONE(); $this->assertFalse($enum->has('invalid')); $this->assertFalse($enum->has(EnumInheritance::ONE())); $this->assertTrue($enum->has(EnumBasic::ONE())); $this->assertTrue($enum->has(EnumBasic::ONE)); }
public function testNotSerializable() { $enum = EnumBasic::ONE(); $this->setExpectedException('LogicException'); serialize($enum); }
public function testKeyThrowsRuntimeExceptionOnInvalidFlag() { $enumMap = new EnumMap('MabeEnumTest\\TestAsset\\EnumBasic'); $enumMap->attach(EnumBasic::ONE()); $enumMap->rewind(); // change internal flags to an invalid current flag $reflectionClass = new ReflectionClass($enumMap); $reflectionProp = $reflectionClass->getProperty('flags'); $reflectionProp->setAccessible(true); $reflectionProp->setValue($enumMap, 0); $this->setExpectedException('RuntimeException'); $enumMap->key(); }