public function testObjectName() { $audit = new Audit(); $name = 'LoggedObject'; $this->assertEmpty($audit->getObjectName()); $audit->setObjectName($name); $this->assertEquals($name, $audit->getObjectName()); }
public function testGetDataShouldRetrieveOldFormadUsingFields() { $oldDate = new DateTime(); $newDate = new DateTime(); $audit = new Audit(); $audit->createField('field', 'integer', 1, 0); $audit->createField('field2', 'string', 'new_', '_old'); $audit->createField('field3', 'date', $newDate, $oldDate); $audit->createField('field4', 'datetime', $newDate, $oldDate); $this->assertEquals(['field' => ['new' => 1, 'old' => 0], 'field2' => ['new' => 'new_', 'old' => '_old'], 'field3' => ['new' => ['value' => $newDate, 'type' => 'date'], 'old' => ['value' => $oldDate, 'type' => 'date']], 'field4' => ['new' => ['value' => $newDate, 'type' => 'datetime'], 'old' => ['value' => $oldDate, 'type' => 'datetime']]], $audit->getData()); }
/** * @depends testOnFlush * @depends testListenerCanBeCreated */ public function testPostFlush(Audit $audit, DeprecatedAuditDataListener $deprecatedAuditDataListener) { $classMetadata = $this->getMock('Doctrine\\Common\\Persistence\\Mapping\\ClassMetadata'); $classMetadata->expects($this->exactly(2))->method('getTypeOfField')->withConsecutive(['stringField'], ['intField'])->willReturnOnConsecutiveCalls('string', 'integer'); $this->em->expects($this->once())->method('getClassMetadata')->with('class')->will($this->returnValue($classMetadata)); $this->em->expects($this->once())->method('flush'); $this->assertEmpty($audit->getFields()); $postFlushEventArgs = new PostFlushEventArgs($this->em); $deprecatedAuditDataListener->postFlush($postFlushEventArgs); $this->assertCount(2, $audit->getFields()); $stringField = $audit->getField('stringField'); $this->assertEquals('oldValue', $stringField->getOldValue()); $this->assertEquals('newValue', $stringField->getNewValue()); $this->assertEquals('text', $stringField->getDataType()); $intField = $audit->getField('intField'); $this->assertEquals(3, $intField->getOldValue()); $this->assertEquals(5, $intField->getNewValue()); $this->assertEquals('integer', $intField->getDataType()); $this->assertNull($audit->getDeprecatedData()); }
/** * {@inheritdoc} */ public function load(ObjectManager $manager) { /** @var User $user */ $user = $manager->getRepository('OroUserBundle:User')->findOneBy(['username' => 'admin']); $logEntry = new Audit(); $logEntry->setAction('update'); $logEntry->setObjectClass('Oro\\Bundle\\UserBundle\\Entity\\User'); $logEntry->setLoggedAt(); $logEntry->setUser($user); $logEntry->setOrganization($user->getOrganization()); $logEntry->setObjectName('test_user'); $logEntry->setObjectId($user->getId()); $logEntry->createField('username', 'text', 'new_value', 'old_value'); $logEntry->setVersion(1); $manager->persist($logEntry); $manager->flush(); $this->setReference('audit_log_entry', $logEntry); }