Code Duplication    Length = 16-17 lines in 3 locations

test/TransformerAbstractTest.php 3 locations

@@ 137-153 (lines=17) @@
134
     * @covers \League\Fractal\TransformerAbstract::processIncludedResources
135
     * @covers \League\Fractal\TransformerAbstract::callIncludeMethod
136
     */
137
    public function testProcessIncludedAvailableResources()
138
    {
139
        $manager = new Manager();
140
        $manager->parseIncludes('book');
141
        $transformer = m::mock('League\Fractal\TransformerAbstract[transform]');
142
143
        $transformer->shouldReceive('includeBook')->once()->andReturnUsing(function ($data) {
144
            return new Item(['included' => 'thing'], function ($data) {
145
                return $data;
146
            });
147
        });
148
149
        $transformer->setAvailableIncludes(['book', 'publisher']);
150
        $scope = new Scope($manager, new Item([], $transformer));
151
        $included = $transformer->processIncludedResources($scope, ['meh']);
152
        $this->assertSame(['book' => ['data' => ['included' => 'thing']]], $included);
153
    }
154
155
    /**
156
     * @covers \League\Fractal\TransformerAbstract::processIncludedResources
@@ 251-266 (lines=16) @@
248
     * @covers \League\Fractal\TransformerAbstract::processIncludedResources
249
     * @covers \League\Fractal\TransformerAbstract::callIncludeMethod
250
     */
251
    public function testProcessEmbeddedDefaultResources()
252
    {
253
        $manager = new Manager();
254
        $transformer = m::mock('League\Fractal\TransformerAbstract[transform]');
255
256
        $transformer->shouldReceive('includeBook')->once()->andReturnUsing(function ($data) {
257
            return new Item(['included' => 'thing'], function ($data) {
258
                return $data;
259
            });
260
        });
261
262
        $transformer->setDefaultIncludes(['book']);
263
        $scope = new Scope($manager, new Item([], $transformer));
264
        $included = $transformer->processIncludedResources($scope, ['meh']);
265
        $this->assertSame(['book' => ['data' => ['included' => 'thing']]], $included);
266
    }
267
268
    /**
269
     * @covers \League\Fractal\TransformerAbstract::processIncludedResources
@@ 272-288 (lines=17) @@
269
     * @covers \League\Fractal\TransformerAbstract::processIncludedResources
270
     * @covers \League\Fractal\TransformerAbstract::callIncludeMethod
271
     */
272
    public function testIncludedItem()
273
    {
274
        $manager = new Manager();
275
        $manager->parseIncludes('book');
276
277
        $transformer = m::mock('League\Fractal\TransformerAbstract[transform]');
278
        $transformer->shouldReceive('includeBook')->once()->andReturnUsing(function ($data) {
279
            return new Item(['included' => 'thing'], function ($data) {
280
                return $data;
281
            });
282
        });
283
284
        $transformer->setAvailableIncludes(['book']);
285
        $scope = new Scope($manager, new Item([], $transformer));
286
        $included = $transformer->processIncludedResources($scope, ['meh']);
287
        $this->assertSame(['book' => ['data' => ['included' => 'thing']]], $included);
288
    }
289
290
    public function testParamBagIsProvidedForIncludes()
291
    {