public function testBuildWithFallbacks()
 {
     $fallbackses = array($this->getFaker()->unique()->word => array($this->getFaker()->unique()->word, $this->getFaker()->unique()->word, $this->getFaker()->unique()->word), $this->getFaker()->unique()->word => array($this->getFaker()->unique()->word));
     foreach ($fallbackses as $name => $fallbacks) {
         foreach ($fallbacks as $fallback) {
             $this->builder->addFallback($name, $fallback);
         }
     }
     $this->builder->add($this->source1)->add($this->source2);
     $source = new ChainSource();
     $source->add(new CircularGuardSource(new FallbackSource($fallbackses, $source)))->add($this->source1)->add($this->source2);
     $this->assertEquals($source, $this->builder->build());
 }