Ejemplo n.º 1
0
 /**
  * Check processing of tests with special characters in name which could appear when test have dataProvider and
  * its name is appended by PHPUnit.
  *
  * @dataProvider nameProvider
  * @param string $testCaseName
  * @param string $testName
  */
 public function testShouldProperlyHandleTestsWithDataProvider($testCaseName, $testName)
 {
     $fileName = $this->createEmptyFile();
     // Add "started" record of the test
     $this->publisher->publishResult($testCaseName, $testName, XmlPublisher::TEST_STATUS_STARTED);
     /** @var \SimpleXMLElement $xml */
     $xml = simplexml_load_file($fileName)[0];
     $this->assertInstanceOf(\SimpleXMLElement::class, $xml->testcase);
     $this->assertEquals(1, count($xml->testcase));
     $this->assertEquals($testCaseName, $xml->testcase['name']);
     $this->assertInstanceOf(\SimpleXMLElement::class, $xml->testcase->test);
     $this->assertEquals(1, count($xml->testcase->test));
     $this->assertEquals($testName, $xml->testcase->test['name']);
     $this->assertEquals(XmlPublisher::TEST_STATUS_STARTED, $xml->testcase->test['status']);
     // Update the test status to "done"
     $this->publisher->publishResult($testCaseName, $testName, XmlPublisher::TEST_STATUS_DONE, XmlPublisher::TEST_RESULT_PASSED);
     /** @var \SimpleXMLElement $xml */
     $xml = simplexml_load_file($fileName)[0];
     $this->assertInstanceOf(\SimpleXMLElement::class, $xml->testcase);
     $this->assertEquals(1, count($xml->testcase));
     $this->assertEquals($testCaseName, $xml->testcase['name']);
     $this->assertInstanceOf(\SimpleXMLElement::class, $xml->testcase->test);
     $this->assertEquals(1, count($xml->testcase->test));
     $this->assertEquals($testName, $xml->testcase->test['name']);
     $this->assertEquals(XmlPublisher::TEST_STATUS_DONE, $xml->testcase->test['status']);
     $this->assertEquals(XmlPublisher::TEST_RESULT_PASSED, $xml->testcase->test['result']);
 }