flint-gs 2.1.2 → 2.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/lib/flint/version.rb +1 -1
  3. data/stylesheets/flint/mixins/lib/_calculate.scss +1 -1
  4. data/tests/bootcamp/CHANGELOG.md +70 -0
  5. data/tests/bootcamp/CONTRIBUTING.md +72 -0
  6. data/tests/bootcamp/Gruntfile.coffee +34 -0
  7. data/tests/bootcamp/LICENSE.md +7 -0
  8. data/tests/bootcamp/README.md +52 -0
  9. data/tests/bootcamp/bower.json +15 -0
  10. data/tests/bootcamp/dist/_bootcamp.scss +46 -0
  11. data/tests/bootcamp/dist/bootcamp.coffee +101 -0
  12. data/tests/bootcamp/dist/core/functions/_actual.scss +3 -0
  13. data/tests/bootcamp/dist/core/functions/_error.scss +29 -0
  14. data/tests/bootcamp/dist/core/functions/_expect.scss +6 -0
  15. data/tests/bootcamp/dist/core/functions/_not-to.scss +5 -0
  16. data/tests/bootcamp/dist/core/functions/_should.scss +6 -0
  17. data/tests/bootcamp/dist/core/functions/_to.scss +5 -0
  18. data/tests/bootcamp/dist/core/mixins/_describe.scss +31 -0
  19. data/tests/bootcamp/dist/core/mixins/_it.scss +31 -0
  20. data/tests/bootcamp/dist/core/mixins/_runner.scss +28 -0
  21. data/tests/bootcamp/dist/core/mixins/_should.scss +46 -0
  22. data/tests/bootcamp/dist/core/mixins/_xdescribe.scss +9 -0
  23. data/tests/bootcamp/dist/core/mixins/_xit.scss +9 -0
  24. data/tests/bootcamp/dist/core/variables/_helpers.scss +5 -0
  25. data/tests/bootcamp/dist/core/variables/_settings.scss +2 -0
  26. data/tests/bootcamp/dist/core/variables/_should.scss +6 -0
  27. data/tests/bootcamp/dist/core/variables/_trackers.scss +6 -0
  28. data/tests/bootcamp/dist/lib/_sassyjson.scss +1075 -0
  29. data/tests/bootcamp/dist/matchers/_be.scss +3 -0
  30. data/tests/bootcamp/dist/matchers/_equal.scss +3 -0
  31. data/tests/bootcamp/dist/matchers/lists/_be-empty.scss +3 -0
  32. data/tests/bootcamp/dist/matchers/lists/_be-longer-than.scss +3 -0
  33. data/tests/bootcamp/dist/matchers/lists/_be-shorter-than.scss +3 -0
  34. data/tests/bootcamp/dist/matchers/lists/_contain.scss +3 -0
  35. data/tests/bootcamp/dist/matchers/lists/_deep-contain.scss +3 -0
  36. data/tests/bootcamp/dist/matchers/lists/_deep-equal.scss +47 -0
  37. data/tests/bootcamp/dist/matchers/lists/_have-length-of.scss +3 -0
  38. data/tests/bootcamp/dist/matchers/numbers/_be-close-to.scss +12 -0
  39. data/tests/bootcamp/dist/matchers/numbers/_be-greater-than.scss +12 -0
  40. data/tests/bootcamp/dist/matchers/numbers/_be-less-than.scss +12 -0
  41. data/tests/bootcamp/dist/matchers/types/_be-falsy.scss +3 -0
  42. data/tests/bootcamp/dist/matchers/types/_be-null.scss +3 -0
  43. data/tests/bootcamp/dist/matchers/types/_be-truthy.scss +3 -0
  44. data/tests/bootcamp/dist/matchers/types/_have-type-of.scss +3 -0
  45. data/tests/bootcamp/dist/utils/_contain.scss +15 -0
  46. data/tests/bootcamp/dist/utils/_equal.scss +23 -0
  47. data/tests/bootcamp/dist/utils/_list-join.scss +35 -0
  48. data/tests/bootcamp/dist/utils/_power.scss +15 -0
  49. data/tests/bootcamp/package.json +63 -0
  50. data/tests/bootcamp/tasks/bootcamp.coffee +83 -0
  51. data/tests/bootcamp/test/core/functions/_actual.scss +10 -0
  52. data/tests/bootcamp/test/core/functions/_expect.scss +6 -0
  53. data/tests/bootcamp/test/core/functions/_not-to.scss +5 -0
  54. data/tests/bootcamp/test/core/functions/_should.scss +10 -0
  55. data/tests/bootcamp/test/core/functions/_to.scss +5 -0
  56. data/tests/bootcamp/test/core/mixins/_describe.scss +11 -0
  57. data/tests/bootcamp/test/core/mixins/_it.scss +5 -0
  58. data/tests/bootcamp/test/core/mixins/_should.scss +5 -0
  59. data/tests/bootcamp/test/core/mixins/_xdescribe.scss +28 -0
  60. data/tests/bootcamp/test/core/mixins/_xit.scss +12 -0
  61. data/tests/bootcamp/test/matchers/_be.scss +90 -0
  62. data/tests/bootcamp/test/matchers/_equal.scss +33 -0
  63. data/tests/bootcamp/test/matchers/lists/_be-empty.scss +12 -0
  64. data/tests/bootcamp/test/matchers/lists/_be-longer-than.scss +29 -0
  65. data/tests/bootcamp/test/matchers/lists/_be-shorter-than.scss +29 -0
  66. data/tests/bootcamp/test/matchers/lists/_contain.scss +39 -0
  67. data/tests/bootcamp/test/matchers/lists/_deep-contain.scss +51 -0
  68. data/tests/bootcamp/test/matchers/lists/_deep-equal.scss +151 -0
  69. data/tests/bootcamp/test/matchers/lists/_have-length-of.scss +31 -0
  70. data/tests/bootcamp/test/matchers/numbers/_be-close-to.scss +24 -0
  71. data/tests/bootcamp/test/matchers/numbers/_be-greater-than.scss +16 -0
  72. data/tests/bootcamp/test/matchers/numbers/_be-less-than.scss +16 -0
  73. data/tests/bootcamp/test/matchers/types/_be-falsy.scss +14 -0
  74. data/tests/bootcamp/test/matchers/types/_be-null.scss +13 -0
  75. data/tests/bootcamp/test/matchers/types/_be-truthy.scss +13 -0
  76. data/tests/bootcamp/test/matchers/types/_have-type-of.scss +17 -0
  77. data/tests/bootcamp/test/specs.scss +45 -0
  78. data/tests/bootcamp/test/utils/_contain.scss +41 -0
  79. data/tests/bootcamp/test/utils/_equal.scss +79 -0
  80. data/tests/bootcamp/test/utils/_list-join.scss +39 -0
  81. data/tests/bootcamp/test/utils/_power.scss +13 -0
  82. metadata +159 -2
