How to find a text node element with Mink?

sf_tristanb picture sf_tristanb · Nov 4, 2011 · Viewed 8.9k times · Source

I was wondering, i have this HTML :

<li>
  <span class="jqTransformRadioWrapper">
    <a rel="choices[choices]" class="jqTransformRadio jqTransformChecked" href = "#"></a>
    <input type="radio" id="choices_choices_5" value="5" name="choices[choices]" class="jqTransformHidden">
  </span>
  <label for = "choices_choices_5" style = "cursor: pointer;">My awesome test</label>
</li>

Some of you might recognize that the input has been jqTransformed

I was wondering how to click on the label named "My awesome test".

Right now, i do :

   $el = $this->getSession()->getPage()->find('css', 'ul li span.jqTransformRadioWrapper a');
   $el->click();

But it selects the first element. And i want to select them with their Name (and only) for this example it would be "My awesome test".

Thanks

Answer

sf_tristanb picture sf_tristanb · Nov 8, 2011

Here's the answer :

$this->getSession()->getPage()->find('xpath', '//label[text()="My awesome test"]');