Code Duplication    Length = 10-12 lines in 3 locations

src/Sylius/Behat/Context/Ui/CheckoutContext.php 3 locations

@@ 194-204 (lines=11) @@
191
     * @When /^I specify the shipping (address as "([^"]+)", "([^"]+)", "([^"]+)", "([^"]+)" for "([^"]+)")$/
192
     * @When /^I (do not specify any shipping address) information$/
193
     */
194
    public function iSpecifyTheShippingAddressAs(AddressInterface $address)
195
    {
196
        $key = sprintf(
197
            'shipping_address_%s_%s',
198
            strtolower($address->getFirstName()),
199
            strtolower($address->getLastName())
200
        );
201
        $this->sharedStorage->set($key, $address);
202
203
        $this->addressingPage->specifyShippingAddress($address);
204
    }
205
206
    /**
207
     * @When /^I specify the billing (address as "([^"]+)", "([^"]+)", "([^"]+)", "([^"]+)" for "([^"]+)")$/
@@ 210-221 (lines=12) @@
207
     * @When /^I specify the billing (address as "([^"]+)", "([^"]+)", "([^"]+)", "([^"]+)" for "([^"]+)")$/
208
     * @When /^I (do not specify any billing address) information$/
209
     */
210
    public function iSpecifyTheBillingAddressAs(AddressInterface $address)
211
    {
212
        $this->iChooseTheDifferentBillingAddress();
213
        $key = sprintf(
214
            'billing_address_%s_%s',
215
            strtolower($address->getFirstName()),
216
            strtolower($address->getLastName())
217
        );
218
        $this->sharedStorage->set($key, $address);
219
220
        $this->addressingPage->specifyBillingAddress($address);
221
    }
222
223
    /**
224
     * @When /^I specified the shipping (address as "([^"]+)", "([^"]+)", "([^"]+)", "([^"]+)" for "([^"]+)")$/
@@ 226-235 (lines=10) @@
223
    /**
224
     * @When /^I specified the shipping (address as "([^"]+)", "([^"]+)", "([^"]+)", "([^"]+)" for "([^"]+)")$/
225
     */
226
    public function iSpecifiedTheShippingAddress(AddressInterface $address)
227
    {
228
        $this->addressingPage->open();
229
        $this->iSpecifyTheShippingAddressAs($address);
230
231
        $key = sprintf('billing_address_%s_%s', strtolower($address->getFirstName()), strtolower($address->getLastName()));
232
        $this->sharedStorage->set($key, $address);
233
234
        $this->iCompleteTheAddressingStep();
235
    }
236
237
    /**
238
     * @When I choose the different billing address