Represents a contract for annotation, which serves as condition, that has to be
fullfiled to execute test, in other case the test execution is TestState.skipped
.
The ignore()
annotation is one simple implementation of this mechanism.
The example below shows bug
annotation, which allow to skip test,
until the reported issue is resolved.
shared annotation BugAnnotation bug(String id) => BugAnnotation(id); shared final annotation class BugAnnotation(String id) satisfies OptionalAnnotation<BugAnnotation,FunctionDeclaration> & TestCondition { shared actual Result evaluate(TestDescription description) { // check if the issue is already resolved } } test bug("1205") shared void shouldTestSomethingButThereIsBug() { }
no type hierarchy
no supertypes hierarchy
Inherited Attributes |
Attributes inherited from: Object hash , string |
Methods | |
evaluate | shared formal Result evaluate(TestExecutionContext context) Evaluate the condition for the given test. |
Inherited Methods |
Methods inherited from: Object equals |
Nested Classes | |
Result | shared Result The result of evaluating. |