/** * Tests whether set() works as expected. * * @return void */ public function testSet() { $map = new NormalizingMap(); $map->set('FOO', 'BAR'); $this->assertTrue($map->containsKey('FOO')); $this->assertTrue($map->containsValue('BAR')); $this->assertFalse($map->containsKey('foo')); $this->assertFalse($map->containsValue('Bar')); $this->assertSame('BAR', $map->get('FOO')); $map->set('FOO', 'baz'); $this->assertTrue($map->containsKey('FOO')); $this->assertTrue($map->containsValue('baz')); $this->assertSame('baz', $map->get('FOO')); $map->set(0, 42); $this->assertTrue($map->containsKey(0)); $this->assertTrue($map->containsValue(42)); $this->assertSame(42, $map->get(0)); $map->set(0, 'FOO'); $this->assertSame('FOO', $map->get(0)); $map = new NormalizingMap(null, $this->getToLowerCaseCallback()); $map->set('FOO', 'BAR'); $this->assertTrue($map->containsKey('FOO')); $this->assertTrue($map->containsValue('BAR')); $this->assertFalse($map->containsKey('foo')); $this->assertTrue($map->containsValue('Bar')); $this->assertSame('bar', $map->get('FOO')); $map->set('FOO', 'baz'); $this->assertFalse($map->containsKey('fOO')); $this->assertTrue($map->containsValue('baz')); $this->assertSame('baz', $map->get('FOO')); $map->set(0, 42); $this->assertTrue($map->containsKey(0)); $this->assertTrue($map->containsValue(42)); $this->assertSame('42', $map->get(0)); $map->set(0, 'FOO'); $this->assertSame('foo', $map->get(0)); }