string-to-regexp.spec.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import {expect} from 'chai';
  2. import {stringToRegexp} from './string-to-regexp.js';
  3. describe('stringToRegexp', function () {
  4. it('returns RegExp from a given string', function () {
  5. expect(stringToRegexp('value').test('value')).to.be.true;
  6. expect(stringToRegexp('val.+').test('value')).to.be.true;
  7. expect(stringToRegexp('%alu%').test('value')).to.be.true;
  8. expect(stringToRegexp('val*').test('value')).to.be.true;
  9. });
  10. it('uses case-sensitive mode by default', function () {
  11. expect(stringToRegexp('value').test('VALUE')).to.be.false;
  12. expect(stringToRegexp('val.+').test('VALUE')).to.be.false;
  13. expect(stringToRegexp('%alu%').test('VALUE')).to.be.false;
  14. expect(stringToRegexp('val*').test('VALUE')).to.be.false;
  15. });
  16. it('uses given flags in a new RegExp', function () {
  17. expect(stringToRegexp('value', 'i').test('VALUE')).to.be.true;
  18. expect(stringToRegexp('val.+', 'i').test('VALUE')).to.be.true;
  19. expect(stringToRegexp('%alu%', 'i').test('VALUE')).to.be.true;
  20. expect(stringToRegexp('val*', 'i').test('VALUE')).to.be.true;
  21. });
  22. it('returns RegExp from a given RegExp', function () {
  23. const regExp = new RegExp('value');
  24. expect(stringToRegexp(regExp).test('value')).to.be.true;
  25. });
  26. it('overrides flags of a given RegExp', function () {
  27. const regExp = new RegExp('value');
  28. expect(stringToRegexp(regExp, 'i').test('VALUE')).to.be.true;
  29. });
  30. });