|
|
- var assert = require('assert');
- var rgbRegex = require('..');
-
- var rgbStrings = [
- 'rgb(12,34,56)',
- 'rgb(255, 255, 255)',
- 'rgb(1, 1,1)'
- ];
-
- var inexactRgbStrings = [
- 'rgb(,,)',
- 'rGb(12,34,56)',
- 'rgb(12, 34, 200) ',
- ' rgb(12,34,56)',
- 'rgb(1,2,)'
- ];
-
- describe('rgb-regex', function() {
-
- describe('exact: true', function() {
-
- it('should return a regex that matches exact rgb strings', function() {
- rgbStrings.forEach(function(rgb) {
- assert.ok(rgbRegex({ exact: true }).test(rgb));
- });
- });
-
- it('should return a regex that does not match invalid rgb strings', function() {
- inexactRgbStrings.forEach(function(invalidRgb) {
- assert.ok(!rgbRegex({ exact: true }).test(invalidRgb));
- });
- });
- });
-
- describe('g', function() {
-
- it('should match rgb strings', function() {
- assert.deepEqual(
- rgbStrings.join('foobar').match(rgbRegex()),
- rgbStrings
- )
- });
-
- it('should not match non rgb strings', function() {
- assert.deepEqual(
- inexactRgbStrings.join('foobar').match(rgbRegex()),
- ['rGb(12,34,56)', 'rgb(12, 34, 200)', 'rgb(12,34,56)']
- );
- });
- });
- });
|