Component.php 1022 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  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. * @return string
  13. */
  14. public function formatSelector(Browser $browser, $selector = '')
  15. {
  16. return $browser->resolver->format($selector);
  17. }
  18. /**
  19. * 解析css选择器别名但不使用前缀.
  20. *
  21. * @param \Laravel\Dusk\Browser $browser
  22. * @param string $selector
  23. * @return string
  24. */
  25. public function formatSelectorWithoutPrefix(Browser $browser, $selector = '')
  26. {
  27. $resolver = clone $browser->resolver;
  28. $resolver->prefix = '';
  29. return $resolver->format($selector);
  30. }
  31. /**
  32. * @param Browser $browser
  33. * @return string
  34. */
  35. public function parentSelector(Browser $browser)
  36. {
  37. return $browser->resolver->prefix;
  38. }
  39. }