https://github.com/sha-red/compass-mixins/tree/master/lib
extended with more sass frameworks and as django app.
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
109 lines
3.8 KiB
109 lines
3.8 KiB
var render = require('./helper/render'); |
|
var property = require('./helper/property'); |
|
|
|
describe("List Functions", function () { |
|
|
|
// This is verifying a function that's part of libsass that Compass also provided. |
|
it("should compact a list with false values", function (done) { |
|
render(property('compact(one,false,three)'), function(output, err) { |
|
expect(output).toBe(property('one,three')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should calculate a list length", function(done) { |
|
render('$list: one, two;' + property('-compass-list-size($list)'), function(output, err) { |
|
expect(output).toBe(property('2')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should calculate a list length with a space delimiter", function(done) { |
|
render('$list: one two;' + property('-compass-list-size($list)'), function(output, err) { |
|
expect(output).toBe(property('2')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should slice a list", function(done) { |
|
render('$list: one, two, three, four;' + property('-compass-slice($list, 2, 3)'), function(output, err) { |
|
expect(output).toBe(property('two,three')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should slice a list to the end", function(done) { |
|
render('$list: one, two, three, four;' + property('-compass-slice($list, 2)'), function(output, err) { |
|
expect(output).toBe(property('two,three,four')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should reject values from a list", function(done) { |
|
render('$list: one, two, three, four;' + property('reject($list, two, four)'), function(output, err) { |
|
expect(output).toBe(property('one,three')); |
|
done(); |
|
}); |
|
}); |
|
|
|
}); |
|
|
|
describe("Cross Browser Functions", function () { |
|
|
|
it("should prefix a property", function(done) { |
|
render(property('prefix(-webkit, x)'), function(output, err) { |
|
expect(output).toBe(property('-webkit-x')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should prefix a list of properties", function(done) { |
|
render(property('prefix(-webkit, x, y, z)'), function(output, err) { |
|
expect(output).toBe(property('-webkit-x,-webkit-y,-webkit-z')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should prefix a list of complex properties", function(done) { |
|
render(property('prefix(-webkit, linear-gradient(-45deg, rgb(0,0,0) 25%, transparent 75%, transparent), linear-gradient(-45deg, #000 25%, transparent 75%, transparent))'), function(output, err) { |
|
expect(output).toBe(property('-webkit-linear-gradient(-45deg, #000000 25%, transparent 75%, transparent),-webkit-linear-gradient(-45deg, #000 25%, transparent 75%, transparent)')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should prefix a list of properties as a single argument", function(done) { |
|
render('$list: x, y, z;' + property('prefix(-webkit, $list)'), function(output, err) { |
|
expect(output).toBe(property('-webkit-x,-webkit-y,-webkit-z')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should prefix a property with a browser function", function(done){ |
|
render(property('-webkit(x)'), function(output, err) { |
|
expect(output).toBe(property('-webkit-x')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should prefix a list of properties with a browser function", function(done) { |
|
render(property('-webkit(x, y, z)'), function(output, err) { |
|
expect(output).toBe(property('-webkit-x,-webkit-y,-webkit-z')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should prefix a list of properties with a browser function as a single argument", function(done) { |
|
render('$list: x, y, z;' + property('-webkit($list)'), function(output, err) { |
|
expect(output).toBe(property('-webkit-x,-webkit-y,-webkit-z')); |
|
done(); |
|
}); |
|
}); |
|
|
|
it("should not prefix numbers or colors", function(done){ |
|
render(property('prefixed(-ok, rgb(0,0,0))')+property('prefixed(-ok, url(1.gif))')+property('prefixed(-ok, ok)'), function(output, err) { |
|
expect(output).toBe(property('false')+property('false')+property('true')); |
|
done(); |
|
}); |
|
}); |
|
|
|
});
|
|
|