Example #1
0
 /**
  * @test
  */
 public function test_convert_from_camel()
 {
     fromLowerCamel:
     $cs = CaseSensor::LowerSnake();
     $this->assertEquals('foo_bar_baz', $cs->convert('fooBarBaz'));
     $cs = CaseSensor::UpperSnake();
     $this->assertEquals('FOO_BAR_BAZ', $cs->convert('fooBarBaz'));
     $cs = CaseSensor::LowerCamel();
     $this->assertEquals('fooBarBaz', $cs->convert('fooBarBaz'));
     $cs = CaseSensor::UpperCamel();
     $this->assertEquals('FooBarBaz', $cs->convert('fooBarBaz'));
     fromUpperCamel:
     $cs = CaseSensor::LowerSnake();
     $this->assertEquals('foo_bar_baz', $cs->convert('FooBarBaz'));
     $cs = CaseSensor::UpperSnake();
     $this->assertEquals('FOO_BAR_BAZ', $cs->convert('FooBarBaz'));
     $cs = CaseSensor::LowerCamel();
     $this->assertEquals('fooBarBaz', $cs->convert('FooBarBaz'));
     $cs = CaseSensor::UpperCamel();
     $this->assertEquals('FooBarBaz', $cs->convert('FooBarBaz'));
 }
Example #2
0
 /**
  * @test
  */
 public function test_build_prepare_with_returning_case_sensitive()
 {
     $context = new DaoBuilderContext(new Configuration(function ($conf) {
         $conf->connectionString = 'sqlite:///:memory:';
     }));
     $builder = new DaoBuilder(new \ReflectionClass(TodoDao2::class), $context->getDaoClassName(TodoDao2::class));
     $factory = new DomainFactory();
     lowerSnake:
     $builder->prepare();
     $methods = $builder->getMethods();
     $info = $methods['findByIdReturningEditor'];
     $this->assertArrayHasKey('returnDomain', $info);
     $this->assertInstanceOf(Domain\ObjectDomain::class, $info['returnDomain']);
     $children = $info['returnDomain']->getChildren();
     $this->assertArrayHasKey('id', $children);
     $this->assertInstanceOf(Domain\NamedAliasDomain::class, $children['id']);
     $this->assertEquals('id', $children['id']->getName());
     $this->assertEquals(['todo_id'], $children['id']->getAlias());
     $this->assertArrayHasKey('creator', $children);
     $this->assertInstanceOf(Domain\NamedAliasDomain::class, $children['creator']);
     $this->assertEquals('creator', $children['creator']->getName());
     $this->assertEquals(['creator_id'], $children['creator']->getAlias());
     $this->assertEquals(['creator_name'], $children['creator']->getOptFields());
     upperSnake:
     $builder->setReturnCaseSensor(CaseSensor::UpperSnake());
     $builder->prepare();
     $methods = $builder->getMethods();
     $info = $methods['findByIdReturningEditor'];
     $this->assertArrayHasKey('returnDomain', $info);
     $this->assertInstanceOf(Domain\ObjectDomain::class, $info['returnDomain']);
     $children = $info['returnDomain']->getChildren();
     $this->assertArrayHasKey('id', $children);
     $this->assertInstanceOf(Domain\NamedAliasDomain::class, $children['id']);
     $this->assertEquals('ID', $children['id']->getName());
     $this->assertEquals(['TODO_ID'], $children['id']->getAlias());
     $this->assertArrayHasKey('creator', $children);
     $this->assertInstanceOf(Domain\NamedAliasDomain::class, $children['creator']);
     $this->assertEquals('CREATOR', $children['creator']->getName());
     $this->assertEquals(['CREATOR_ID'], $children['creator']->getAlias());
     $this->assertEquals(['CREATOR_NAME'], $children['creator']->getOptFields());
     lowerCamel:
     $builder->setReturnCaseSensor(CaseSensor::LowerCamel());
     $builder->prepare();
     $methods = $builder->getMethods();
     $info = $methods['findByIdReturningEditor'];
     $this->assertArrayHasKey('returnDomain', $info);
     $this->assertInstanceOf(Domain\ObjectDomain::class, $info['returnDomain']);
     $children = $info['returnDomain']->getChildren();
     $this->assertArrayHasKey('id', $children);
     $this->assertInstanceOf(Domain\NamedAliasDomain::class, $children['id']);
     $this->assertEquals('id', $children['id']->getName());
     $this->assertEquals(['todoId'], $children['id']->getAlias());
     $this->assertArrayHasKey('creator', $children);
     $this->assertInstanceOf(Domain\NamedAliasDomain::class, $children['creator']);
     $this->assertEquals('creator', $children['creator']->getName());
     $this->assertEquals(['creatorId'], $children['creator']->getAlias());
     $this->assertEquals(['creatorName'], $children['creator']->getOptFields());
     upperCamel:
     $builder->setReturnCaseSensor(CaseSensor::UpperCamel());
     $builder->prepare();
     $methods = $builder->getMethods();
     $info = $methods['findByIdReturningEditor'];
     $this->assertArrayHasKey('returnDomain', $info);
     $this->assertInstanceOf(Domain\ObjectDomain::class, $info['returnDomain']);
     $children = $info['returnDomain']->getChildren();
     $this->assertArrayHasKey('id', $children);
     $this->assertInstanceOf(Domain\NamedAliasDomain::class, $children['id']);
     $this->assertEquals('Id', $children['id']->getName());
     $this->assertEquals(['TodoId'], $children['id']->getAlias());
     $this->assertArrayHasKey('creator', $children);
     $this->assertInstanceOf(Domain\NamedAliasDomain::class, $children['creator']);
     $this->assertEquals('Creator', $children['creator']->getName());
     $this->assertEquals(['CreatorId'], $children['creator']->getAlias());
     $this->assertEquals(['CreatorName'], $children['creator']->getOptFields());
 }