-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinfection-log.json
1 lines (1 loc) · 385 KB
/
infection-log.json
1
{"stats":{"totalMutantsCount":78,"killedCount":62,"notCoveredCount":16,"escapedCount":0,"errorCount":0,"syntaxErrorCount":0,"skippedCount":0,"ignoredCount":0,"timeOutCount":0,"msi":79.49,"mutationCodeCoverage":79.49,"coveredCodeMsi":100},"escaped":[],"timeouted":[],"killed":[{"mutator":{"mutatorName":"MethodCallRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories\\Doctrine;\n\nuse App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories\\Doctrine\\Entities\\RideDoctrineEntity;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nuse Doctrine\\ORM\\EntityManagerInterface;\nclass DoctrineRideRepository implements RideRepository\n{\n public function __construct(private readonly EntityManagerInterface $entityManager)\n {\n }\n public function save(Ride $ride) : void\n {\n $rideDoctrineEntity = new RideDoctrineEntity($ride->getId(), $ride->getRiderId(), $ride->getDeparture(), $ride->getArrival(), $ride->getDistance(), $ride->getPrice(), $ride->getStatus());\n $this->entityManager->persist($rideDoctrineEntity);\n $this->entityManager->flush();\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories\\Doctrine;\n\nuse App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories\\Doctrine\\Entities\\RideDoctrineEntity;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nuse Doctrine\\ORM\\EntityManagerInterface;\nclass DoctrineRideRepository implements RideRepository\n{\n public function __construct(private readonly EntityManagerInterface $entityManager)\n {\n }\n public function save(Ride $ride) : void\n {\n $rideDoctrineEntity = new RideDoctrineEntity($ride->getId(), $ride->getRiderId(), $ride->getDeparture(), $ride->getArrival(), $ride->getDistance(), $ride->getPrice(), $ride->getStatus());\n \n $this->entityManager->flush();\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/Repositories\/Doctrine\/DoctrineRideRepository.php","originalStartLine":28},"diff":"--- Original\n+++ New\n@@ @@\n public function save(Ride $ride) : void\n {\n $rideDoctrineEntity = new RideDoctrineEntity($ride->getId(), $ride->getRiderId(), $ride->getDeparture(), $ride->getArrival(), $ride->getDistance(), $ride->getPrice(), $ride->getStatus());\n- $this->entityManager->persist($rideDoctrineEntity);\n+ \n $this->entityManager->flush();\n }\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"MethodCallRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories\\Doctrine;\n\nuse App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories\\Doctrine\\Entities\\RideDoctrineEntity;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nuse Doctrine\\ORM\\EntityManagerInterface;\nclass DoctrineRideRepository implements RideRepository\n{\n public function __construct(private readonly EntityManagerInterface $entityManager)\n {\n }\n public function save(Ride $ride) : void\n {\n $rideDoctrineEntity = new RideDoctrineEntity($ride->getId(), $ride->getRiderId(), $ride->getDeparture(), $ride->getArrival(), $ride->getDistance(), $ride->getPrice(), $ride->getStatus());\n $this->entityManager->persist($rideDoctrineEntity);\n $this->entityManager->flush();\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories\\Doctrine;\n\nuse App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories\\Doctrine\\Entities\\RideDoctrineEntity;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nuse Doctrine\\ORM\\EntityManagerInterface;\nclass DoctrineRideRepository implements RideRepository\n{\n public function __construct(private readonly EntityManagerInterface $entityManager)\n {\n }\n public function save(Ride $ride) : void\n {\n $rideDoctrineEntity = new RideDoctrineEntity($ride->getId(), $ride->getRiderId(), $ride->getDeparture(), $ride->getArrival(), $ride->getDistance(), $ride->getPrice(), $ride->getStatus());\n $this->entityManager->persist($rideDoctrineEntity);\n \n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/Repositories\/Doctrine\/DoctrineRideRepository.php","originalStartLine":29},"diff":"--- Original\n+++ New\n@@ @@\n {\n $rideDoctrineEntity = new RideDoctrineEntity($ride->getId(), $ride->getRiderId(), $ride->getDeparture(), $ride->getArrival(), $ride->getDistance(), $ride->getPrice(), $ride->getStatus());\n $this->entityManager->persist($rideDoctrineEntity);\n- $this->entityManager->flush();\n+ \n }\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"ArrayItemRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client([]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/GoogleTripScanner.php","originalStartLine":21},"diff":"--- Original\n+++ New\n@@ @@\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n- $googleMaps = new Client(['key' => $this->googleApiKey]);\n+ $googleMaps = new Client([]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"ArrayItem","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' > $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/GoogleTripScanner.php","originalStartLine":22},"diff":"--- Original\n+++ New\n@@ @@\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n- $googleMaps = new Client(['key' => $this->googleApiKey]);\n+ $googleMaps = new Client(['key' > $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"ArrayItemRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/GoogleTripScanner.php","originalStartLine":24},"diff":"--- Original\n+++ New\n@@ @@\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n- $addresses = ['origin' => $departure, 'destination' => $arrival];\n+ $addresses = ['destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][1]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/GoogleTripScanner.php","originalStartLine":30},"diff":"--- Original\n+++ New\n@@ @@\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n- return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n+ return $response['rows'][1]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][1]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/GoogleTripScanner.php","originalStartLine":30},"diff":"--- Original\n+++ New\n@@ @@\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n- return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n+ return $response['rows'][0]['elements'][1]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"DecrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 999;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/GoogleTripScanner.php","originalStartLine":30},"diff":"--- Original\n+++ New\n@@ @@\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n- return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n+ return $response['rows'][0]['elements'][0]['distance']['value'] \/ 999;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1001;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/GoogleTripScanner.php","originalStartLine":30},"diff":"--- Original\n+++ New\n@@ @@\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n- return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n+ return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1001;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Division","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] * 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/GoogleTripScanner.php","originalStartLine":30},"diff":"--- Original\n+++ New\n@@ @@\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n- return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n+ return $response['rows'][0]['elements'][0]['distance']['value'] * 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Psr\\Clock\\ClockInterface;\nclass ClockUtils\n{\n private static ClockInterface $clock;\n public static function setClock(ClockInterface $clock) : void\n {\n self::$clock = $clock;\n }\n public static function now() : \\DateTimeImmutable\n {\n return self::getInstance()->now();\n }\n private static function getInstance() : ClockInterface\n {\n if (!isset(self::$clock)) {\n self::$clock = new SystemClock();\n }\n return self::$clock;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Psr\\Clock\\ClockInterface;\nclass ClockUtils\n{\n private static ClockInterface $clock;\n protected static function setClock(ClockInterface $clock) : void\n {\n self::$clock = $clock;\n }\n public static function now() : \\DateTimeImmutable\n {\n return self::getInstance()->now();\n }\n private static function getInstance() : ClockInterface\n {\n if (!isset(self::$clock)) {\n self::$clock = new SystemClock();\n }\n return self::$clock;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/ClockUtils.php","originalStartLine":12},"diff":"--- Original\n+++ New\n@@ @@\n class ClockUtils\n {\n private static ClockInterface $clock;\n- public static function setClock(ClockInterface $clock) : void\n+ protected static function setClock(ClockInterface $clock) : void\n {\n self::$clock = $clock;\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Psr\\Clock\\ClockInterface;\nclass ClockUtils\n{\n private static ClockInterface $clock;\n public static function setClock(ClockInterface $clock) : void\n {\n self::$clock = $clock;\n }\n public static function now() : \\DateTimeImmutable\n {\n return self::getInstance()->now();\n }\n private static function getInstance() : ClockInterface\n {\n if (!isset(self::$clock)) {\n self::$clock = new SystemClock();\n }\n return self::$clock;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Psr\\Clock\\ClockInterface;\nclass ClockUtils\n{\n private static ClockInterface $clock;\n public static function setClock(ClockInterface $clock) : void\n {\n self::$clock = $clock;\n }\n protected static function now() : \\DateTimeImmutable\n {\n return self::getInstance()->now();\n }\n private static function getInstance() : ClockInterface\n {\n if (!isset(self::$clock)) {\n self::$clock = new SystemClock();\n }\n return self::$clock;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/ClockUtils.php","originalStartLine":17},"diff":"--- Original\n+++ New\n@@ @@\n {\n self::$clock = $clock;\n }\n- public static function now() : \\DateTimeImmutable\n+ protected static function now() : \\DateTimeImmutable\n {\n return self::getInstance()->now();\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"LogicalNot","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Psr\\Clock\\ClockInterface;\nclass ClockUtils\n{\n private static ClockInterface $clock;\n public static function setClock(ClockInterface $clock) : void\n {\n self::$clock = $clock;\n }\n public static function now() : \\DateTimeImmutable\n {\n return self::getInstance()->now();\n }\n private static function getInstance() : ClockInterface\n {\n if (!isset(self::$clock)) {\n self::$clock = new SystemClock();\n }\n return self::$clock;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Psr\\Clock\\ClockInterface;\nclass ClockUtils\n{\n private static ClockInterface $clock;\n public static function setClock(ClockInterface $clock) : void\n {\n self::$clock = $clock;\n }\n public static function now() : \\DateTimeImmutable\n {\n return self::getInstance()->now();\n }\n private static function getInstance() : ClockInterface\n {\n if (isset(self::$clock)) {\n self::$clock = new SystemClock();\n }\n return self::$clock;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/ClockUtils.php","originalStartLine":24},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function getInstance() : ClockInterface\n {\n- if (!isset(self::$clock)) {\n+ if (isset(self::$clock)) {\n self::$clock = new SystemClock();\n }\n return self::$clock;\n }\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n protected static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":21},"diff":"--- Original\n+++ New\n@@ @@\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n- public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n+ protected static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Plus","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) - self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":28},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n- $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n+ $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) - self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n protected static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":33},"diff":"--- Original\n+++ New\n@@ @@\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n- public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n+ protected static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Multiplication","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance \/ 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":35},"diff":"--- Original\n+++ New\n@@ @@\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n- return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n+ return self::determineBasePrice($departure, $arrival) + $distance \/ 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Plus","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) - $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":35},"diff":"--- Original\n+++ New\n@@ @@\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n- return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n+ return self::determineBasePrice($departure, $arrival) - $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"DecrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 1;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":40},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n- $prices[\"PARIS_PARIS\"] = 2;\n+ $prices[\"PARIS_PARIS\"] = 1;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 3;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":40},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n- $prices[\"PARIS_PARIS\"] = 2;\n+ $prices[\"PARIS_PARIS\"] = 3;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"DecrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 9;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":41},"diff":"--- Original\n+++ New\n@@ @@\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n- $prices[\"PARIS_OUTSIDE\"] = 10;\n+ $prices[\"PARIS_OUTSIDE\"] = 9;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 11;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":41},"diff":"--- Original\n+++ New\n@@ @@\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n- $prices[\"PARIS_OUTSIDE\"] = 10;\n+ $prices[\"PARIS_OUTSIDE\"] = 11;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"DecrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = -1;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":42},"diff":"--- Original\n+++ New\n@@ @@\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n- $prices[\"OUTSIDE_PARIS\"] = 0;\n+ $prices[\"OUTSIDE_PARIS\"] = -1;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"DecrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 49;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":43},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n- $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n+ $prices[\"OUTSIDE_OUTSIDE\"] = 49;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 51;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":43},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n- $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n+ $prices[\"OUTSIDE_OUTSIDE\"] = 51;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"DecrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 59;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":44},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n- $prices[\"PARIS_LORIENT\"] = 60;\n+ $prices[\"PARIS_LORIENT\"] = 59;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 61;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":44},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n- $prices[\"PARIS_LORIENT\"] = 60;\n+ $prices[\"PARIS_LORIENT\"] = 61;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Ternary","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'OUTSIDE' : 'PARIS';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":45},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n- $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n+ $departurePosition = strPos($departure, \"Paris\") ? 'OUTSIDE' : 'PARIS';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Ternary","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'OUTSIDE' : 'PARIS';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":46},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n- $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n+ $arrivalPosition = strPos($arrival, \"Paris\") ? 'OUTSIDE' : 'PARIS';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"ConcatOperandRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":47},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n- return $prices[$departurePosition . \"_\" . $arrivalPosition];\n+ return $prices[$departurePosition . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Concat","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[\"_\" . $departurePosition . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":47},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n- return $prices[$departurePosition . \"_\" . $arrivalPosition];\n+ return $prices[\"_\" . $departurePosition . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"ConcatOperandRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[\"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":47},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n- return $prices[$departurePosition . \"_\" . $arrivalPosition];\n+ return $prices[\"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Concat","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . $arrivalPosition . \"_\"];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":47},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n- return $prices[$departurePosition . \"_\" . $arrivalPosition];\n+ return $prices[$departurePosition . $arrivalPosition . \"_\"];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"ConcatOperandRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\"];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":47},"diff":"--- Original\n+++ New\n@@ @@\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n- return $prices[$departurePosition . \"_\" . $arrivalPosition];\n+ return $prices[$departurePosition . \"_\"];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"LogicalNot","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && $rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":51},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n- return $isUberX && !$rider->isBirthday() ? 5 : 0;\n+ return $isUberX && $rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"LogicalAnd","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX || !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":51},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n- return $isUberX && !$rider->isBirthday() ? 5 : 0;\n+ return $isUberX || !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"LogicalAndSingleSubExprNegation","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return !$isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":51},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n- return $isUberX && !$rider->isBirthday() ? 5 : 0;\n+ return !$isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"LogicalAndAllSubExprNegation","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return !$isUberX && $rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":51},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n- return $isUberX && !$rider->isBirthday() ? 5 : 0;\n+ return !$isUberX && $rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"LogicalAndNegation","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return !($isUberX && !$rider->isBirthday()) ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":51},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n- return $isUberX && !$rider->isBirthday() ? 5 : 0;\n+ return !($isUberX && !$rider->isBirthday()) ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"DecrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 4 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":51},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n- return $isUberX && !$rider->isBirthday() ? 5 : 0;\n+ return $isUberX && !$rider->isBirthday() ? 4 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 6 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":51},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n- return $isUberX && !$rider->isBirthday() ? 5 : 0;\n+ return $isUberX && !$rider->isBirthday() ? 6 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"DecrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : -1;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":51},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n- return $isUberX && !$rider->isBirthday() ? 5 : 0;\n+ return $isUberX && !$rider->isBirthday() ? 5 : -1;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 1;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":51},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n- return $isUberX && !$rider->isBirthday() ? 5 : 0;\n+ return $isUberX && !$rider->isBirthday() ? 5 : 1;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Ternary","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 0 : 5;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":51},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n- return $isUberX && !$rider->isBirthday() ? 5 : 0;\n+ return $isUberX && !$rider->isBirthday() ? 0 : 5;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Ternary","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? $classicPrice : self::doubleThePrice($classicPrice);\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":55},"diff":"--- Original\n+++ New\n@@ @@\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n- return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n+ return self::isChristmas() ? $classicPrice : self::doubleThePrice($classicPrice);\n }\n public static function isChristmas() : bool\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n protected static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":58},"diff":"--- Original\n+++ New\n@@ @@\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n- public static function isChristmas() : bool\n+ protected static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Equal","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') != '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":60},"diff":"--- Original\n+++ New\n@@ @@\n }\n public static function isChristmas() : bool\n {\n- return ClockUtils::now()->format('m-d') == '12-25';\n+ return ClockUtils::now()->format('m-d') != '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n protected static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":63},"diff":"--- Original\n+++ New\n@@ @@\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n- public static function doubleThePrice($classicPrice) : int|float\n+ protected static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"DecrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 1;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":65},"diff":"--- Original\n+++ New\n@@ @@\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n- return $classicPrice * 2;\n+ return $classicPrice * 1;\n }\n public function getId() : UuidInterface\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 3;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":65},"diff":"--- Original\n+++ New\n@@ @@\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n- return $classicPrice * 2;\n+ return $classicPrice * 3;\n }\n public function getId() : UuidInterface\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Multiplication","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice \/ 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":65},"diff":"--- Original\n+++ New\n@@ @@\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n- return $classicPrice * 2;\n+ return $classicPrice \/ 2;\n }\n public function getId() : UuidInterface\n {","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n protected function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":68},"diff":"--- Original\n+++ New\n@@ @@\n {\n return $classicPrice * 2;\n }\n- public function getId() : UuidInterface\n+ protected function getId() : UuidInterface\n {\n return $this->id;\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n protected function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":73},"diff":"--- Original\n+++ New\n@@ @@\n {\n return $this->id;\n }\n- public function getRiderId() : UuidInterface\n+ protected function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n protected function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":78},"diff":"--- Original\n+++ New\n@@ @@\n {\n return $this->riderId;\n }\n- public function getDeparture() : string\n+ protected function getDeparture() : string\n {\n return $this->departure;\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n protected function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":83},"diff":"--- Original\n+++ New\n@@ @@\n {\n return $this->departure;\n }\n- public function getArrival() : string\n+ protected function getArrival() : string\n {\n return $this->arrival;\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n protected function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":88},"diff":"--- Original\n+++ New\n@@ @@\n {\n return $this->arrival;\n }\n- public function getDistance() : float\n+ protected function getDistance() : float\n {\n return $this->distance;\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n protected function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":93},"diff":"--- Original\n+++ New\n@@ @@\n {\n return $this->distance;\n }\n- public function getPrice() : float\n+ protected function getPrice() : float\n {\n return $this->price;\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n public function getStatus() : string\n {\n return $this->status;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Ramsey\\Uuid\\UuidInterface;\nclass Ride\n{\n public function __construct(private UuidInterface $id, private UuidInterface $riderId, private string $departure, private string $arrival, private float $distance, private float $price, private string $status)\n {\n }\n public static function book(UuidInterface $id, Rider $rider, string $departure, string $arrival, float $distance, $isUberX) : Ride\n {\n return new self($id, $rider->getId(), $departure, $arrival, $distance, self::calculatePrice($departure, $arrival, $distance, $isUberX, $rider), 'LOOKING_FOR_DRIVER');\n }\n private static function calculatePrice(string $departure, string $arrival, float $distance, bool $isUberX, Rider $rider) : float\n {\n $classicPrice = self::determineMandatoryFees($departure, $arrival, $distance) + self::determineExtraFees($isUberX, $rider);\n return self::countEventualExceptionalFees($classicPrice);\n }\n public static function determineMandatoryFees(string $departure, string $arrival, float $distance) : float\n {\n return self::determineBasePrice($departure, $arrival) + $distance * 0.5;\n }\n private static function determineBasePrice(string $departure, string $arrival) : int\n {\n $prices[\"PARIS_PARIS\"] = 2;\n $prices[\"PARIS_OUTSIDE\"] = 10;\n $prices[\"OUTSIDE_PARIS\"] = 0;\n $prices[\"OUTSIDE_OUTSIDE\"] = 50;\n $prices[\"PARIS_LORIENT\"] = 60;\n $departurePosition = strPos($departure, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n $arrivalPosition = strPos($arrival, \"Paris\") ? 'PARIS' : 'OUTSIDE';\n return $prices[$departurePosition . \"_\" . $arrivalPosition];\n }\n private static function determineExtraFees($isUberX, Rider $rider) : float\n {\n return $isUberX && !$rider->isBirthday() ? 5 : 0;\n }\n private static function countEventualExceptionalFees($classicPrice) : float\n {\n return self::isChristmas() ? self::doubleThePrice($classicPrice) : $classicPrice;\n }\n public static function isChristmas() : bool\n {\n return ClockUtils::now()->format('m-d') == '12-25';\n }\n public static function doubleThePrice($classicPrice) : int|float\n {\n return $classicPrice * 2;\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function getRiderId() : UuidInterface\n {\n return $this->riderId;\n }\n public function getDeparture() : string\n {\n return $this->departure;\n }\n public function getArrival() : string\n {\n return $this->arrival;\n }\n public function getDistance() : float\n {\n return $this->distance;\n }\n public function getPrice() : float\n {\n return $this->price;\n }\n protected function getStatus() : string\n {\n return $this->status;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Ride.php","originalStartLine":98},"diff":"--- Original\n+++ New\n@@ @@\n {\n return $this->price;\n }\n- public function getStatus() : string\n+ protected function getStatus() : string\n {\n return $this->status;\n }\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\UuidInterface;\nclass Rider\n{\n public function __construct(private UuidInterface $id, private \\DateTimeImmutable $birthdate)\n {\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function isBirthday()\n {\n return $this->birthdate->format('m-d') === ClockUtils::now()->format('m-d');\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\UuidInterface;\nclass Rider\n{\n public function __construct(private UuidInterface $id, private \\DateTimeImmutable $birthdate)\n {\n }\n protected function getId() : UuidInterface\n {\n return $this->id;\n }\n public function isBirthday()\n {\n return $this->birthdate->format('m-d') === ClockUtils::now()->format('m-d');\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Rider.php","originalStartLine":13},"diff":"--- Original\n+++ New\n@@ @@\n public function __construct(private UuidInterface $id, private \\DateTimeImmutable $birthdate)\n {\n }\n- public function getId() : UuidInterface\n+ protected function getId() : UuidInterface\n {\n return $this->id;\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\UuidInterface;\nclass Rider\n{\n public function __construct(private UuidInterface $id, private \\DateTimeImmutable $birthdate)\n {\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function isBirthday()\n {\n return $this->birthdate->format('m-d') === ClockUtils::now()->format('m-d');\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\UuidInterface;\nclass Rider\n{\n public function __construct(private UuidInterface $id, private \\DateTimeImmutable $birthdate)\n {\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n protected function isBirthday()\n {\n return $this->birthdate->format('m-d') === ClockUtils::now()->format('m-d');\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Rider.php","originalStartLine":18},"diff":"--- Original\n+++ New\n@@ @@\n {\n return $this->id;\n }\n- public function isBirthday()\n+ protected function isBirthday()\n {\n return $this->birthdate->format('m-d') === ClockUtils::now()->format('m-d');\n }\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"Identical","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\UuidInterface;\nclass Rider\n{\n public function __construct(private UuidInterface $id, private \\DateTimeImmutable $birthdate)\n {\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function isBirthday()\n {\n return $this->birthdate->format('m-d') === ClockUtils::now()->format('m-d');\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\Models;\n\nuse Ramsey\\Uuid\\UuidInterface;\nclass Rider\n{\n public function __construct(private UuidInterface $id, private \\DateTimeImmutable $birthdate)\n {\n }\n public function getId() : UuidInterface\n {\n return $this->id;\n }\n public function isBirthday()\n {\n return $this->birthdate->format('m-d') !== ClockUtils::now()->format('m-d');\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/Models\/Rider.php","originalStartLine":20},"diff":"--- Original\n+++ New\n@@ @@\n }\n public function isBirthday()\n {\n- return $this->birthdate->format('m-d') === ClockUtils::now()->format('m-d');\n+ return $this->birthdate->format('m-d') !== ClockUtils::now()->format('m-d');\n }\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."},{"mutator":{"mutatorName":"MethodCallRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\UseCases;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RiderRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\UuidGeneration\\UuidGenerator;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nuse Psr\\Clock\\ClockInterface;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Symfony\\Component\\Messenger\\Attribute\\AsMessageHandler;\n#[AsMessageHandler]\nclass BookRideCommandHandler\n{\n public function __construct(private readonly RideRepository $rideRepository, private readonly RiderRepository $riderRepository, private readonly TripScanner $tripScanner, private readonly UuidGenerator $uuidGenerator)\n {\n }\n public function __invoke(BookRideCommand $bookRideCommand) : Ride\n {\n $rider = $this->riderRepository->findById($bookRideCommand->riderId);\n $distance = $this->tripScanner->calculateDistance($bookRideCommand->departure, $bookRideCommand->arrival);\n $ride = Ride::book($this->uuidGenerator->generate(), $rider, $bookRideCommand->departure, $bookRideCommand->arrival, $distance, $bookRideCommand->isUberX);\n $this->rideRepository->save($ride);\n return $ride;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\BusinessLogic\\UseCases;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RiderRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\UuidGeneration\\UuidGenerator;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nuse Psr\\Clock\\ClockInterface;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Symfony\\Component\\Messenger\\Attribute\\AsMessageHandler;\n#[AsMessageHandler]\nclass BookRideCommandHandler\n{\n public function __construct(private readonly RideRepository $rideRepository, private readonly RiderRepository $riderRepository, private readonly TripScanner $tripScanner, private readonly UuidGenerator $uuidGenerator)\n {\n }\n public function __invoke(BookRideCommand $bookRideCommand) : Ride\n {\n $rider = $this->riderRepository->findById($bookRideCommand->riderId);\n $distance = $this->tripScanner->calculateDistance($bookRideCommand->departure, $bookRideCommand->arrival);\n $ride = Ride::book($this->uuidGenerator->generate(), $rider, $bookRideCommand->departure, $bookRideCommand->arrival, $distance, $bookRideCommand->isUberX);\n \n return $ride;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/BusinessLogic\/UseCases\/BookRideCommandHandler.php","originalStartLine":39},"diff":"--- Original\n+++ New\n@@ @@\n $rider = $this->riderRepository->findById($bookRideCommand->riderId);\n $distance = $this->tripScanner->calculateDistance($bookRideCommand->departure, $bookRideCommand->arrival);\n $ride = Ride::book($this->uuidGenerator->generate(), $rider, $bookRideCommand->departure, $bookRideCommand->arrival, $distance, $bookRideCommand->isUberX);\n- $this->rideRepository->save($ride);\n+ \n return $ride;\n }\n }","processOutput":" \u001b[48;2;37;99;235;1m INFO \u001b[49;22m Test file \"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/vendor\/pestphp\/pest\/src\/Factories\/TestCaseFactory.php(196) : eval()'d code\" not found."}],"errored":[],"syntaxErrors":[],"uncovered":[{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Primary\\Symfony\\Controllers;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommand;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommandHandler;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Messenger\\MessageBusInterface;\nuse Symfony\\Component\\Routing\\Annotation\\Route;\n#[Route('\/rides')]\nclass RideController extends AbstractController\n{\n public function __construct(private readonly MessageBusInterface $messageBus)\n {\n }\n #[Route('', name: 'ride', methods: ['POST'])]\n public function bookARide(Request $request) : JsonResponse\n {\n $postBody = json_decode($request->getContent(), true);\n $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));\n return $this->json('Ride booked', 201);\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Primary\\Symfony\\Controllers;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommand;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommandHandler;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Messenger\\MessageBusInterface;\nuse Symfony\\Component\\Routing\\Annotation\\Route;\n#[Route('\/rides')]\nclass RideController extends AbstractController\n{\n public function __construct(private readonly MessageBusInterface $messageBus)\n {\n }\n protected function bookARide(Request $request) : JsonResponse\n {\n $postBody = json_decode($request->getContent(), true);\n $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));\n return $this->json('Ride booked', 201);\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Primary\/Symfony\/Controllers\/RideController.php","originalStartLine":23},"diff":"--- Original\n+++ New\n@@ @@\n public function __construct(private readonly MessageBusInterface $messageBus)\n {\n }\n- #[Route('', name: 'ride', methods: ['POST'])]\n- public function bookARide(Request $request) : JsonResponse\n+ protected function bookARide(Request $request) : JsonResponse\n {\n $postBody = json_decode($request->getContent(), true);\n $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));","processOutput":""},{"mutator":{"mutatorName":"MethodCallRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Primary\\Symfony\\Controllers;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommand;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommandHandler;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Messenger\\MessageBusInterface;\nuse Symfony\\Component\\Routing\\Annotation\\Route;\n#[Route('\/rides')]\nclass RideController extends AbstractController\n{\n public function __construct(private readonly MessageBusInterface $messageBus)\n {\n }\n #[Route('', name: 'ride', methods: ['POST'])]\n public function bookARide(Request $request) : JsonResponse\n {\n $postBody = json_decode($request->getContent(), true);\n $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));\n return $this->json('Ride booked', 201);\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Primary\\Symfony\\Controllers;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommand;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommandHandler;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Messenger\\MessageBusInterface;\nuse Symfony\\Component\\Routing\\Annotation\\Route;\n#[Route('\/rides')]\nclass RideController extends AbstractController\n{\n public function __construct(private readonly MessageBusInterface $messageBus)\n {\n }\n #[Route('', name: 'ride', methods: ['POST'])]\n public function bookARide(Request $request) : JsonResponse\n {\n $postBody = json_decode($request->getContent(), true);\n \n return $this->json('Ride booked', 201);\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Primary\/Symfony\/Controllers\/RideController.php","originalStartLine":27},"diff":"--- Original\n+++ New\n@@ @@\n public function bookARide(Request $request) : JsonResponse\n {\n $postBody = json_decode($request->getContent(), true);\n- $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));\n+ \n return $this->json('Ride booked', 201);\n }\n }","processOutput":""},{"mutator":{"mutatorName":"DecrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Primary\\Symfony\\Controllers;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommand;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommandHandler;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Messenger\\MessageBusInterface;\nuse Symfony\\Component\\Routing\\Annotation\\Route;\n#[Route('\/rides')]\nclass RideController extends AbstractController\n{\n public function __construct(private readonly MessageBusInterface $messageBus)\n {\n }\n #[Route('', name: 'ride', methods: ['POST'])]\n public function bookARide(Request $request) : JsonResponse\n {\n $postBody = json_decode($request->getContent(), true);\n $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));\n return $this->json('Ride booked', 201);\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Primary\\Symfony\\Controllers;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommand;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommandHandler;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Messenger\\MessageBusInterface;\nuse Symfony\\Component\\Routing\\Annotation\\Route;\n#[Route('\/rides')]\nclass RideController extends AbstractController\n{\n public function __construct(private readonly MessageBusInterface $messageBus)\n {\n }\n #[Route('', name: 'ride', methods: ['POST'])]\n public function bookARide(Request $request) : JsonResponse\n {\n $postBody = json_decode($request->getContent(), true);\n $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));\n return $this->json('Ride booked', 200);\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Primary\/Symfony\/Controllers\/RideController.php","originalStartLine":35},"diff":"--- Original\n+++ New\n@@ @@\n {\n $postBody = json_decode($request->getContent(), true);\n $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));\n- return $this->json('Ride booked', 201);\n+ return $this->json('Ride booked', 200);\n }\n }","processOutput":""},{"mutator":{"mutatorName":"IncrementInteger","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Primary\\Symfony\\Controllers;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommand;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommandHandler;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Messenger\\MessageBusInterface;\nuse Symfony\\Component\\Routing\\Annotation\\Route;\n#[Route('\/rides')]\nclass RideController extends AbstractController\n{\n public function __construct(private readonly MessageBusInterface $messageBus)\n {\n }\n #[Route('', name: 'ride', methods: ['POST'])]\n public function bookARide(Request $request) : JsonResponse\n {\n $postBody = json_decode($request->getContent(), true);\n $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));\n return $this->json('Ride booked', 201);\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Primary\\Symfony\\Controllers;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommand;\nuse App\\RideBooking\\Writes\\BusinessLogic\\UseCases\\BookRideCommandHandler;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nuse Symfony\\Bundle\\FrameworkBundle\\Controller\\AbstractController;\nuse Symfony\\Component\\HttpFoundation\\JsonResponse;\nuse Symfony\\Component\\HttpFoundation\\Request;\nuse Symfony\\Component\\Messenger\\MessageBusInterface;\nuse Symfony\\Component\\Routing\\Annotation\\Route;\n#[Route('\/rides')]\nclass RideController extends AbstractController\n{\n public function __construct(private readonly MessageBusInterface $messageBus)\n {\n }\n #[Route('', name: 'ride', methods: ['POST'])]\n public function bookARide(Request $request) : JsonResponse\n {\n $postBody = json_decode($request->getContent(), true);\n $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));\n return $this->json('Ride booked', 202);\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Primary\/Symfony\/Controllers\/RideController.php","originalStartLine":35},"diff":"--- Original\n+++ New\n@@ @@\n {\n $postBody = json_decode($request->getContent(), true);\n $this->messageBus->dispatch(new BookRideCommand(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), $postBody['departure'], $postBody['arrival'], $postBody['isUberX']));\n- return $this->json('Ride booked', 201);\n+ return $this->json('Ride booked', 202);\n }\n }","processOutput":""},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nclass FakeRideRepository implements RideRepository\n{\n private array $rides = [];\n public function save(Ride $ride) : void\n {\n $this->rides[] = $ride;\n }\n public function allRides() : array\n {\n return $this->rides;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nclass FakeRideRepository implements RideRepository\n{\n private array $rides = [];\n public function save(Ride $ride) : void\n {\n $this->rides[] = $ride;\n }\n protected function allRides() : array\n {\n return $this->rides;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/Repositories\/FakeRideRepository.php","originalStartLine":17},"diff":"--- Original\n+++ New\n@@ @@\n {\n $this->rides[] = $ride;\n }\n- public function allRides() : array\n+ protected function allRides() : array\n {\n return $this->rides;\n }\n }","processOutput":""},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RiderRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Rider;\nuse Ramsey\\Uuid\\UuidInterface;\nclass FakeRiderRepository implements RiderRepository\n{\n private array $riders = [];\n public function findById(UuidInterface $riderId)\n {\n return $this->riders[$riderId->toString()];\n }\n public function setRiders(...$riders) : void\n {\n foreach ($riders as $rider) {\n $this->riders[$rider->getId()->toString()] = $rider;\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RiderRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Rider;\nuse Ramsey\\Uuid\\UuidInterface;\nclass FakeRiderRepository implements RiderRepository\n{\n private array $riders = [];\n public function findById(UuidInterface $riderId)\n {\n return $this->riders[$riderId->toString()];\n }\n protected function setRiders(...$riders) : void\n {\n foreach ($riders as $rider) {\n $this->riders[$rider->getId()->toString()] = $rider;\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/Repositories\/FakeRiderRepository.php","originalStartLine":20},"diff":"--- Original\n+++ New\n@@ @@\n {\n return $this->riders[$riderId->toString()];\n }\n- public function setRiders(...$riders) : void\n+ protected function setRiders(...$riders) : void\n {\n foreach ($riders as $rider) {\n $this->riders[$rider->getId()->toString()] = $rider;","processOutput":""},{"mutator":{"mutatorName":"Foreach_","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RiderRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Rider;\nuse Ramsey\\Uuid\\UuidInterface;\nclass FakeRiderRepository implements RiderRepository\n{\n private array $riders = [];\n public function findById(UuidInterface $riderId)\n {\n return $this->riders[$riderId->toString()];\n }\n public function setRiders(...$riders) : void\n {\n foreach ($riders as $rider) {\n $this->riders[$rider->getId()->toString()] = $rider;\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RideRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\Repositories\\RiderRepository;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Ride;\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Rider;\nuse Ramsey\\Uuid\\UuidInterface;\nclass FakeRiderRepository implements RiderRepository\n{\n private array $riders = [];\n public function findById(UuidInterface $riderId)\n {\n return $this->riders[$riderId->toString()];\n }\n public function setRiders(...$riders) : void\n {\n foreach (array() as $rider) {\n $this->riders[$rider->getId()->toString()] = $rider;\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/Repositories\/FakeRiderRepository.php","originalStartLine":22},"diff":"--- Original\n+++ New\n@@ @@\n }\n public function setRiders(...$riders) : void\n {\n- foreach ($riders as $rider) {\n+ foreach (array() as $rider) {\n $this->riders[$rider->getId()->toString()] = $rider;\n }\n }\n }","processOutput":""},{"mutator":{"mutatorName":"PublicVisibility","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Rider;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nclass FakeRiderRepositoryFactory\n{\n public static function create() : FakeRiderRepository\n {\n $riderRepository = new FakeRiderRepository();\n $riderRepository->setRiders(new Rider(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), new \\DateTimeImmutable(\"2024-02-22\")));\n return $riderRepository;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Rider;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nclass FakeRiderRepositoryFactory\n{\n protected static function create() : FakeRiderRepository\n {\n $riderRepository = new FakeRiderRepository();\n $riderRepository->setRiders(new Rider(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), new \\DateTimeImmutable(\"2024-02-22\")));\n return $riderRepository;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/Repositories\/FakeRiderRepositoryFactory.php","originalStartLine":10},"diff":"--- Original\n+++ New\n@@ @@\n use Ramsey\\Uuid\\Rfc4122\\UuidV4;\n class FakeRiderRepositoryFactory\n {\n- public static function create() : FakeRiderRepository\n+ protected static function create() : FakeRiderRepository\n {\n $riderRepository = new FakeRiderRepository();\n $riderRepository->setRiders(new Rider(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), new \\DateTimeImmutable(\"2024-02-22\")));","processOutput":""},{"mutator":{"mutatorName":"MethodCallRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Rider;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nclass FakeRiderRepositoryFactory\n{\n public static function create() : FakeRiderRepository\n {\n $riderRepository = new FakeRiderRepository();\n $riderRepository->setRiders(new Rider(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), new \\DateTimeImmutable(\"2024-02-22\")));\n return $riderRepository;\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\Repositories;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Models\\Rider;\nuse Ramsey\\Uuid\\Rfc4122\\UuidV4;\nclass FakeRiderRepositoryFactory\n{\n public static function create() : FakeRiderRepository\n {\n $riderRepository = new FakeRiderRepository();\n \n return $riderRepository;\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/Repositories\/FakeRiderRepositoryFactory.php","originalStartLine":13},"diff":"--- Original\n+++ New\n@@ @@\n public static function create() : FakeRiderRepository\n {\n $riderRepository = new FakeRiderRepository();\n- $riderRepository->setRiders(new Rider(UuidV4::fromString(\"99efde49-0a02-4ede-9cd2-c8f773fd6bad\"), new \\DateTimeImmutable(\"2024-02-22\")));\n+ \n return $riderRepository;\n }\n }","processOutput":""},{"mutator":{"mutatorName":"Concat","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nclass FakeTripScanner implements TripScanner\n{\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n return $this->distancesByDirection[$departure . '-' . $arrival];\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nclass FakeTripScanner implements TripScanner\n{\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n return $this->distancesByDirection['-' . $departure . $arrival];\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/FakeTripScanner.php","originalStartLine":14},"diff":"--- Original\n+++ New\n@@ @@\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n- return $this->distancesByDirection[$departure . '-' . $arrival];\n+ return $this->distancesByDirection['-' . $departure . $arrival];\n }\n }","processOutput":""},{"mutator":{"mutatorName":"ConcatOperandRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nclass FakeTripScanner implements TripScanner\n{\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n return $this->distancesByDirection[$departure . '-' . $arrival];\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nclass FakeTripScanner implements TripScanner\n{\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n return $this->distancesByDirection['-' . $arrival];\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/FakeTripScanner.php","originalStartLine":14},"diff":"--- Original\n+++ New\n@@ @@\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n- return $this->distancesByDirection[$departure . '-' . $arrival];\n+ return $this->distancesByDirection['-' . $arrival];\n }\n }","processOutput":""},{"mutator":{"mutatorName":"ConcatOperandRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nclass FakeTripScanner implements TripScanner\n{\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n return $this->distancesByDirection[$departure . '-' . $arrival];\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nclass FakeTripScanner implements TripScanner\n{\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n return $this->distancesByDirection[$departure . $arrival];\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/FakeTripScanner.php","originalStartLine":14},"diff":"--- Original\n+++ New\n@@ @@\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n- return $this->distancesByDirection[$departure . '-' . $arrival];\n+ return $this->distancesByDirection[$departure . $arrival];\n }\n }","processOutput":""},{"mutator":{"mutatorName":"Concat","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nclass FakeTripScanner implements TripScanner\n{\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n return $this->distancesByDirection[$departure . '-' . $arrival];\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nclass FakeTripScanner implements TripScanner\n{\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n return $this->distancesByDirection[$departure . $arrival . '-'];\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/FakeTripScanner.php","originalStartLine":14},"diff":"--- Original\n+++ New\n@@ @@\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n- return $this->distancesByDirection[$departure . '-' . $arrival];\n+ return $this->distancesByDirection[$departure . $arrival . '-'];\n }\n }","processOutput":""},{"mutator":{"mutatorName":"ConcatOperandRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nclass FakeTripScanner implements TripScanner\n{\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n return $this->distancesByDirection[$departure . '-' . $arrival];\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nclass FakeTripScanner implements TripScanner\n{\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n return $this->distancesByDirection[$departure . '-'];\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/FakeTripScanner.php","originalStartLine":14},"diff":"--- Original\n+++ New\n@@ @@\n private array $distancesByDirection = ['8 avenue Foch Paris-188 avenue Foch Paris' => 7, '111 avenue Victor Hugo Aubervilliers-8 avenue Foch Paris' => 30];\n public function calculateDistance(string $departure, string $arrival) : float\n {\n- return $this->distancesByDirection[$departure . '-' . $arrival];\n+ return $this->distancesByDirection[$departure . '-'];\n }\n }","processOutput":""},{"mutator":{"mutatorName":"FunctionCallRemoval","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n \n throw new Exception($e->getMessage());\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/GoogleTripScanner.php","originalStartLine":32},"diff":"--- Original\n+++ New\n@@ @@\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n- dump($e->getMessage());\n+ \n throw new Exception($e->getMessage());\n }\n }\n }","processOutput":""},{"mutator":{"mutatorName":"Throw_","originalSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n throw new Exception($e->getMessage());\n }\n }\n}","mutatedSourceCode":"<?php\n\nnamespace App\\RideBooking\\Writes\\Adapters\\Secondary\\Gateways\\TripScanning;\n\nuse App\\RideBooking\\Writes\\BusinessLogic\\Gateways\\TripScanning\\TripScanner;\nuse Exception;\nuse yidas\\googleMaps\\Client;\nclass GoogleTripScanner implements TripScanner\n{\n public function __construct(private readonly string $googleApiKey)\n {\n }\n \/**\n * @throws Exception\n *\/\n function calculateDistance(string $departure, string $arrival) : float\n {\n try {\n $googleMaps = new Client(['key' => $this->googleApiKey]);\n $addresses = ['origin' => $departure, 'destination' => $arrival];\n $response = $googleMaps->distanceMatrix($addresses['origin'], $addresses['destination']);\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n new Exception($e->getMessage());\n }\n }\n}","originalFilePath":"\/Users\/wealcome\/wealcome-projects\/tdd-cleanarchi-php-21-fev-2024\/src\/RideBooking\/Writes\/Adapters\/Secondary\/Gateways\/TripScanning\/GoogleTripScanner.php","originalStartLine":33},"diff":"--- Original\n+++ New\n@@ @@\n return $response['rows'][0]['elements'][0]['distance']['value'] \/ 1000;\n } catch (Exception $e) {\n dump($e->getMessage());\n- throw new Exception($e->getMessage());\n+ new Exception($e->getMessage());\n }\n }\n }","processOutput":""}],"ignored":[]}