MatchesCodeSnippetSnapshots.php 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. namespace Facade\FlareClient\Tests\Concerns;
  3. use Facade\FlareClient\Tests\TestClasses\CodeSnippetDriver;
  4. use Spatie\Snapshots\MatchesSnapshots;
  5. trait MatchesCodeSnippetSnapshots
  6. {
  7. use MatchesSnapshots;
  8. public function assertMatchesCodeSnippetSnapshot(array $codeSnippet)
  9. {
  10. $codeSnippet = $this->removeMicrotime($codeSnippet);
  11. $codeSnippet = $this->removeTime($codeSnippet);
  12. $this->assertMatchesSnapshot($codeSnippet, new CodeSnippetDriver());
  13. }
  14. private function removeMicrotime(array $codeSnippet): array
  15. {
  16. array_walk_recursive($codeSnippet, function (&$value, $key) {
  17. if ($key === 'microtime') {
  18. $value = '1234';
  19. }
  20. });
  21. return $codeSnippet;
  22. }
  23. private function removeTime(array $codeSnippet): array
  24. {
  25. array_walk_recursive($codeSnippet, function (&$value, $key) {
  26. if ($key === 'time') {
  27. $value = 1234;
  28. }
  29. });
  30. return $codeSnippet;
  31. }
  32. }