Haxe、MassiveUnit(munit)のアサーションとアノテーション
アサーション
詳しくは MassiveUnit/Assert.hx at master · massiveinteractive/MassiveUnit
それぞれ最終引数にhaxe.PosInfos
をとることができるが省略。
is, isNot
Assert.isTrue(value);
Assert.isFalse(value);
Assert.isNull(value);
Assert.isNotNull(value);
Assert.isNaN(value);
Assert.isNotNaN(value);
Assert.isType(value, type);
Assert.isNotType(value, type);
are, areNot
// If the expected value is an Enum then Type.enumEq will be used to compare the two values.
Assert.areEqual(expected, actual);
Assert.areNotEqual(expected, actual);
// expected == actual
Assert.areSame(expected, actual);
Assert.areNotSame(expected, actual);
自分で落とす
// throw new AssertionException(msg, info);
Assert.fail(msg);
アノテーション
詳しくは Working with test classes · massiveinteractive/MassiveUnit Wiki
Test
@Test
public function testExample():Void {}
Async
import massive.munit.util.Timer;
@AsyncTest
public function testAsyncExample(asyncFactory:AsyncFactory):Void {
var handler:Dynamic = asyncFactory.createHandler(this, function(){
Assert.isFalse(false);
}, 300);
Timer.delay(handler, 200);
}
Skip
@Ignore("reason") @Test
public function testExample():Void {}
Setup
Once per test class
@BeforeClass
public function beforeClass():Void {}
@AfterClass
public function afterClass():Void {}
Before/After every test
@Before
public function setup():Void {}
@After
public function tearDown():Void {}