Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
ErrorLogger.php
Go to the documentation of this file.
1 <?php
8 
14 {
19  private static $errorLogger;
20 
25  public static function getInstance()
26  {
27  if (!self::$errorLogger) {
28  self::$errorLogger = new ErrorLogger();
29  }
30 
31  return self::$errorLogger;
32  }
33 
37  private function __construct()
38  {
39  // private constructor
40  }
41 
49  public function logErrors($module, $stepEvent)
50  {
51  //Types available should be "server", "browser", "driver". Only care about browser at the moment.
52  if (in_array("browser", $module->webDriver->manage()->getAvailableLogTypes())) {
53  $browserLogEntries = $module->webDriver->manage()->getLog("browser");
54  foreach ($browserLogEntries as $entry) {
55  if (array_key_exists("source", $entry) && $entry["source"] === "javascript") {
56  $this->logError("javascript", $stepEvent, $entry);
57  //Set javascript error in MagentoWebDriver internal array
58  $module->setJsError("ERROR({$entry["level"]}) - " . $entry["message"]);
59  }
60  }
61  }
62  }
63 
71  private function logError($type, $stepEvent, $entry)
72  {
73  //TODO Add to overall log
74  $stepEvent->getTest()->getScenario()->comment("{$type} ERROR({$entry["level"]}) - " . $entry["message"]);
75  }
76 }
$type
Definition: item.phtml:13