| Conditions | 3 | 
| Paths | 3 | 
| Total Lines | 17 | 
| Code Lines | 9 | 
| Lines | 0 | 
| Ratio | 0 % | 
| Tests | 10 | 
| CRAP Score | 3 | 
| Changes | 1 | ||
| Bugs | 0 | Features | 0 | 
| 1 | <?php  | 
            ||
| 29 | 30 | public function createSchema(): Schema  | 
            |
| 30 |     { | 
            ||
| 31 | 30 | $schema = new Schema();  | 
            |
| 32 | |||
| 33 | 30 |         foreach ($this->aggregateClasses as $aggregateClass) { | 
            |
| 34 | 30 |             if (!is_a($aggregateClass, SpecifiesSchema::class, true)) { | 
            |
| 35 | 1 | throw new InvalidArgumentException(sprintf(  | 
            |
| 36 | 1 | 'Class "%s" was expected to implement "%s"',  | 
            |
| 37 | 1 | $aggregateClass,  | 
            |
| 38 | 1 | SpecifiesSchema::class  | 
            |
| 39 | ));  | 
            ||
| 40 | }  | 
            ||
| 41 | |||
| 42 | 29 | $aggregateClass::specifySchema($schema);  | 
            |
| 43 | }  | 
            ||
| 44 | |||
| 45 | 29 | return $schema;  | 
            |
| 46 | }  | 
            ||
| 48 |