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.
52 lines
1.2 KiB
52 lines
1.2 KiB
var assert = require('assert');
|
|
var rgbaRegex = require('..');
|
|
|
|
var rgbaStrings = [
|
|
'rgba(12,34,56, 1)',
|
|
'rgba(255, 255, 255, .9)',
|
|
'rgba(1, 1,1, 0.2)'
|
|
];
|
|
|
|
var inexactRgbaStrings = [
|
|
'rgba(,,,)',
|
|
'rGba(12,34,56,1)',
|
|
'rgba(12, 34, 200,1) ',
|
|
' rgba(12,34,56,1)',
|
|
'rgba(1,2,,)'
|
|
];
|
|
|
|
describe('rgba-regex', function() {
|
|
|
|
describe('exact: true', function() {
|
|
|
|
it('should return a regex that matches exact rgba strings', function() {
|
|
rgbaStrings.forEach(function(rgba) {
|
|
assert.ok(rgbaRegex({ exact: true }).test(rgba));
|
|
});
|
|
});
|
|
|
|
it('should return a regex that does not match invalid rgba strings', function() {
|
|
inexactRgbaStrings.forEach(function(invalidRgba) {
|
|
assert.ok(!rgbaRegex({ exact: true }).test(invalidRgba));
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('g', function() {
|
|
|
|
it('should match rgba strings', function() {
|
|
assert.deepEqual(
|
|
rgbaStrings.join('foobar').match(rgbaRegex()),
|
|
rgbaStrings
|
|
)
|
|
});
|
|
|
|
it('should not match non rgba strings', function() {
|
|
assert.deepEqual(
|
|
inexactRgbaStrings.join('foobar').match(rgbaRegex()),
|
|
['rGba(12,34,56,1)', 'rgba(12, 34, 200,1)', 'rgba(12,34,56,1)']
|
|
);
|
|
});
|
|
});
|
|
});
|