/**
  * @test
  */
 public function it_constructs_a_prototype()
 {
     $intPrototype = Integer::prototype();
     $this->assertInstanceOf('Prooph\\Done\\Process\\Type\\Prototype', $intPrototype);
     $description = $intPrototype->typeDescription();
     $this->assertEquals('Prooph\\Done\\Process\\Type\\Integer', $intPrototype->of());
     $this->assertEquals('Integer', $description->label());
     $this->assertEquals('integer', $description->nativeType());
     $this->assertFalse($description->hasIdentifier());
 }
 /**
  * @return array[propertyName => Prototype]
  */
 public static function getPropertyPrototypes()
 {
     return array('street' => String::prototype(), 'streetNumber' => Integer::prototype(), 'zip' => String::prototype(), 'city' => String::prototype());
 }
 /**
  * @return array[propertyName => Prototype]
  */
 public static function getPropertyPrototypes()
 {
     return array('id' => Integer::prototype(), 'name' => String::prototype(), 'address' => AddressDictionary::prototype());
 }