public function testRepeatedDrivingAssertionCRUD() { $driverCategory = $this->createDriverCategory('Zivildienst'); $address = Address::registerAddress('Burstrasse 22c', '6333', 'Baar', 'Schweiz'); $this->init->addressRepo->store($address); $driver = Driver::registerDriver('m', 'Max', 'Mühlemann', '041 222 32 32', $address, 'F3234141', $driverCategory, true, '', '*****@*****.**', new \DateTime(), new \DateTime(), 5, 'alles nur ein Test'); $this->init->driverRepo->store($driver); $shiftTypes[] = $this->createShiftType('Shift 1'); $shiftTypes[] = $this->createShiftType('Shift 2'); //weekly $repeatedDrivingAssertionWeekly = new RepeatedWeeklyDrivingAssertion(); $repeatedDrivingAssertionWeekly->setWeekday(1); $repeatedDrivingAssertionWeekly->setShiftTypes($shiftTypes); $this->init->repeatedDrivingAssertionRepo->store($repeatedDrivingAssertionWeekly); $repeatedDrivingAssertionPlan = RepeatedDrivingAssertionPlan::registerRepeatedAssertionPlan('test', new \DateTime(), 'weekly', true); $repeatedDrivingAssertionPlan->assignDriver($driver); $repeatedDrivingAssertionPlan->assignRepeatedDrivingAssertion($repeatedDrivingAssertionWeekly); $this->init->repeatedDrivingAssertionPlanRepo->store($repeatedDrivingAssertionPlan); $this->init->em->flush(); $find = $this->init->repeatedDrivingAssertionPlanRepo->find($repeatedDrivingAssertionPlan->getId()); $this->assertEquals($find, $repeatedDrivingAssertionPlan); //monthly $repeatedDrivingAssertionMonthly = new RepeatedMonthlyDrivingAssertion(); $repeatedDrivingAssertionMonthly->setRelativeWeekAsText('first'); $repeatedDrivingAssertionMonthly->setWeekdayAsText('monday'); $this->init->repeatedDrivingAssertionRepo->store($repeatedDrivingAssertionMonthly); $repeatedDrivingAssertionPlan = RepeatedDrivingAssertionPlan::registerRepeatedAssertionPlan('test', new \DateTime(), 'monthly', true); $repeatedDrivingAssertionPlan->assignDriver($driver); $repeatedDrivingAssertionPlan->assignRepeatedDrivingAssertion($repeatedDrivingAssertionMonthly); $this->init->repeatedDrivingAssertionPlanRepo->store($repeatedDrivingAssertionPlan); $this->init->em->flush(); $find = $this->init->repeatedDrivingAssertionPlanRepo->find($repeatedDrivingAssertionPlan->getId()); $this->assertEquals($find, $repeatedDrivingAssertionPlan); }
public function testDriverCRUD() { $driverCategory = $this->createDriverCategory('Zivildienst'); $address = Address::registerAddress('Burstrasse 22c', '6333', 'Baar', 'Schweiz'); $this->init->addressRepo->store($address); $driver = Driver::registerDriver('m', 'Max', 'Mühlemann', '041 222 32 32', $address, 'F3234141', $driverCategory, true, 'Dr.', '*****@*****.**', new \DateTime(), new \DateTime(), 5, 'alles nur ein Test'); $this->init->driverRepo->store($driver); $this->init->em->flush(); $driverFind = $this->init->driverRepo->find($driver->getId()); $this->assertEquals($driverFind, $driver); $date = new \DateTime('2009-01-01'); $address = Address::registerAddress('Hauptstrasse 11', '6430', 'Schwyz', 'Schweiz', 48.55446, 75.54658999999999, 'Wohnung', 1); $this->init->addressRepo->store($address); $driverCategory = $this->createDriverCategory('Freiwillig'); $driver->updateDriverData('f', 'Muni', 'Meier', '041 333 32 32', $address, 'FEA12345', $driverCategory, false, 'Dr. med.', '*****@*****.**', $date, $date, 5, 'alles nur ein Test'); $this->init->driverRepo->store($driver); $this->init->em->flush(); /**@var $driverFind Driver */ $driverFind = $this->init->driverRepo->findOneBy(array('licenceNumber' => 'FEA12345')); $this->assertEquals($driver, $driverFind); $this->driverCreateAbsent($driver); $this->driverSuperviseVehicle($driver); $this->driverRemove($driver); }
/** * @param DriverRegisterDTO $driverDTO * @throws \Exception * @return Driver */ public function registerDTOtoNewDriver(DriverRegisterDTO $driverDTO) { $driver = Driver::registerDriver($driverDTO->gender, $driverDTO->firstname, $driverDTO->lastname, $driverDTO->telephone, $this->addressAssembler->addressLookaheadDTOtoAddress($driverDTO->lookaheadaddress), $driverDTO->licenceNumber, $driverDTO->driverCategory, $driverDTO->wheelChairAttendance, $driverDTO->title, $driverDTO->email, $driverDTO->entryDate, $driverDTO->birthday, $driverDTO->extraMinutes, $driverDTO->details, $driverDTO->operationWish, $driverDTO->fax, $driverDTO->contradictVehicleCategories); return $driver; }