index.js 936 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. 'use strict';
  2. var test = require('tape');
  3. var v = require('es-value-fixtures');
  4. var forEach = require('for-each');
  5. var inspect = require('object-inspect');
  6. var regexTester = require('../');
  7. test('regex tester', function (t) {
  8. t.equal(typeof regexTester, 'function', 'is a function');
  9. t.test('non-regexes', function (st) {
  10. forEach([].concat(
  11. // @ts-expect-error TS sucks with concat
  12. v.primitives,
  13. v.objects
  14. ), function (val) {
  15. st['throws'](
  16. function () { regexTester(val); },
  17. TypeError,
  18. inspect(val) + ' is not a regex'
  19. );
  20. });
  21. st.end();
  22. });
  23. t.test('regexes', function (st) {
  24. var tester = regexTester(/a/);
  25. st.equal(typeof tester, 'function', 'returns a function');
  26. st.equal(tester('a'), true, 'returns true for a match');
  27. st.equal(tester('b'), false, 'returns false for a non-match');
  28. st.equal(tester('a'), true, 'returns true for a match again');
  29. st.end();
  30. });
  31. t.end();
  32. });