Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

SimpleTest conversion: Difference between revisions

From MoodleDocs
No edit summary
No edit summary
Line 15: Line 15:


=SimpleTest emulation=
=SimpleTest emulation=
 
{| class="nicetable"
|-
! SimpleTest
! PHPUnit
! Notes
|-
| $this->assertEqual($expected, $actual)
| $this->assertEquals($expected, $actual)
|
|-
| $this->assertIdentical($expected, $actual)
| $this->assertSame($expected, $actual)
|
|-
| $this->assertTrue($actual)
| $this->assertTrue((bool)$a, $b)
| SimpleTest convers parameter to bool.
|}




[[Category:Unit testing]]
[[Category:Unit testing]]

Revision as of 19:43, 20 April 2012

Overview

The migration is pretty straightforward:

  1. create new test file in `xxx/tests/yyy_test.php`
  2. copy contents of the old test file
  3. replace extends UnitTestCase with extends basic_testcase and extends UnitTestCaseUsingDatabase with extends advanced_testcase
  4. move constructor code to setUp
  5. fix setUp(), tearDown()
  6. fix assert syntax
  7. add $this->resetAfterTest() in advanced test cases that modify database
  8. add missing global $CFG for includes outside of testcase classes

Assert differences

SimpleTest emulation

SimpleTest PHPUnit Notes
$this->assertEqual($expected, $actual) $this->assertEquals($expected, $actual)
$this->assertIdentical($expected, $actual) $this->assertSame($expected, $actual)
$this->assertTrue($actual) $this->assertTrue((bool)$a, $b) SimpleTest convers parameter to bool.