| @@ 31-45 (lines=15) @@ | ||
| 28 | })); |
|
| 29 | } |
|
| 30 | ||
| 31 | public function testCallingFlowWillCallTheCallback() |
|
| 32 | { |
|
| 33 | $called = null; |
|
| 34 | $return = m::mock(NodeInterface::class); |
|
| 35 | $callbackFlow = new Callback(function ($item) use (&$called, $return) { |
|
| 36 | $called = $item; |
|
| 37 | return $return; |
|
| 38 | }); |
|
| 39 | ||
| 40 | $node = m::mock(NodeInterface::class); |
|
| 41 | ||
| 42 | $output = $callbackFlow->flow($node); |
|
| 43 | static::assertEquals($return, $output); |
|
| 44 | static::assertEquals($called, $node); |
|
| 45 | } |
|
| 46 | ||
| 47 | public function testStaticCalling() |
|
| 48 | { |
|
| @@ 47-61 (lines=15) @@ | ||
| 44 | static::assertEquals($called, $node); |
|
| 45 | } |
|
| 46 | ||
| 47 | public function testStaticCalling() |
|
| 48 | { |
|
| 49 | $called = null; |
|
| 50 | $return = m::mock(NodeInterface::class); |
|
| 51 | $callbackFlow = Flow::callback(function ($item) use (&$called, $return) { |
|
| 52 | $called = $item; |
|
| 53 | return $return; |
|
| 54 | }); |
|
| 55 | ||
| 56 | $node = m::mock(NodeInterface::class); |
|
| 57 | ||
| 58 | $output = $callbackFlow->flow($node); |
|
| 59 | static::assertEquals($return, $output); |
|
| 60 | static::assertEquals($called, $node); |
|
| 61 | } |
|
| 62 | ||
| 63 | public function testInvokeFlow() |
|
| 64 | { |
|
| @@ 63-77 (lines=15) @@ | ||
| 60 | static::assertEquals($called, $node); |
|
| 61 | } |
|
| 62 | ||
| 63 | public function testInvokeFlow() |
|
| 64 | { |
|
| 65 | $called = null; |
|
| 66 | $return = m::mock(NodeInterface::class); |
|
| 67 | $callbackFlow = Flow::callback(function ($item) use (&$called, $return) { |
|
| 68 | $called = $item; |
|
| 69 | return $return; |
|
| 70 | }); |
|
| 71 | ||
| 72 | $node = m::mock(NodeInterface::class); |
|
| 73 | ||
| 74 | $output = call_user_func($callbackFlow, $node); |
|
| 75 | static::assertEquals($return, $output); |
|
| 76 | static::assertEquals($called, $node); |
|
| 77 | } |
|
| 78 | } |
|
| 79 | ||