/** * @test */ public function it_applies_premap_callback_to_payload_collection() { $stringCollection = ["a string", 100, "yet another string"]; $collection = StringCollection::fromNativeValue($stringCollection); $string_cast = Func::prepare('premap', null, function ($item, $key, \Iterator $collection) { return (string) $item; }); $collection = $string_cast($collection); $this->assertEquals(["a string", "100", "yet another string"], iterator_to_array(new MapIterator($collection, function (string $string) { return $string->value(); }))); }
/** * @test */ public function it_returns_item_property_if_requested() { $stringCol = StringCollection::fromNativeValue(array("Apple", "Banana")); $this->assertEquals('Prooph\\Done\\Process\\Type\\String', $stringCol->property('item')->value()); $this->assertNull($stringCol->property('Apple')); }