public static function assertEquals($expected, $actual, $message = '', $delta = 0, $maxDepth = 10)
 {
     if ($expected instanceof \CActiveRecord) {
         /** @var \CActiveRecord $expected */
         self::assertNotNull($actual, 'Failed asserting that two ActiveRecords are equal. Second is null. ' . $message);
         self::assertTrue($expected->equals($actual), 'Failed asserting that two ActiveRecords are equal. ' . $message);
     } elseif ($actual instanceof \CActiveRecord) {
         /** @var \CActiveRecord $actual */
         self::assertNotNull($expected, 'Failed asserting that two ActiveRecords are equal. First is null. ' . $message);
         self::assertTrue($actual->equals($expected), 'Failed asserting that two ActiveRecords are equal. ' . $message);
     } else {
         parent::assertEquals($expected, $actual, $message, $delta, $maxDepth);
     }
 }
Exemplo n.º 2
0
 /**
  * Uses imap to assert that an email with the specified subject is present in the specified
  * mailbox
  * @param CTestCase $owner
  * @param Credentials $credentials
  * @param string $subject unique email subject
  * @param int $tries number of imap request attempts
  */
 public function assertEmailReceived($owner, Credentials $credentials, $subject, $tries = 1)
 {
     Yii::import('application.tests.components.EmailTestingUtil');
     $emailTestUtil = new EmailTestingUtil();
     $emailTestUtil->credentials = $credentials;
     $owner->assertTrue($emailTestUtil->open());
     $stream = $emailTestUtil->getStream();
     $searchString = 'SUBJECT "' . $subject . '"';
     for ($i = 0; $i < $tries; $i++) {
         $uids = imap_search($stream, $searchString, SE_UID);
         if ($uids) {
             break;
         }
         sleep(3);
     }
     $owner->assertTrue(is_array($uids));
     $owner->assertEquals(1, count($uids));
     $emailTestUtil->close();
 }