Component.php 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace Tests\Browser\Components;
  3. use Laravel\Dusk\Browser;
  4. use Laravel\Dusk\Component as BaseComponent;
  5. abstract class Component extends BaseComponent
  6. {
  7. /**
  8. * 解析css选择器别名.
  9. *
  10. * @param Browser $browser
  11. * @param string $selector
  12. *
  13. * @return string
  14. */
  15. public function formatSelector(Browser $browser, $selector = '')
  16. {
  17. return $browser->resolver->format($selector);
  18. }
  19. /**
  20. * 解析css选择器别名但不使用前缀.
  21. *
  22. * @param \Laravel\Dusk\Browser $browser
  23. * @param string $selector
  24. *
  25. * @return string
  26. */
  27. public function formatSelectorWithoutPrefix(Browser $browser, $selector = '')
  28. {
  29. $resolver = clone $browser->resolver;
  30. $resolver->prefix = '';
  31. return $resolver->format($selector);
  32. }
  33. /**
  34. * @param Browser $browser
  35. *
  36. * @return string
  37. */
  38. public function parentSelector(Browser $browser)
  39. {
  40. return $browser->resolver->prefix;
  41. }
  42. }