blob: 81b4be08ff99d2342c072c81b9de299601521ed5 [file] [log] [blame]
library java.junit;
import 'package:unittest/unittest.dart' hide fail;
import 'package:unittest/unittest.dart' as _ut show fail;
class JUnitTestCase {
void setUp() {}
void tearDown() {}
static void fail(String msg) {
_ut.fail(msg);
}
static void assertTrue(bool x) {
expect(x, isTrue);
}
static void assertTrueMsg(String msg, bool x) {
expect(x, isTrueMsg(msg));
}
static void assertFalse(bool x) {
expect(x, isFalse);
}
static void assertFalseMsg(String msg, bool x) {
expect(x, isFalseMsg(msg));
}
static void assertNull(x) {
expect(x, isNull);
}
static void assertNotNull(x) {
expect(x, isNotNull);
}
static void assertNotNullMsg(String msg, x) {
expect(x, isNotNullMsg(msg));
}
static void assertEquals(expected, actual) {
expect(actual, equals(expected));
}
static void assertEqualsMsg(String msg, expected, actual) {
expect(actual, equalsMsg(msg, expected));
}
static void assertSame(expected, actual) {
expect(actual, same(expected));
}
static void assertSameMsg(String msg, expected, actual) {
expect(actual, sameMsg(msg, expected));
}
static void assertNotSame(expected, actual) {
expect(actual, notSame(expected));
}
}
runJUnitTest(testInstance, Function testFunction) {
testInstance.setUp();
try {
testFunction();
} finally {
testInstance.tearDown();
}
}
/**
* Returns a matches that matches if the value is not the same instance as "object" (`!==`).
*/
Matcher notSame(expected) => new _IsNotSameAs(expected);
class _IsNotSameAs extends Matcher {
final _expected;
const _IsNotSameAs(this._expected);
bool matches(item, Map matchState) => !identical(item, _expected);
Description describe(Description description) =>
description.add('not same instance as ').addDescriptionOf(_expected);
}
Matcher equalsMsg(String msg, expected) => new _EqualsWithMessage(msg, expected);
class _EqualsWithMessage extends Matcher {
final String msg;
final expectedValue;
const _EqualsWithMessage(this.msg, this.expectedValue);
bool matches(item, Map matchState) {
return item == expectedValue;
}
Description describe(Description mismatchDescription) {
return mismatchDescription.replace(msg);
}
}
Matcher sameMsg(String msg, expected) => new _IsSameAsWithMessage(msg, expected);
class _IsSameAsWithMessage extends Matcher {
final String msg;
final _expected;
const _IsSameAsWithMessage(this.msg, this._expected);
bool matches(item, Map matchState) => identical(item, _expected);
Description describe(Description description) => description.add(msg).addDescriptionOf(_expected);
}
Matcher isTrueMsg(String msg) => new _IsTrueWithMessage(msg);
class _IsTrueWithMessage extends Matcher {
final String msg;
const _IsTrueWithMessage(this.msg);
bool matches(item, Map matchState) {
return item == true;
}
Description describe(Description mismatchDescription) {
return mismatchDescription.replace(msg);
}
}
Matcher isFalseMsg(String msg) => new _IsFalseWithMessage(msg);
class _IsFalseWithMessage extends Matcher {
final String msg;
const _IsFalseWithMessage(this.msg);
bool matches(item, Map matchState) {
return item == false;
}
Description describe(Description mismatchDescription) {
return mismatchDescription.replace(msg);
}
}
Matcher isNotNullMsg(String msg) => new _IsNotNullWithMessage(msg);
class _IsNotNullWithMessage extends Matcher {
final String msg;
const _IsNotNullWithMessage(this.msg);
bool matches(item, Map matchState) {
return item != null;
}
Description describe(Description mismatchDescription) {
return mismatchDescription.replace(msg);
}
}