1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
| class FeatureContext extends RawMinkContext implements Context, SnippetAcceptingContext { private $BUILD_TAG;
/** * Initializes context. * * Every scenario gets its own context instance. * You can also pass arbitrary arguments to the * context constructor through behat.yml. */ public function __construct() { if(getenv('BUILD_TAG')) { $this->BUILD_TAG = getenv('BUILD_TAG'); }else{ $this->BUILD_TAG = date('Ymdhis',strtotime('now')); } }
/** * @When :index 番目の :element エレメントに :text と入力する */ public function inputElementText($index, $element, $text) { if(false !== strpos($text, "{BUILD_TAG}")) { $text = str_replace("{BUILD_TAG}", $this->BUILD_TAG, $text); }
$nodes = $this->getSession()->getPage()->findAll('css', $element); $index = $index - 1;
if (isset($nodes[$index])) { $nodes[$index]->setValue($text); } else { throw new PendingException($element." エレメントが見つかりませんでした"); } }
/** * @When :index 番目の :element エレメントに :text テキストが含まれていること */ public function checkElementTextImplode($index, $element, $text) { if(false !== strpos($text, "{BUILD_TAG}")) { $text = str_replace("{BUILD_TAG}", $this->BUILD_TAG, $text); }
$nodes = $this->getSession()->getPage()->findAll('css', $element); $index = $index - 1;
if (isset($nodes[$index])) { if(false !== strpos($nodes[$index]->getHtml(),$text)) { }else { throw new PendingException("テキストが見つかりませんでした - ".$text." - ".$nodes[$index]->getHtml()); } } else { throw new PendingException($element." エレメントが見つかりませんでした"); } }
(中略) }
|