Beispiel #1
0
 public static function parseLog($log)
 {
     $lines = explode("\n", $log);
     $start = self::cleanStartLine(array_shift($lines));
     array_shift($lines);
     //$end = array_pop($lines);
     $duration = self::cleanStartLine(array_pop($lines));
     $retrieved = self::cleanStartLine(array_pop($lines));
     array_pop($lines);
     $console = new Console($start, $duration, $retrieved);
     foreach ($lines as $line) {
         $console->addLine(Line::parseLine($line));
     }
     return $console;
 }
Beispiel #2
0
 public function test()
 {
     $logFixtureFile = 'tests/fixtures/log.fixture';
     $logFixtureToString = 'tests/fixtures/log-to-string.fixture';
     $logFixture = file_get_contents($logFixtureFile);
     $consoleLog = Console::parseLog($logFixture);
     static::assertInstanceOf('Dfi\\TestUtils\\Log\\Console', $consoleLog);
     static::assertEquals('00:01:02', $consoleLog->getDuration());
     static::assertEquals('Thu Oct 29 2015 12:17:47 GMT+0100 (CET)', $consoleLog->getRetrieved());
     static::assertEquals('Thu Oct 29 2015 12:16:44 GMT+0100 (CET)', $consoleLog->getStart());
     $toString = (string) $consoleLog;
     static::assertEquals(file_get_contents($logFixtureToString), $toString);
     $lines = $consoleLog->getLines();
     static::assertInternalType('array', $lines);
     static::assertCount(24, $lines);
     $line = current($lines);
     static::assertInstanceOf('Dfi\\TestUtils\\Log\\Line', $line);
     $line = new Line('2015 - 01 - 20 00:00:01', 'debug', 'testMessage');
     $consoleLog->addLine($line);
     $lines = $consoleLog->getLines();
     static::assertCount(25, $lines);
     static::assertEquals($line, $lines[24]);
 }
Beispiel #3
0
 public function getConsoleLog()
 {
     $frm = Mink::getInstance()->getDriver()->evaluateScript('typeof frm != "undefined"');
     if ($frm) {
         $log = Mink::getInstance()->getDriver()->evaluateScript('frm.log.debugout.getLog()');
         $console = Console::parseLog($log);
         return $console;
     }
     return null;
 }