Failed Assertion Error in Flutter Unit Test

Viewed 1794

Unit code, that I want to test:

imports ...
class TextHolder extends StatelessWidget{
  const TextHolder({
    Key key,
    @required this.text
    }) : assert (text != null),
          super(key: Key);
  @override
  Widget build(BuildContext context) {
    return Text(text);
  }
}

And when I write my test code:

imports ...
void main(){
test('Assert Null check', (){
   // tried this
    expect(TextHolder(text: null), throwsAssertionError);
   // also this 
    final Matcher throwsAssertionError = throwsA(isA<AssertionError>());
    expect(TextHolder(text: null), throwsAssertionError);
});
}

Not able to perform a Failed assertion test using flutter_test package. When I run the test code, I get an error something like this in console: Failed assertion: line 8 pos 16: 'text != null': is not true.

What I am looking for:

  1. My test case should fail, if someone removes the @required annotation from my unit code.
  2. My test case should fail, if someone sends null value to text property
1 Answers
test('Assert Null check', (){
    expect(() { TextHolder(text: null) }, throwsAssertionError);
});
Related