/** * @param string $value * @return \RainbowPHP\File\FileHandlerInterface Return false if the value can't be resolved */ public function resolve($value) { $resolvedValue = $this->doResolve($value); if (false === $resolvedValue) { $resolvedValue = ""; } $handler = new MemoryFileHandler(); $handler->write($resolvedValue); return $handler; }
public function testLookupHash() { $rainbow = new MemoryFileHandler(); $rainbow->write("foo,bar\nbar,baz\nfoo,baz"); $rainbow->reset(); $this->assertCount(0, $this->rainbow->lookupHash($rainbow, "orange")); $rainbow->reset(); $this->assertEquals(["baz" => "bar"], $this->rainbow->lookupHash($rainbow, "bar")); $rainbow->reset(); $this->assertEquals(["bar" => "foo"], $this->rainbow->lookupHash($rainbow, "foo")); $rainbow->reset(); $this->assertEquals(["bar" => "foo", "baz" => "foo"], $this->rainbow->lookupHash($rainbow, "foo", RainbowPHPInterface::LOOKUP_MODE_DEEP)); $rainbow->reset(); $this->assertEquals(["bar" => "foo"], $this->rainbow->lookupHash($rainbow, "f", RainbowPHPInterface::LOOKUP_MODE_PARTIAL)); $rainbow->reset(); $this->assertEquals(["bar" => "foo", "baz" => "foo"], $this->rainbow->lookupHash($rainbow, "f", RainbowPHPInterface::LOOKUP_MODE_DEEP | RainbowPHPInterface::LOOKUP_MODE_PARTIAL)); }