1
0
Fork 0
mirror of https://github.com/ninjamuffin99/Funkin.git synced 2024-10-27 18:05:09 +00:00
Funkin/tests/unit/source/MockTest.hx

61 lines
1.5 KiB
Haxe
Raw Normal View History

package;
import massive.munit.util.Timer;
import massive.munit.Assert;
import massive.munit.async.AsyncFactory;
import funkin.util.DateUtil;
class MockTest extends FunkinTest
{
public function new()
{
super();
}
@BeforeClass
public function beforeClass() {}
@AfterClass
public function afterClass() {}
@Before
public function setup() {}
@After
public function tearDown() {}
@Test
public function testMock()
{
// Test that mocking works.
var mockSprite = mockatoo.Mockatoo.mock(flixel.FlxSprite);
var mockAnim = mockatoo.Mockatoo.mock(flixel.animation.FlxAnimationController);
mockSprite.animation = mockAnim;
var animData:funkin.data.animation.AnimationData =
{
name: "testAnim",
prefix: "blablabla"
};
mockSprite.animation.addByPrefix("testAnim", "blablabla", 24, false, false, false);
// Verify that the method was called once.
// If not, a VerificationException will be thrown and the test will fail.
mockatoo.Mockatoo.verify(mockAnim.addByPrefix("testAnim", "blablabla", 24, false, false, false), times(1));
try
{
// Attempt to verify the method was called.
// This should FAIL, since we didn't call the method.
mockatoo.Mockatoo.verify(mockAnim.addByIndices("testAnim", "blablabla", [], "", 24, false, false, false), times(1));
Assert.fail("Mocking function should have thrown but didn't.");
}
catch (_:mockatoo.exception.VerificationException)
{
// Expected.
}
}
}