Code Duplication    Length = 44-44 lines in 2 locations

tests/unit/Controllers/API/GenericServiceInvokeControllerTest.php 2 locations

@@ 116-159 (lines=44) @@
113
    /**
114
     * @test
115
     */
116
    public function shouldCallService()
117
    {
118
        /** @var Request $request */
119
        $request = $this->createMock(Request::class);
120
121
        /** @var SampleService $service */
122
        $service = $this->createMock(SampleService::class);
123
124
        $service->expects($this->once())->method('doFoo')->with(
125
            $this->equalTo('lorem'),
126
            $this->equalTo('ipsum')
127
        );
128
129
        $this->container->expects($this->once())->method('get')->with(
130
            $this->equalTo('some_service')
131
        )->willReturn($service);
132
133
        $this->controllerHelper->expects($this->once())->method('flushORM');
134
135
        $this->argumentCompiler->expects($this->once())->method('buildCallArguments')->with(
136
            $this->equalTo(new ReflectionMethod($service, 'doFoo')),
137
            $this->equalTo(['lorem' => 'ipsum']),
138
            $this->identicalTo($request)
139
        )->willReturn(['lorem', 'ipsum']);
140
141
        /** @var string $expectedResponseContent */
142
        $expectedResponseContent = "Service call completed";
143
144
        $controller = new GenericServiceInvokeController(
145
            $this->controllerHelper,
146
            $this->argumentCompiler,
147
            $this->container,
148
            [
149
                'service' => 'some_service',
150
                'method' => 'doFoo',
151
                'arguments' => ['lorem' => 'ipsum']
152
            ]
153
        );
154
155
        /** @var Response $actualResponse */
156
        $actualResponse = $controller->callService($request);
157
158
        $this->assertEquals($expectedResponseContent, $actualResponse->getContent());
159
    }
160
161
    /**
162
     * @test
@@ 268-311 (lines=44) @@
265
    /**
266
     * @test
267
     */
268
    public function shouldBeCallableByInvokingController()
269
    {
270
        /** @var Request $request */
271
        $request = $this->createMock(Request::class);
272
273
        /** @var SampleService $service */
274
        $service = $this->createMock(SampleService::class);
275
276
        $service->expects($this->once())->method('doFoo')->with(
277
            $this->equalTo('lorem'),
278
            $this->equalTo('ipsum')
279
        );
280
281
        $this->container->expects($this->once())->method('get')->with(
282
            $this->equalTo('some_service')
283
        )->willReturn($service);
284
285
        $this->argumentCompiler->expects($this->once())->method('buildCallArguments')->with(
286
            $this->equalTo(new ReflectionMethod($service, 'doFoo')),
287
            $this->equalTo(['lorem' => 'ipsum']),
288
            $this->identicalTo($request)
289
        )->willReturn(['lorem', 'ipsum']);
290
291
        /** @var string $expectedResponseContent */
292
        $expectedResponseContent = "Service call completed";
293
294
        $controller = new GenericServiceInvokeController(
295
            $this->controllerHelper,
296
            $this->argumentCompiler,
297
            $this->container,
298
            [
299
                'service' => 'some_service',
300
                'method' => 'doFoo',
301
                'arguments' => ['lorem' => 'ipsum']
302
            ]
303
        );
304
305
        $this->controllerHelper->method('getCurrentRequest')->willReturn($request);
306
307
        /** @var Response $actualResponse */
308
        $actualResponse = $controller();
309
310
        $this->assertEquals($expectedResponseContent, $actualResponse->getContent());
311
    }
312
313
    /**
314
     * @test