public function testTicketKeyInitialization() { $ticketSequenceNumberValue = 12; $branch = new Branch('DB', 'DUMMY BRANCH', 'DUMYY_DESC'); $reporter = $this->createReporter(); $assignee = $this->createAssignee(); $ticket = new Ticket(new UniqueId('unique_id'), new TicketSequenceNumber($ticketSequenceNumberValue), self::TICKET_SUBJECT, self::TICKET_DESCRIPTION, $branch, $reporter, $assignee, new Source(Source::PHONE), new Priority(Priority::PRIORITY_LOW), new Status(Status::OPEN)); $this->assertEquals($branch->getKey() . '-' . $ticketSequenceNumberValue, (string) $ticket->getKey()); }
/** * @ORM\PrePersist * @param Branch $branch * @param LifecycleEventArgs $event */ public function prePersistHandler(Branch $branch, LifecycleEventArgs $event) { $em = $event->getEntityManager(); $query = $em->createQuery("SELECT b FROM DiamanteDeskBundle:Branch b WHERE b.key = :key")->setParameter('key', $branch->getKey()); $result = $query->getResult(); if (count($result) > 0) { throw new DuplicateBranchKeyException('Branch key already exists. Please, provide another one.'); } }
public function testPrePersistHandlerWhenKeyDoesNotExistYet() { $branch = new Branch('DUMM', 'Dummy', 'Desc'); $event = new LifecycleEventArgs($branch, $this->objectManager); $dqlQueryStr = "SELECT b FROM DiamanteDeskBundle:Branch b WHERE b.key = :key"; $query = $this->getMockBuilder('\\Doctrine\\ORM\\AbstractQuery')->disableOriginalConstructor()->setMethods(array('setParameter', 'getResult'))->getMockForAbstractClass(); $this->objectManager->expects($this->once())->method('createQuery')->with($dqlQueryStr)->will($this->returnValue($query)); $query->expects($this->once())->method('setParameter')->with('key', $branch->getKey())->will($this->returnValue($query)); $query->expects($this->once())->method('getResult')->will($this->returnValue(array())); $listener = new BranchListener(); $listener->prePersistHandler($branch, $event); }
public function testThatBranchKeyConvertsToUpperCase() { $branch = new Branch('dumm', 'DUMMY_NAME', 'DUMMY_DESC'); $this->assertEquals('DUMM', $branch->getKey()); }
public static function create(Branch $branch, Ticket $ticket) { return new TicketKey($branch->getKey(), $ticket->getSequenceNumber()->getValue()); }
/** * Initialize TicketKey * @return void */ private function initializeKey() { if ($this->sequenceNumber->getValue() && is_null($this->key)) { $this->key = new TicketKey($this->branch->getKey(), $this->sequenceNumber->getValue()); } }