@@ -0,0 +1,5 @@
1
+ @include describe("It") {
2
+ @include it("should create a new test") {
3
+ @include should(null, true);
4
+ }
5
+ }
@@ -0,0 +1,5 @@
1
+ @include describe("Should") {
2
+ @include it("should run a test") {
3
+ @include should(null, true);
4
+ }
5
+ }
@@ -0,0 +1,28 @@
1
+ $test: true;
2
+
3
+ @include xdescribe("xDescribe") {
4
+ @include it("shouldnt run") {
5
+ $test: false;
6
+ @include should(null, $test);
7
+ }
8
+
9
+ @include describe("normal submodule") {
10
+ @include it("shouldnt run sub-modules") {
11
+ $test: false;
12
+ @include should(null, $test);
13
+ }
14
+ }
15
+ }
16
+
17
+ @include describe("xDescribe") {
18
+ @include xdescribe("Submodule") {
19
+ @include it("shouldnt run sub-modules") {
20
+ $test: false;
21
+ @include should(null, $test);
22
+ }
23
+ }
24
+
25
+ @include it("should run after xdescribed sub-modules") {
26
+ @include should(null, $test);
27
+ }
28
+ }
@@ -0,0 +1,12 @@
1
+ $test: true;
2
+
3
+ @include describe("xIt") {
4
+ @include xit("shouldnt run a test") {
5
+ $test: false;
6
+ @include should(null, $test);
7
+ }
8
+
9
+ @include it("should run a later test") {
10
+ @include should(null, $test);
11
+ }
12
+ }
@@ -0,0 +1,90 @@
1
+ @include describe("be") {
2
+ @include it("should expect to be something") {
3
+ @include should( expect( 1 ), to( be( 1 )));
4
+ @include should( expect( a ), to( be( a )));
5
+ @include should( expect( true ), to( be( true )));
6
+ @include should( expect( false ), to( be( false )));
7
+ @include should( expect( null ), to( be( null )));
8
+ }
9
+
10
+ @include it("should expect not to be something") {
11
+ @include should( expect( 1 ), not-to( be( 2 )));
12
+ @include should( expect( a ), not-to( be( b )));
13
+ @include should( expect( true ), not-to( be( false )));
14
+ @include should( expect( false ), not-to( be( true )));
15
+ @include should( expect( null ), not-to( be( valid )));
16
+ }
17
+
18
+ @include it("should expect two equal values to be equal") {
19
+ @include should( expect( 1 ), to( be( 1 )));
20
+ @include should( expect( -1 ), to( be( -1 )));
21
+ @include should( expect( a ), to( be( a )));
22
+ @include should( expect( false ), to( be( false )));
23
+ }
24
+
25
+ @include it("should expect two non-equal values not to be equal") {
26
+ @include should( expect( 1 ), not-to( be( 2 )));
27
+ @include should( expect( -1 ), not-to( be( 1 )));
28
+ @include should( expect( a ), not-to( be( b )));
29
+ @include should( expect( false ), not-to( be( true )));
30
+ }
31
+
32
+ @include it("should expect two equal lists to be equal") {
33
+ @include should(expect( (1, 2, 3) ), to( be( (1, 2, 3) )));
34
+ @include should(expect( ("a", "b", "c") ), to( be( ("a", "b", "c") )));
35
+ @include should(expect( (true, false, true) ), to( be( (true, false, true) )));
36
+ }
37
+
38
+ @include it("should expect two unequal lists not to be equal") {
39
+ @include should(expect( (3, 2, 1) ), not-to( be( (1, 2, 3) )));
40
+ @include should(expect( ("c", "b", "a") ), not-to( be( ("a", "b", "c") )));
41
+ @include should(expect( (false, true, false) ), not-to( be( (true, false, true) )));
42
+ }
43
+
44
+ @include it("should expect two equal lists with different seperators to be equal") {
45
+ @include should(expect( 1 2 3 ), to( be( (1, 2, 3) )));
46
+ @include should(expect( "a" "b" "c" ), to( be( ("a", "b", "c") )));
47
+ @include should(expect( true false true ), to( be( (true, false, true) )));
48
+ }
49
+
50
+ @include it("should expect two equal lists built up programmatically to be equal") {
51
+ $numbers: 1, 2, 3;
52
+ $strings: "a", "b", "c";
53
+ $booleans: true, false, true;
54
+
55
+ $numbers-out: ();
56
+ $strings-out: ();
57
+ $booleans-out: ();
58
+
59
+ @for $i from 1 through 3 {
60
+ $numbers-out: append($numbers-out, nth($numbers, $i), comma);
61
+ $strings-out: append($strings-out, nth($strings, $i), comma);
62
+ $booleans-out: append($booleans-out, nth($booleans, $i), comma);
63
+ }
64
+
65
+ @include should(expect($numbers-out ), to( be( (1, 2, 3) )));
66
+ @include should(expect($strings-out ), to( be( ("a", "b", "c") )));
67
+ @include should(expect($booleans-out), to( be( (true, false, true) )));
68
+ }
69
+
70
+ @include it("should expect two unequal lists built up programmatically not to be equal") {
71
+ $numbers: 1, 2, 3;
72
+ $strings: "a", "b", "c";
73
+ $booleans: true, false, true;
74
+
75
+ $numbers-out: ();
76
+ $strings-out: ();
77
+ $booleans-out: ();
78
+
79
+ @for $i from 1 through 3 {
80
+ $numbers-out: append($numbers-out, nth($numbers, $i), comma);
81
+ $strings-out: append($strings-out, nth($strings, $i), comma);
82
+ $booleans-out: append($booleans-out, nth($booleans, $i), comma);
83
+ }
84
+
85
+ @include should(expect($numbers-out ), not-to( be( (3, 2, 1) )));
86
+ @include should(expect($strings-out ), not-to( be( ("c", "b", "a") )));
87
+ @include should(expect($booleans-out), not-to( be( (false, true, false) )));
88
+ }
89
+ }
90
+
@@ -0,0 +1,33 @@
1
+ @include describe("Equal") {
2
+ @include it("should expect two equal values to be equal") {
3
+ @include should( expect( 1 ), to( equal( 1 )));
4
+ @include should( expect( -1 ), to( equal( -1 )));
5
+ @include should( expect( a ), to( equal( a )));
6
+ @include should( expect( false ), to( equal( false )));
7
+ }
8
+
9
+ @include it("should expect two non-equal values not to be equal") {
10
+ @include should( expect( 1 ), not-to( equal( 2 )));
11
+ @include should( expect( -1 ), not-to( equal( 1 )));
12
+ @include should( expect( a ), not-to( equal( b )));
13
+ @include should( expect( false ), not-to( equal( true )));
14
+ }
15
+
16
+ @include it("should expect two equal lists to be equal") {
17
+ @include should(expect( (1, 2, 3) ), to( equal( (1, 2, 3) )));
18
+ @include should(expect( ("a", "b", "c") ), to( equal( ("a", "b", "c") )));
19
+ @include should(expect( (true, false, true) ), to( equal( (true, false, true) )));
20
+ }
21
+
22
+ @include it("should expect two unequal lists not to be equal") {
23
+ @include should(expect( (3, 2, 1) ), not-to( equal( (1, 2, 3) )));
24
+ @include should(expect( ("c", "b", "a") ), not-to( equal( ("a", "b", "c") )));
25
+ @include should(expect( (false, true, false) ), not-to( equal( (true, false, true) )));
26
+ }
27
+
28
+ @include it("should expect two equal lists with different seperators not to be equal") {
29
+ @include should(expect( 1 2 3 ), not-to( equal( (1, 2, 3) )));
30
+ @include should(expect( "a" "b" "c" ), not-to( equal( ("a", "b", "c") )));
31
+ @include should(expect( true false true ), not-to( equal( (true, false, true) )));
32
+ }
33
+ }
@@ -0,0 +1,12 @@
1
+ @include describe("Be empty") {
2
+ @include it("should expect lists without content to be empty") {
3
+ @include should( expect( () ), to( be-empty()));
4
+ }
5
+
6
+ @include it("should expect lists with content to not be empty") {
7
+ @include should( expect( 1 ), not-to( be-empty()));
8
+ @include should( expect( (1, 2, 3) ), not-to( be-empty()));
9
+ @include should( expect( null ), not-to( be-empty()));
10
+ @include should( expect( "string" ), not-to( be-empty()));
11
+ }
12
+ }
@@ -0,0 +1,29 @@
1
+ @include describe("Be longer than") {
2
+ @include it("should expect longer lists to be longer") {
3
+ @include should( expect( (1, 2, 3) ), to( be-longer-than( 2)));
4
+ @include should( expect( (1) ), to( be-longer-than( 0)));
5
+ @include should( expect( () ), to( be-longer-than(-1)));
6
+ }
7
+
8
+ @include it("should expect shorter lists not to be longer") {
9
+ @include should( expect( (1, 2, 3) ), not-to( be-longer-than(4)));
10
+ @include should( expect( (1) ), not-to( be-longer-than(2)));
11
+ @include should( expect( () ), not-to( be-longer-than(1)));
12
+ }
13
+
14
+ @include it("should expect equal length lists not to be longer") {
15
+ @include should( expect( (1, 2, 3) ), not-to( be-longer-than(3)));
16
+ @include should( expect( (1) ), not-to( be-longer-than(1)));
17
+ @include should( expect( () ), not-to( be-longer-than(0)));
18
+ }
19
+
20
+ @include it("should expect other values to be longer than 0") {
21
+ @include should( expect( null ), to( be-longer-than(0)));
22
+ @include should( expect( "string" ), to( be-longer-than(0)));
23
+ }
24
+
25
+ @include it("should expect other values to be shorter than 1") {
26
+ @include should( expect( null ), not-to( be-longer-than(1)));
27
+ @include should( expect( "string" ), not-to( be-longer-than(1)));
28
+ }
29
+ }
@@ -0,0 +1,29 @@
1
+ @include describe("Be shorter than") {
2
+ @include it("should expect shorter lists to be shorter") {
3
+ @include should( expect( (1, 2, 3) ), to( be-shorter-than(4)));
4
+ @include should( expect( (1) ), to( be-shorter-than(2)));
5
+ @include should( expect( () ), to( be-shorter-than(1)));
6
+ }
7
+
8
+ @include it("should expect longer lists not to be shorter") {
9
+ @include should( expect( (1, 2, 3) ), not-to( be-shorter-than( 2)));
10
+ @include should( expect( (1) ), not-to( be-shorter-than( 0)));
11
+ @include should( expect( () ), not-to( be-shorter-than(-1)));
12
+ }
13
+
14
+ @include it("should expect equal length lists not to be shorter") {
15
+ @include should( expect( (1, 2, 3) ), not-to( be-shorter-than(3)));
16
+ @include should( expect( (1) ), not-to( be-shorter-than(1)));
17
+ @include should( expect( () ), not-to( be-shorter-than(0)));
18
+ }
19
+
20
+ @include it("should expect other values to be shorter than 2") {
21
+ @include should( expect( null ), to( be-shorter-than(2)));
22
+ @include should( expect( "string" ), to( be-shorter-than(2)));
23
+ }
24
+
25
+ @include it("should expect other values to be shorter than 0") {
26
+ @include should( expect( null ), not-to( be-shorter-than(0)));
27
+ @include should( expect( "string" ), not-to( be-shorter-than(0)));
28
+ }
29
+ }
@@ -0,0 +1,39 @@
1
+ @include describe("Contain") {
2
+ @include it("should expect list with value to contain") {
3
+ $list-1: true, true, true;
4
+ $list-2: "foo", "bar", "baz";
5
+ $list-3: 100, 0.2, 12;
6
+ $list-4: false, null, false;
7
+
8
+ @include should( expect( $list-1 ), to( contain( true )));
9
+ @include should( expect( $list-2 ), to( contain( "bar" )));
10
+ @include should( expect( $list-3 ), to( contain( 100 )));
11
+ @include should( expect( $list-4 ), to( contain( null )));
12
+ }
13
+
14
+ @include it("should expect list without value not to contain") {
15
+ $list-1: true, true, true;
16
+ $list-2: "foo", "bar", "baz";
17
+ $list-3: 100, 0.2, 12;
18
+ $list-4: false, null, false;
19
+
20
+ @include should( expect( $list-1 ), not-to( contain( false )));
21
+ @include should( expect( $list-2 ), not-to( contain( "fiz" )));
22
+ @include should( expect( $list-3 ), not-to( contain( 300 )));
23
+ @include should( expect( $list-4 ), not-to( contain( "sod" )));
24
+ }
25
+
26
+ @include it("should expect item with value to contain") {
27
+ @include should( expect( true ), to( contain( true )));
28
+ @include should( expect( "bar" ), to( contain( "bar" )));
29
+ @include should( expect( 100 ), to( contain( 100 )));
30
+ @include should( expect( null ), to( contain( null )));
31
+ }
32
+
33
+ @include it("should expect item without value not to contain") {
34
+ @include should( expect( true ), not-to( contain( false )));
35
+ @include should( expect( "foo" ), not-to( contain( "fiz" )));
36
+ @include should( expect( 200 ), not-to( contain( 300 )));
37
+ @include should( expect( null ), not-to( contain( "sod" )));
38
+ }
39
+ }
@@ -0,0 +1,51 @@
1
+ @include describe("Deep Contain") {
2
+ @include it("should expect deep list with value to contain") {
3
+ $list-1: false, (true, true);
4
+ $list-2: "foo", ("bar", "baz");
5
+ $list-3: 100, (0.2, 12);
6
+ $list-4: false, (null, false);
7
+
8
+ @include should( expect( $list-1 ), to( deep-contain( true )));
9
+ @include should( expect( $list-2 ), to( deep-contain( "bar" )));
10
+ @include should( expect( $list-3 ), to( deep-contain( 0.2 )));
11
+ @include should( expect( $list-4 ), to( deep-contain( null )));
12
+ }
13
+
14
+ @include it("should expect deep list without value not to contain") {
15
+ $list-1: true, (true, true);
16
+ $list-2: "foo", ("bar", "baz");
17
+ $list-3: 100, (0.2, 12);
18
+ $list-4: false, (null, false);
19
+
20
+ @include should( expect( $list-1 ), not-to( deep-contain( false )));
21
+ @include should( expect( $list-2 ), not-to( deep-contain( "fiz" )));
22
+ @include should( expect( $list-3 ), not-to( deep-contain( 300 )));
23
+ @include should( expect( $list-4 ), not-to( deep-contain( "sod" )));
24
+ }
25
+
26
+ @include it("should expect non-deep list with value to contain") {
27
+ $list-1: false, true, true;
28
+ $list-2: "foo", "bar", "baz";
29
+ $list-3: 100, 0.2, 12;
30
+ $list-4: false, null, false;
31
+
32
+ @include should( expect( $list-1 ), to( deep-contain( true )));
33
+ @include should( expect( $list-2 ), to( deep-contain( "bar" )));
34
+ @include should( expect( $list-3 ), to( deep-contain( 0.2 )));
35
+ @include should( expect( $list-4 ), to( deep-contain( null )));
36
+ }
37
+
38
+ @include it("should expect item with value to contain") {
39
+ @include should( expect( true ), to( deep-contain( true )));
40
+ @include should( expect( "bar" ), to( deep-contain( "bar" )));
41
+ @include should( expect( 100 ), to( deep-contain( 100 )));
42
+ @include should( expect( null ), to( deep-contain( null )));
43
+ }
44
+
45
+ @include it("should expect item without value not to contain") {
46
+ @include should( expect( true ), not-to( deep-contain( false )));
47
+ @include should( expect( "foo" ), not-to( deep-contain( "fiz" )));
48
+ @include should( expect( 200 ), not-to( deep-contain( 300 )));
49
+ @include should( expect( null ), not-to( deep-contain( "sod" )));
50
+ }
51
+ }
@@ -0,0 +1,151 @@
1
+ @include describe("Deep Equal") {
2
+ @include it("should expect an equal deep list to be deep equal") {
3
+ $list-1: false, (true, true);
4
+ $list-2: "foo", ("bar", "baz");
5
+ $list-3: 100, (0.2, 12);
6
+ $list-4: null, (null, false);
7
+
8
+ @include should( expect( $list-1 ), to( deep-equal( $list-1 )));
9
+ @include should( expect( $list-2 ), to( deep-equal( $list-2 )));
10
+ @include should( expect( $list-3 ), to( deep-equal( $list-3 )));
11
+ @include should( expect( $list-4 ), to( deep-equal( $list-4 )));
12
+ }
13
+
14
+ @include it("should expect an longer top level deep list not to be deep equal") {
15
+ $list-1a: true, (true, (true));
16
+ $list-1b: true, true, (true, (true));
17
+
18
+ $list-2a: "foo", ("bar", ("baz"));
19
+ $list-2b: "foo", "cha", ("bar", ("baz"));
20
+
21
+ $list-3a: 100, (0.2, (12));
22
+ $list-3b: 100, 200, (0.2, (12));
23
+
24
+ $list-4a: null, (null, false);
25
+ $list-4b: null, false, (null, false);
26
+
27
+ @include should( expect( $list-1a ), not-to( deep-equal( $list-1b )));
28
+ @include should( expect( $list-2a ), not-to( deep-equal( $list-2b )));
29
+ @include should( expect( $list-3a ), not-to( deep-equal( $list-3b )));
30
+ @include should( expect( $list-4a ), not-to( deep-equal( $list-4b )));
31
+ }
32
+
33
+ @include it("should expect an longer inner level deep list not to be deep equal") {
34
+ $list-1a: true, ( true, (true));
35
+ $list-1b: true, (true, true, (true));
36
+
37
+ $list-2a: "foo", ( "bar", ("baz"));
38
+ $list-2b: "foo", ("cha", "bar", ("baz"));
39
+
40
+ $list-3a: 100, ( 0.2, 12);
41
+ $list-3b: 100, (200, 0.2, 12);
42
+
43
+ $list-4a: null, ( null, false);
44
+ $list-4b: null, (false, null, false);
45
+
46
+ @include should( expect( $list-1a ), not-to( deep-equal( $list-1b )));
47
+ @include should( expect( $list-2a ), not-to( deep-equal( $list-2b )));
48
+ @include should( expect( $list-3a ), not-to( deep-equal( $list-3b )));
49
+ @include should( expect( $list-4a ), not-to( deep-equal( $list-4b )));
50
+ }
51
+
52
+ @include it("should expect an deep list with a different top level value not to be deep equal") {
53
+ $list-1a: true, (true, (true));
54
+ $list-1b: false, (true, (true));
55
+
56
+ $list-2a: "foo", ("bar", ("baz"));
57
+ $list-2b: "bar", ("bar", ("baz"));
58
+
59
+ $list-3a: 100, (0.2, (12));
60
+ $list-3b: 200, (0.2, (12));
61
+
62
+ $list-4a: null, (null, false);
63
+ $list-4b: false, (null, false);
64
+
65
+ @include should( expect( $list-1a ), not-to( deep-equal( $list-1b )));
66
+ @include should( expect( $list-2a ), not-to( deep-equal( $list-2b )));
67
+ @include should( expect( $list-3a ), not-to( deep-equal( $list-3b )));
68
+ @include should( expect( $list-4a ), not-to( deep-equal( $list-4b )));
69
+ }
70
+
71
+ @include it("should expect an deep list with a different inner level value not to be deep equal") {
72
+ $list-1a: true, (false, (true));
73
+ $list-1b: true, (true, (true));
74
+
75
+ $list-2a: "foo", ("bar", ("baz"));
76
+ $list-2b: "foo", ("foo", ("baz"));
77
+
78
+ $list-3a: 100, (0.2, (12));
79
+ $list-3b: 100, (200, (12));
80
+
81
+ $list-4a: null, (false, (false));
82
+ $list-4b: null, (null, (false));
83
+
84
+ @include should( expect( $list-1a ), not-to( deep-equal( $list-1b )));
85
+ @include should( expect( $list-2a ), not-to( deep-equal( $list-2b )));
86
+ @include should( expect( $list-3a ), not-to( deep-equal( $list-3b )));
87
+ @include should( expect( $list-4a ), not-to( deep-equal( $list-4b )));
88
+ }
89
+
90
+ @include it("should expect an equal non-deep list to be deep equal") {
91
+ $list-1a: true, false, true;
92
+ $list-1b: true, false, true;
93
+
94
+ $list-2a: "foo", "bar", "baz";
95
+ $list-2b: "foo", "bar", "baz";
96
+
97
+ $list-3a: 100, 0.2, 12;
98
+ $list-3b: 100, 0.2, 12;
99
+
100
+ $list-4a: false, null, false;
101
+ $list-4b: false, null, false;
102
+
103
+ @include should( expect( $list-1a ), to( deep-equal( $list-1b )));
104
+ @include should( expect( $list-2a ), to( deep-equal( $list-2b )));
105
+ @include should( expect( $list-3a ), to( deep-equal( $list-3b )));
106
+ @include should( expect( $list-4a ), to( deep-equal( $list-4b )));
107
+ }
108
+
109
+ @include it("should expect an unequal non-deep list to be deep equal") {
110
+ $list-1a: true, false, true;
111
+ $list-1b: true, true, true;
112
+
113
+ $list-2a: "foo", "bar", "baz";
114
+ $list-2b: "foo", "cha", "baz";
115
+
116
+ $list-3a: 100, 0.2, 12;
117
+ $list-3b: 200, 0.2, 12;
118
+
119
+ $list-4a: false, null, false;
120
+ $list-4b: false, false, false;
121
+
122
+ @include should( expect( $list-1a ), not-to( deep-equal( $list-1b )));
123
+ @include should( expect( $list-2a ), not-to( deep-equal( $list-2b )));
124
+ @include should( expect( $list-3a ), not-to( deep-equal( $list-3b )));
125
+ @include should( expect( $list-4a ), not-to( deep-equal( $list-4b )));
126
+ }
127
+
128
+ @include it("should expect other equal values to be deep equal") {
129
+ @include should( expect( true ), to( deep-equal( true )));
130
+ @include should( expect( "foo" ), to( deep-equal( "foo" )));
131
+ @include should( expect( 1 ), to( deep-equal( 1 )));
132
+ @include should( expect( null ), to( deep-equal( null )));
133
+ @include should( expect( false ), to( deep-equal( false )));
134
+ }
135
+
136
+ @include it("should expect other unequal values to be deep equal") {
137
+ @include should( expect( true ), not-to( deep-equal( false )));
138
+ @include should( expect( "foo" ), not-to( deep-equal( "bar" )));
139
+ @include should( expect( 1 ), not-to( deep-equal( 2 )));
140
+ @include should( expect( null ), not-to( deep-equal( false )));
141
+ @include should( expect( false ), not-to( deep-equal( null )));
142
+ }
143
+
144
+ @include it("should expect empty lists to be deep equal") {
145
+ @include should( expect( () ), to( deep-equal( () )));
146
+ @include should( expect( () ), to( deep-equal( () )));
147
+ @include should( expect( () ), to( deep-equal( () )));
148
+ @include should( expect( () ), to( deep-equal( () )));
149
+ @include should( expect( () ), to( deep-equal( () )));
150
+ }
151
+ }