dynamic_extensions_test.dart
3.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
import 'package:flutter_test/flutter_test.dart';
import 'package:get/utils.dart';
class TestClass {
final name = "John";
}
class EmptyClass {}
void main() {
group('dynamic extensions', () {
test('var.isNullOrBlank on a string ', () {
var string = '';
expect('foo'.isNullOrBlank, equals(false));
expect(string.isNullOrBlank, equals(true));
});
test('var.isNullOrBlank on a int ', () {
expect(5.isNullOrBlank, equals(false));
expect(0.isNullOrBlank, equals(false));
});
test('var.isNullOrBlank on a double ', () {
expect(5.0.isNullOrBlank, equals(false));
expect(0.0.isNullOrBlank, equals(false));
});
test('var.isNullOrBlank on a list ', () {
var list = ['foo'];
expect([].isNullOrBlank, equals(true));
expect(['oi', 'foo'].isNullOrBlank, equals(false));
expect([{}, {}].isNullOrBlank, equals(false));
expect(list[0].isNullOrBlank, equals(false));
});
test('var.isNullOrBlank on a set ', () {
var halogens = {'fluorine', 'chlorine', 'bromine', 'iodine', 'astatine'};
expect(<String>{}.isNullOrBlank, equals(true));
expect({'foo', 'bar'}.isNullOrBlank, equals(false));
expect(halogens.isNullOrBlank, equals(false));
});
test('var.isNullOrBlank on a map ', () {
var map = {"foo": 'bar', "one": "um"};
expect({}.isNullOrBlank, equals(true));
expect({"other": "thing"}.isNullOrBlank, equals(false));
expect({'first': [], 'second': []}.isNullOrBlank, equals(false));
expect(map["foo"].isNullOrBlank, equals(false));
expect(map["other"].isNullOrBlank, equals(true));
});
test('var.isNullOrBlank on a function ', () {
someFunction({String string, int integer}) {
expect(string.isNullOrBlank, equals(false));
expect(integer.isNullOrBlank, equals(true));
}
someFunction(string: 'some value');
});
test('var.isNullOrBlank on a class ', () {
TestClass testClass;
expect(TestClass().isNullOrBlank, equals(false));
expect(testClass.isNullOrBlank, equals(true));
expect(EmptyClass().isNullOrBlank, equals(false));
});
});
test('String test', () {
var value = 'string';
var expected = '';
void logFunction(String prefix, dynamic value, String info,
{bool isError = false}) {
print('algo');
expected = '$prefix $value $info'.trim();
}
value.printError(logFunction: logFunction);
expect(expected, 'Error: String string');
});
test('Int test', () {
var value = 1;
var expected = '';
void logFunction(String prefix, dynamic value, String info,
{bool isError = false}) {
expected = '$prefix $value $info'.trim();
}
value.printError(logFunction: logFunction);
expect(expected, 'Error: int 1');
});
test('Double test', () {
var value = 1.0;
var expected = '';
void logFunction(String prefix, dynamic value, String info,
{bool isError = false}) {
expected = '$prefix $value $info'.trim();
}
value.printError(logFunction: logFunction);
expect(expected, 'Error: double 1.0');
});
}