TestObject is a composite of multiple TestRules that applies them sequentially to validate operations on a Cell.
Can check signals, links, elements and actions according to multiple test rules that can be combined.
Types of Rules
TestActionRule: Controls function execution.
TestSignalRule: Determines whether a Signal is processed.
TestLinkRule: Validates link establishment between Cell instances.
TestElementRule: Determines whether an element is allowed to be processed.
Example:
// Combine rules
TestObject.fromRules(rules: [rule1, rule2]);
// Or use operator +
final compositeRule = rule1 + rule2;
final test = TestObject<Cell>.fromRules(rules: [
TestSignalRule(rule: (signal) => signal != null),
TestLinkRule(rule: (link) => link is ValidCell)
]);
- Implemented types
-
- TestObjectRule<
C> - Iterable<
TestRule< dynamic, Cell> >
- TestObjectRule<
- Implementers
Constructors
-
TestObject.fromRules({required Iterable<
TestRule< rules})dynamic, Cell> > -
Creates a TestObject from multiple rules
constfactory
Properties
-
first
→ TestRule<
dynamic, Cell> -
The first element.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- isEmpty → bool
-
Whether this collection has no elements.
no setterinherited
- isNotEmpty → bool
-
Whether this collection has at least one element.
no setterinherited
-
iterator
→ Iterator<
TestRule< dynamic, Cell> > -
A new
Iterator
that allows iterating the elements of thisIterable
.no setterinherited -
last
→ TestRule<
dynamic, Cell> -
The last element.
no setterinherited
- length → int
-
The number of elements in this Iterable.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
single
→ TestRule<
dynamic, Cell> -
Checks that this iterable has only one element, and returns that element.
no setterinherited
Methods
-
action(
Function action, C cell, {Arguments? arguments}) → bool - Validates an action against test rules
-
any(
bool test(TestRule< dynamic, Cell> element)) → bool -
Checks whether any element of this iterable satisfies
test
.inherited -
call(
Object? object, {covariant C? cell, dynamic arguments, bool exception(TestRule< dynamic, Cell> rule, Exception e) = TestRuleTrue.passed}) → bool -
Validates a generic object against test rules
override
-
cast<
R> () → Iterable< R> -
A view of this iterable as an iterable of
R
instances.inherited -
contains(
Object? element) → bool -
Whether the collection contains an element equal to
element
.inherited -
elementAt(
int index) → TestRule< dynamic, Cell> -
Returns the
index
th element.inherited -
every(
bool test(TestRule< dynamic, Cell> element)) → bool -
Checks whether every element of this iterable satisfies
test
.inherited -
expand<
T> (Iterable< T> toElements(TestRule<dynamic, Cell> element)) → Iterable<T> -
Expands each element of this Iterable into zero or more elements.
inherited
-
firstWhere(
bool test(TestRule< dynamic, Cell> element), {TestRule<dynamic, Cell> orElse()?}) → TestRule<dynamic, Cell> -
The first element that satisfies the given predicate
test
.inherited -
fold<
T> (T initialValue, T combine(T previousValue, TestRule< dynamic, Cell> element)) → T -
Reduces a collection to a single value by iteratively combining each
element of the collection with an existing value
inherited
-
followedBy(
Iterable< TestRule< other) → Iterable<dynamic, Cell> >TestRule< dynamic, Cell> > -
Creates the lazy concatenation of this iterable and
other
.inherited -
forEach(
void action(TestRule< dynamic, Cell> element)) → void -
Invokes
action
on each element of this iterable in iteration order.inherited -
join(
[String separator = ""]) → String -
Converts each element to a String and concatenates the strings.
inherited
-
lastWhere(
bool test(TestRule< dynamic, Cell> element), {TestRule<dynamic, Cell> orElse()?}) → TestRule<dynamic, Cell> -
The last element that satisfies the given predicate
test
.inherited -
link(
Cell link, {C? cell}) → bool - Validates a cell link against test rules
-
map<
T> (T toElement(TestRule< dynamic, Cell> e)) → Iterable<T> -
The current elements of this iterable modified by
toElement
.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
reduce(
TestRule< dynamic, Cell> combine(TestRule<dynamic, Cell> value, TestRule<dynamic, Cell> element)) → TestRule<dynamic, Cell> -
Reduces a collection to a single value by iteratively combining elements
of the collection using the provided function.
inherited
-
signal(
Signal signal, {C? cell}) → bool - Validates a signal against test rules
-
singleWhere(
bool test(TestRule< dynamic, Cell> element), {TestRule<dynamic, Cell> orElse()?}) → TestRule<dynamic, Cell> -
The single element that satisfies
test
.inherited -
skip(
int count) → Iterable< TestRule< dynamic, Cell> > -
Creates an Iterable that provides all but the first
count
elements.inherited -
skipWhile(
bool test(TestRule< dynamic, Cell> value)) → Iterable<TestRule< dynamic, Cell> > -
Creates an
Iterable
that skips leading elements whiletest
is satisfied.inherited -
take(
int count) → Iterable< TestRule< dynamic, Cell> > -
Creates a lazy iterable of the
count
first elements of this iterable.inherited -
takeWhile(
bool test(TestRule< dynamic, Cell> value)) → Iterable<TestRule< dynamic, Cell> > -
Creates a lazy iterable of the leading elements satisfying
test
.inherited -
toList(
{bool growable = true}) → List< TestRule< dynamic, Cell> > -
Creates a List containing the elements of this Iterable.
inherited
-
toSet(
) → Set< TestRule< dynamic, Cell> > -
Creates a Set containing the same elements as this iterable.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
where(
bool test(TestRule< dynamic, Cell> element)) → Iterable<TestRule< dynamic, Cell> > -
Creates a new lazy Iterable with all elements that satisfy the
predicate
test
.inherited -
whereType<
T> () → Iterable< T> -
Creates a new lazy Iterable with all elements that have type
T
.inherited
Operators
-
operator +(
TestRule< dynamic, Cell> other) → TestObject<C> -
Combines this rule with another rule to create a composite validation.
inherited
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Constants
- passed → const TestObjectTrue
- Default test that always passes