Code Duplication    Length = 24-25 lines in 2 locations

codeception/_support/Page/Admin/PluginManagePage.php 1 location

@@ 27-51 (lines=25) @@
24
namespace Page\Admin;
25
26
27
class PluginManagePage extends AbstractAdminPageStyleGuide
28
{
29
    const 完了メーッセージ = '#page_admin_store_plugin > div.c-container > div.c-contentsArea > div.alert.alert-success.alert-dismissible.fade.show.m-3 > span';
30
31
    public function __construct(\AcceptanceTester $I)
32
    {
33
        parent::__construct($I);
34
    }
35
36
    public static function at($I)
37
    {
38
        $page = new self($I);
39
40
        return $page->atPage('インストールプラグイン一覧オーナーズストア');
41
    }
42
43
    /**
44
     * @param $pluginCode
45
     * @return PluginManagePage
46
     */
47
    public function ストアプラグイン_有効化($pluginCode) {
48
        $this->tester->click(['xpath' => '//*[@id="page_admin_store_plugin"]/div[1]/div[3]/div[2]/div/div/div[1]/div[2]/table/tbody//td[3]/p[contains(text(), "'.$pluginCode.'")]/../../td[6]//i[@data-original-title="有効化"]/parent::node()']);
49
        return $this;
50
    }
51
}

codeception/_support/Page/Admin/PluginSearchPage.php 1 location

@@ 27-50 (lines=24) @@
24
namespace Page\Admin;
25
26
27
class PluginSearchPage extends AbstractAdminPageStyleGuide
28
{
29
    public function __construct(\AcceptanceTester $I)
30
    {
31
        parent::__construct($I);
32
    }
33
34
    public static function go($I)
35
    {
36
        $page = new self($I);
37
38
        return $page->goPage('/store/plugin/api/search', 'プラグインを探すオーナーズストア');
39
    }
40
41
    /**
42
     * @param $pluginCode
43
     * @return PluginInstallPage
44
     */
45
    public function 入手する($pluginCode)
46
    {
47
        $this->tester->click(['xpath' => '//*[@id="plugin-list"]//h5/a[contains(text(), "ec-cube/'.$pluginCode.'")]/parent::node()/parent::node()/parent::node()/parent::node()/div[3]/form/a[contains(text(), "入手する")]']);
48
        return PluginInstallPage::at($this->tester);
49
    }
50
}