|
|
- var assert = require('assert');
- var hslRegex = require('..');
-
- var hslStrings = [
- 'hsl(111, 12.343%, 0.9%)',
- 'hsl(123, 45%, 67%)',
- 'hsl(1, 1.111%, 1.1111%)',
- 'hsl(1, .111%, .1111%)'
- ];
-
- var inexactHslStrings = [
- 'hsl(,,,)',
- 'hsl(12,,)',
- 'hsl(1, 1.111%, 1.1111%) ',
- ' hSl(1, 1.111%, 1.1111%)',
- 'hsla(1, .111%, .1111%, .9)'
- ];
-
- describe('hsl-regex', function() {
-
- describe('exact: true', function() {
-
- it('should return a regex that matches exact hsl strings', function() {
- hslStrings.forEach(function(hsl) {
- assert.ok(hslRegex({ exact: true }).test(hsl));
- });
- });
-
- it('should return a regex that does not match invalid hsl strings', function() {
- inexactHslStrings.forEach(function(invalidHsl) {
- assert.ok(!hslRegex({ exact: true }).test(invalidHsl));
- });
- });
- });
-
- describe('g', function() {
-
- it('should match hsl strings', function() {
- assert.deepEqual(
- hslStrings.join('foobar').match(hslRegex()),
- hslStrings
- )
- });
-
- it('should not match non hsl strings', function() {
- assert.deepEqual(
- inexactHslStrings.join('foobar').match(hslRegex()),
- ['hsl(1, 1.111%, 1.1111%)', 'hSl(1, 1.111%, 1.1111%)']
- );
- });
- });
- });
|