flint-gs 2.0.9 → 2.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/flint/version.rb +1 -1
- data/stylesheets/flint/functions/helpers/_helpers.scss +14 -0
- data/stylesheets/flint/mixins/lib/_main.scss +39 -26
- data/tests/bootcamp/CHANGELOG.md +70 -0
- data/tests/bootcamp/CONTRIBUTING.md +72 -0
- data/tests/bootcamp/Gruntfile.coffee +34 -0
- data/tests/bootcamp/LICENSE.md +7 -0
- data/tests/bootcamp/README.md +52 -0
- data/tests/bootcamp/bower.json +15 -0
- data/tests/bootcamp/{_bootcamp.scss → dist/_bootcamp.scss} +0 -0
- data/tests/bootcamp/{bootcamp.coffee → dist/bootcamp.coffee} +0 -0
- data/tests/bootcamp/{core → dist/core}/functions/_actual.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/functions/_error.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/functions/_expect.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/functions/_not-to.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/functions/_should.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/functions/_to.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/mixins/_describe.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/mixins/_it.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/mixins/_runner.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/mixins/_should.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/mixins/_xdescribe.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/mixins/_xit.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/variables/_helpers.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/variables/_settings.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/variables/_should.scss +0 -0
- data/tests/bootcamp/{core → dist/core}/variables/_trackers.scss +0 -0
- data/tests/bootcamp/{lib → dist/lib}/_sassyjson.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/_be.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/_equal.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/lists/_be-empty.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/lists/_be-longer-than.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/lists/_be-shorter-than.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/lists/_contain.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/lists/_deep-contain.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/lists/_deep-equal.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/lists/_have-length-of.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/numbers/_be-close-to.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/numbers/_be-greater-than.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/numbers/_be-less-than.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/types/_be-falsy.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/types/_be-null.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/types/_be-truthy.scss +0 -0
- data/tests/bootcamp/{matchers → dist/matchers}/types/_have-type-of.scss +0 -0
- data/tests/bootcamp/{utils → dist/utils}/_contain.scss +0 -0
- data/tests/bootcamp/{utils → dist/utils}/_equal.scss +0 -0
- data/tests/bootcamp/{utils → dist/utils}/_list-join.scss +0 -0
- data/tests/bootcamp/{utils → dist/utils}/_power.scss +0 -0
- data/tests/bootcamp/package.json +63 -0
- data/tests/bootcamp/tasks/bootcamp.coffee +83 -0
- data/tests/bootcamp/test/core/functions/_actual.scss +10 -0
- data/tests/bootcamp/test/core/functions/_expect.scss +6 -0
- data/tests/bootcamp/test/core/functions/_not-to.scss +5 -0
- data/tests/bootcamp/test/core/functions/_should.scss +10 -0
- data/tests/bootcamp/test/core/functions/_to.scss +5 -0
- data/tests/bootcamp/test/core/mixins/_describe.scss +11 -0
- data/tests/bootcamp/test/core/mixins/_it.scss +5 -0
- data/tests/bootcamp/test/core/mixins/_should.scss +5 -0
- data/tests/bootcamp/test/core/mixins/_xdescribe.scss +28 -0
- data/tests/bootcamp/test/core/mixins/_xit.scss +12 -0
- data/tests/bootcamp/test/matchers/_be.scss +90 -0
- data/tests/bootcamp/test/matchers/_equal.scss +33 -0
- data/tests/bootcamp/test/matchers/lists/_be-empty.scss +12 -0
- data/tests/bootcamp/test/matchers/lists/_be-longer-than.scss +29 -0
- data/tests/bootcamp/test/matchers/lists/_be-shorter-than.scss +29 -0
- data/tests/bootcamp/test/matchers/lists/_contain.scss +39 -0
- data/tests/bootcamp/test/matchers/lists/_deep-contain.scss +51 -0
- data/tests/bootcamp/test/matchers/lists/_deep-equal.scss +151 -0
- data/tests/bootcamp/test/matchers/lists/_have-length-of.scss +31 -0
- data/tests/bootcamp/test/matchers/numbers/_be-close-to.scss +24 -0
- data/tests/bootcamp/test/matchers/numbers/_be-greater-than.scss +16 -0
- data/tests/bootcamp/test/matchers/numbers/_be-less-than.scss +16 -0
- data/tests/bootcamp/test/matchers/types/_be-falsy.scss +14 -0
- data/tests/bootcamp/test/matchers/types/_be-null.scss +13 -0
- data/tests/bootcamp/test/matchers/types/_be-truthy.scss +13 -0
- data/tests/bootcamp/test/matchers/types/_have-type-of.scss +17 -0
- data/tests/bootcamp/test/specs.scss +45 -0
- data/tests/bootcamp/test/utils/_contain.scss +41 -0
- data/tests/bootcamp/test/utils/_equal.scss +79 -0
- data/tests/bootcamp/test/utils/_list-join.scss +39 -0
- data/tests/bootcamp/test/utils/_power.scss +13 -0
- data/tests/input/functions/helpers/_helpers.scss +21 -0
- data/tests/input/output.scss +8 -7
- data/tests/output/output.css +4 -4
- metadata +158 -80
@@ -0,0 +1,52 @@
|
|
1
|
+
Bootcamp [![NPM version](https://badge.fury.io/js/bootcamp.png)](http://badge.fury.io/js/bootcamp) [![Build Status](https://travis-ci.org/thejameskyle/bootcamp.png?branch=master)](https://travis-ci.org/thejameskyle/bootcamp) [![Dependency Status](https://david-dm.org/thejameskyle/bootcamp.png)](https://david-dm.org/thejameskyle/bootcamp) [![devDependency Status](https://david-dm.org/thejameskyle/bootcamp/dev-status.png)](https://david-dm.org/thejameskyle/bootcamp#info=devDependencies)
|
2
|
+
========
|
3
|
+
|
4
|
+
Jasmine-style BDD testing written in Sass for Sass.
|
5
|
+
|
6
|
+
#### [Read Introduction >](https://github.com/thejameskyle/bootcamp/wiki/Introduction)
|
7
|
+
|
8
|
+
#### [Read Setup >](https://github.com/thejameskyle/bootcamp/wiki/Setup)
|
9
|
+
|
10
|
+
#### [See Example Test Suite >](https://github.com/thejameskyle/bootcamp/wiki/Example-Test-Suite)
|
11
|
+
|
12
|
+
#### [Authoring Matchers >](https://github.com/thejameskyle/bootcamp/wiki/Authoring-Matchers)
|
13
|
+
|
14
|
+
## Install
|
15
|
+
|
16
|
+
In the future, Bootcamp will hopefully be available in more ways, for now you can either clone the repo yourself, install via [bower](http://bower.io/), or install via [npm](https://npmjs.org/) as a grunt plugin. If you would like, please help create a [yeoman generator](http://yeoman.io/), a [ruby gem](http://rubygems.org/), or any other package manager you'd like out there.
|
17
|
+
|
18
|
+
#### Git
|
19
|
+
|
20
|
+
```
|
21
|
+
git clone git@github.com:thejameskyle/bootcamp.git && cd bootcamp
|
22
|
+
```
|
23
|
+
|
24
|
+
#### Bower
|
25
|
+
|
26
|
+
```
|
27
|
+
bower install bootcamp --save-dev
|
28
|
+
```
|
29
|
+
|
30
|
+
#### npm
|
31
|
+
|
32
|
+
```
|
33
|
+
npm install bootcamp --save-dev
|
34
|
+
```
|
35
|
+
|
36
|
+
## Support
|
37
|
+
|
38
|
+
Have a question or need help? Tweet [@thejameskyle](https://twitter.com/thejameskyle).
|
39
|
+
|
40
|
+
## Contributing
|
41
|
+
|
42
|
+
As an open-source project, contributions are more than welcome, they're extremely helpful and actively encouraged. If you see any room for improvement, open an [issue](https://github.com/thejameskyle/bootcamp/issues) or submit a [pull request](https://github.com/thejameskyle/bootcamp/pulls). Also make sure to take a look at the [contributing doc](CONTRIBUTING.md).
|
43
|
+
|
44
|
+
## License
|
45
|
+
|
46
|
+
This project is provided under the terms of the [MIT License](LICENSE.md).
|
47
|
+
|
48
|
+
---
|
49
|
+
|
50
|
+
Authored by **James Kyle** · [Github](https://github.com/thejameskyle) · [Twitter](https://twitter.com/thejameskyle) · [CodePen](https://codepen.com/thejameskyle)
|
51
|
+
|
52
|
+
[Built Equal >](http://www.hrc.org/donate) · [Made in Boston >](http://bostonbuilt.org/)
|
@@ -0,0 +1,15 @@
|
|
1
|
+
{
|
2
|
+
"name": "bootcamp",
|
3
|
+
"version": "1.1.7",
|
4
|
+
"homepage": "http://github.com/thejameskyle/bootcamp",
|
5
|
+
"main": "dist/bootcamp.scss",
|
6
|
+
"ignore": [
|
7
|
+
"test",
|
8
|
+
".editorconfig",
|
9
|
+
".gitattributes",
|
10
|
+
".gitignore",
|
11
|
+
".jshintrc",
|
12
|
+
".travis.yml",
|
13
|
+
"Gruntfile.coffee"
|
14
|
+
]
|
15
|
+
}
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -0,0 +1,63 @@
|
|
1
|
+
{
|
2
|
+
"name": "bootcamp",
|
3
|
+
"version": "1.1.7",
|
4
|
+
"description": "A pure Sass testing framework in the style of Jasmine",
|
5
|
+
"keywords": [
|
6
|
+
"bootcamp",
|
7
|
+
"sass",
|
8
|
+
"scss",
|
9
|
+
"test",
|
10
|
+
"jasmine",
|
11
|
+
"gruntplugin",
|
12
|
+
"bower"
|
13
|
+
],
|
14
|
+
"homepage": "https://github.com/thejameskyle/bootcamp",
|
15
|
+
"bugs": "https://github.com/thejameskyle/bootcamp/issues",
|
16
|
+
"author": {
|
17
|
+
"name": "James Kyle",
|
18
|
+
"email": "me@thejameskyle.com",
|
19
|
+
"url": "https://github.com/thejameskyle"
|
20
|
+
},
|
21
|
+
"contributors": [
|
22
|
+
{
|
23
|
+
"name": "James Kyle",
|
24
|
+
"email": "me@thejameskyle.com",
|
25
|
+
"url": "https://github.com/thejameskyle"
|
26
|
+
}
|
27
|
+
],
|
28
|
+
"main": "dist/bootcamp.coffee",
|
29
|
+
"repository": {
|
30
|
+
"type": "git",
|
31
|
+
"url": "git://github.com/thejameskyle/bootcamp.git"
|
32
|
+
},
|
33
|
+
"scripts": {
|
34
|
+
"test": "grunt test"
|
35
|
+
},
|
36
|
+
"files": [
|
37
|
+
"dist/",
|
38
|
+
"tasks/"
|
39
|
+
],
|
40
|
+
"bin": {},
|
41
|
+
"dependencies": {
|
42
|
+
"colors": "^0.6.2"
|
43
|
+
},
|
44
|
+
"devDependencies": {
|
45
|
+
"grunt": "^0.4.5",
|
46
|
+
"grunt-contrib-sass": "^0.8.0",
|
47
|
+
"grunt-contrib-watch": "^0.6.1"
|
48
|
+
},
|
49
|
+
"peerDependencies": {
|
50
|
+
"grunt": "^0.4.5",
|
51
|
+
"grunt-contrib-sass": "^0.8.0"
|
52
|
+
},
|
53
|
+
"engines": {
|
54
|
+
"node": ">=0.8.0",
|
55
|
+
"npm": ">=1.2.10"
|
56
|
+
},
|
57
|
+
"licenses": [
|
58
|
+
{
|
59
|
+
"type": "MIT",
|
60
|
+
"url": "https://github.com/thejameskyle/bootcamp/blob/master/LICENSE.md"
|
61
|
+
}
|
62
|
+
]
|
63
|
+
}
|
@@ -0,0 +1,83 @@
|
|
1
|
+
'use strict'
|
2
|
+
|
3
|
+
bootcamp = require '../dist/bootcamp.coffee'
|
4
|
+
colors = require 'colors'
|
5
|
+
|
6
|
+
module.exports = (grunt) ->
|
7
|
+
|
8
|
+
grunt.registerMultiTask 'bootcamp', 'Jasmine-style BDD testing written in Sass for Sass.', ->
|
9
|
+
|
10
|
+
class bootcamp.gruntTask
|
11
|
+
constructor: (@tests) ->
|
12
|
+
if @tests.incomplete
|
13
|
+
@isIncomplete()
|
14
|
+
else if @tests.success and @tests.test == 0
|
15
|
+
@isEmpty
|
16
|
+
else if @tests.success
|
17
|
+
@hasPassed()
|
18
|
+
else
|
19
|
+
@hasFailed()
|
20
|
+
|
21
|
+
log: (string) -> grunt.log.writeln string
|
22
|
+
pass: (string) -> grunt.log.success string
|
23
|
+
warn: (string) -> grunt.log.warn string
|
24
|
+
fail: (string) -> grunt.fail.warn string
|
25
|
+
|
26
|
+
logStats: ->
|
27
|
+
stats = @tests.stats + ''
|
28
|
+
stats = stats.replace /✔/g, '✔'.green
|
29
|
+
stats = stats.replace /✗/g, '✗'.red
|
30
|
+
@log stats
|
31
|
+
|
32
|
+
logSpecs: ->
|
33
|
+
specs = @tests.specs + ''
|
34
|
+
specs = specs.replace /✔/g, '✔'.green
|
35
|
+
specs = specs.replace /✗/g, '✗'.red
|
36
|
+
specs = specs.replace /Test Passed/g, 'Test passed'.green
|
37
|
+
specs = specs.replace /Test Failed/g, 'Test failed'.red
|
38
|
+
specs = specs.replace /!(.*)!(.*)\./g, '$1:$2.'.yellow
|
39
|
+
specs = specs.trim()
|
40
|
+
if specs != ''
|
41
|
+
@log '\n' + specs + '\n'
|
42
|
+
|
43
|
+
logErrors: ->
|
44
|
+
if !@tests.errors then return null
|
45
|
+
@log ''
|
46
|
+
|
47
|
+
for error in @tests.errors
|
48
|
+
error = error + ''
|
49
|
+
error = error.replace /!(.*)!(.*)/g, '$1:'.red + '$2'.yellow
|
50
|
+
@log error.yellow
|
51
|
+
|
52
|
+
isIncomplete: ->
|
53
|
+
@fail @tests.error.yellow
|
54
|
+
return true
|
55
|
+
|
56
|
+
isEmpty: ->
|
57
|
+
@logStats()
|
58
|
+
@warn 'Your tests probably haven\'t been properly set up.\nTake a look at https://github.com/thejameskyle/bootcamp/wiki/setup'
|
59
|
+
return true
|
60
|
+
|
61
|
+
hasFailed: ->
|
62
|
+
@logSpecs()
|
63
|
+
@logStats()
|
64
|
+
@fail @tests.details
|
65
|
+
@logErrors()
|
66
|
+
return false
|
67
|
+
|
68
|
+
hasPassed: ->
|
69
|
+
@logSpecs()
|
70
|
+
@logStats()
|
71
|
+
@pass @tests.details
|
72
|
+
@logErrors()
|
73
|
+
return true
|
74
|
+
|
75
|
+
@files.forEach (f) ->
|
76
|
+
f.src.filter (filepath) ->
|
77
|
+
|
78
|
+
unless grunt.file.exists filepath
|
79
|
+
grunt.log.warn 'Source file "' + filepath + '" not found.'
|
80
|
+
return false
|
81
|
+
|
82
|
+
else
|
83
|
+
new bootcamp.gruntTask bootcamp.test filepath
|
@@ -0,0 +1,10 @@
|
|
1
|
+
@include describe("Actual") {
|
2
|
+
@include it("should return the actual value") {
|
3
|
+
$expect: expect(1);
|
4
|
+
@include should( expect( actual() ), to( be( 1 )));
|
5
|
+
|
6
|
+
$expect: expect( false );
|
7
|
+
$expect: expect("hello");
|
8
|
+
@include should( expect( actual() ), to( be( "hello" )));
|
9
|
+
}
|
10
|
+
}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
@include describe("Should") {
|
2
|
+
@include it("should set the text and value") {
|
3
|
+
$when: should("be the correct", "value", true);
|
4
|
+
$text: $bc-expect-text;
|
5
|
+
$value: $bc-expect;
|
6
|
+
|
7
|
+
@include should( expect( $text ), to( be("be the correct")));
|
8
|
+
@include should( expect( $value ), to( be("value")));
|
9
|
+
}
|
10
|
+
}
|
@@ -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,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
|
+
|