/** * @test * @dataProvider provideEntries */ public function it_can_be_converted_to_array_and_back(MessageLogEntry $entry) { $entryData = $entry->toArray(); $copiedEntry = MessageLogEntry::fromArray($entryData); $this->assertTrue($entry->messageId()->equals($copiedEntry->messageId())); $this->assertEquals($entry->messageName(), $copiedEntry->messageName()); $this->assertEquals($entry->version(), $copiedEntry->version()); $this->assertEquals($entry->loggedAt()->format('Y-m-d\\TH:i:s.uO'), $copiedEntry->loggedAt()->format('Y-m-d\\TH:i:s.uO')); if (is_null($entry->taskListPosition())) { $this->assertNull($copiedEntry->taskListPosition()); } else { $this->assertTrue($entry->taskListPosition()->equals($copiedEntry->taskListPosition())); } if (is_null($entry->processId())) { $this->assertNull($copiedEntry->processId()); } else { $this->assertTrue($entry->processId()->equals($copiedEntry->processId())); } $this->assertEquals($entry->status()->toString(), $copiedEntry->status()->toString()); $this->assertEquals($entry->status()->failureMsg(), $copiedEntry->status()->failureMsg()); }
/** * @param MessageLogEntry $entry * @return int affected rows */ private function updateEntry(MessageLogEntry $entry) { return $this->connection->update(self::TABLE_NAME, $entry->toArray(), ["message_id" => $entry->messageId()->toString()]); }