/**
  * @test
  */
 public function resolveValueSetsCaseSensitiveFlagIfLowerCaseIsFalse()
 {
     $object = new \stdClass();
     $this->mockPersistenceManager->expects($this->atLeastOnce())->method('getIdentifierByObject')->with($object)->will($this->returnValue('TheIdentifier'));
     $this->mockPersistenceManager->expects($this->atLeastOnce())->method('getObjectByIdentifier')->with('TheIdentifier')->will($this->returnValue($object));
     $this->mockObjectPathMappingRepository->expects($this->once())->method('findOneByObjectTypeUriPatternAndIdentifier')->with('stdClass', 'SomeUriPattern', 'TheIdentifier')->will($this->returnValue(null));
     $existingObjectPathMapping = new ObjectPathMapping();
     $existingObjectPathMapping->setObjectType('stdClass');
     $existingObjectPathMapping->setUriPattern('SomeUriPattern');
     $existingObjectPathMapping->setPathSegment('The/Path/Segment');
     $existingObjectPathMapping->setIdentifier('AnotherIdentifier');
     $this->identityRoutePart->expects($this->once())->method('createPathSegmentForObject')->with($object)->will($this->returnValue('The/Path/Segment'));
     $this->mockObjectPathMappingRepository->expects($this->at(1))->method('findOneByObjectTypeUriPatternAndPathSegment')->with('stdClass', 'SomeUriPattern', 'The/Path/Segment', true)->will($this->returnValue($existingObjectPathMapping));
     $this->mockObjectPathMappingRepository->expects($this->at(2))->method('findOneByObjectTypeUriPatternAndPathSegment')->with('stdClass', 'SomeUriPattern', 'The/Path/Segment-1', true)->will($this->returnValue(null));
     $expectedObjectPathMapping = new ObjectPathMapping();
     $expectedObjectPathMapping->setObjectType('stdClass');
     $expectedObjectPathMapping->setUriPattern('SomeUriPattern');
     $expectedObjectPathMapping->setPathSegment('The/Path/Segment-1');
     $expectedObjectPathMapping->setIdentifier('TheIdentifier');
     $this->mockObjectPathMappingRepository->expects($this->once())->method('add')->with($expectedObjectPathMapping);
     $this->mockObjectPathMappingRepository->expects($this->once())->method('persistEntities');
     $this->identityRoutePart->setObjectType('stdClass');
     $this->identityRoutePart->setUriPattern('SomeUriPattern');
     $this->identityRoutePart->setLowerCase(false);
     $this->assertTrue($this->identityRoutePart->_call('resolveValue', $object));
     $this->assertSame('The/Path/Segment-1', $this->identityRoutePart->getValue());
 }