private function prepareBuilder(SchemaInterface $schema)
 {
     $loader = new YamlLoader(new FileLocator(TESTS_DIRECTORY . '/Resources/Schema'));
     $this->assertMethodChaining($this->object->registerLoader($loader), 'registerLoader');
     $this->assertMethodChaining($this->object->loadSchema('schema.yml'), 'loadSchema');
     $this->assertMethodChaining($this->object->loadImplementation('implementation.yml'), 'loadImplementation');
     $expected = $schema;
     $expected->registerType('User', $this->classType('User', 'User')->addProperty($this->property('name', new StringType()))->addProperty($this->property('lastname', new StringType())))->registerType('SuperUser', $this->classType('SuperUser', 'SuperUser', $expected->getType('User')));
 }
Exemplo n.º 2
0
 protected function setUp()
 {
     $builder = new SchemaBuilder();
     $this->object = $builder->build()->getType('Exception');
 }
Exemplo n.º 3
0
    public function setStreet($street)
    {
        $this->street = $street;
    }
    /**
     * @return mixed
     */
    public function getStreet()
    {
        return $this->street;
    }
}
$cache = new SchemaCache(__DIR__ . '/cache/schema');
if (!$cache->isFresh()) {
    $locator = new FileLocator(array(__DIR__));
    $builder = new SchemaBuilder();
    $builder->registerLoader(new YamlLoader($locator));
    $builder->loadSchema('schema.yml');
    $builder->loadImplementation('implementation.yml');
    $schema = $builder->build();
    $cache->write($schema, $builder->getResources());
} else {
    $schema = $cache->get();
}
$data = array('name' => 'Łukasz', 'registrationDate' => 1123818123, 'status' => 'ACTIVE', 'addresses' => array(array('street' => 'Sportowa', 'city' => 'Gdynia'), array('street' => 'Zamkowa', 'city' => 'Gdańsk')));
echo 'Raw data' . PHP_EOL;
print_r($data);
echo PHP_EOL . 'Transformed to "User" type:' . PHP_EOL;
$object = $schema->getType('User')->create($data);
print_r($object);
echo PHP_EOL . 'Extracted data from object of "User" type:' . PHP_EOL;