|
8 | 8 | use MabeEnumTest\TestAsset\EnumInheritance;
|
9 | 9 | use OutOfBoundsException;
|
10 | 10 | use PHPUnit\Framework\TestCase;
|
| 11 | +use UnexpectedValueException; |
11 | 12 |
|
12 | 13 | /**
|
13 | 14 | * Unit tests for the class MabeEnum\EnumMap
|
@@ -98,6 +99,14 @@ public function testBasicWithEnumeratorValues()
|
98 | 99 | $this->assertSame([], $enumMap->getValues());
|
99 | 100 | }
|
100 | 101 |
|
| 102 | + public function testOffsetGetMissingKey() |
| 103 | + { |
| 104 | + $enumMap = new EnumMap(EnumBasic::class); |
| 105 | + |
| 106 | + $this->expectException(UnexpectedValueException::class); |
| 107 | + $enumMap->offsetGet(EnumBasic::ONE); |
| 108 | + } |
| 109 | + |
101 | 110 | public function testIterate()
|
102 | 111 | {
|
103 | 112 | $enumMap = new EnumMap(EnumBasic::class);
|
@@ -132,6 +141,7 @@ public function testIterate()
|
132 | 141 |
|
133 | 142 | // go to the next element (out of range)
|
134 | 143 | $this->assertNull($enumMap->next());
|
| 144 | + $this->assertNull($enumMap->current()); |
135 | 145 | $this->assertFalse($enumMap->valid());
|
136 | 146 | $this->assertSame(null, $enumMap->key());
|
137 | 147 |
|
@@ -243,6 +253,8 @@ public function testNullValue()
|
243 | 253 | $enumMap[EnumBasic::ONE()] = null;
|
244 | 254 |
|
245 | 255 | $this->assertSame(1, $enumMap->count());
|
| 256 | + $this->assertNull($enumMap[EnumBasic::ONE]); |
| 257 | + $this->assertNull($enumMap->offsetGet(EnumBasic::ONE)); |
246 | 258 | $this->assertSame([EnumBasic::ONE()], $enumMap->getKeys());
|
247 | 259 |
|
248 | 260 | $enumMap->rewind();
|
|
0 commit comments