123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- var wildcard = require('../'),
- test = require('tape'),
- testdata = {
- 'a.b.c' : {},
- 'a.b' : {},
- 'a' : {},
- 'a.b.d' : {}
- },
- testdataSep = {
- 'a:b:c' : {},
- 'a:b' : {},
- 'a' : {},
- 'a:b:d' : {}
- };
- test('object result matching tests', function(t) {
- t.test('should return 4 matches for a.*', function(t) {
- var matches = wildcard('a.*', testdata);
- t.plan(4);
- t.ok(matches['a.b.c']);
- t.ok(matches['a.b']);
- t.ok(matches['a']);
- t.ok(matches['a.b.d']);
- t.end();
- });
- t.test('should return 4 matches for a:*', function(t) {
- var matches = wildcard('a:*', testdataSep, ':');
- t.plan(4);
- t.ok(matches['a:b:c']);
- t.ok(matches['a:b']);
- t.ok(matches['a']);
- t.ok(matches['a:b:d']);
- t.end();
- });
- t.test('should return 3 matches for a.b.*', function(t) {
- var matches = wildcard('a.b.*', testdata);
- t.plan(4);
- t.ok(matches['a.b.c']);
- t.ok(matches['a.b']);
- t.notOk(matches['a']);
- t.ok(matches['a.b.d']);
- t.end();
- });
- t.test('should return 3 matches for a:b:*', function(t) {
- var matches = wildcard('a:b:*', testdataSep, ':');
- t.plan(4);
- t.ok(matches['a:b:c']);
- t.ok(matches['a:b']);
- t.notOk(matches['a']);
- t.ok(matches['a:b:d']);
- t.end();
- });
- t.test('should return 1 matches for a.*.c', function(t) {
- var matches = wildcard('a.*.c', testdata);
- t.plan(4);
- t.ok(matches['a.b.c']);
- t.notOk(matches['a.b']);
- t.notOk(matches['a']);
- t.notOk(matches['a.b.d']);
- t.end();
- });
- t.test('should return 1 matches for a:*:c', function(t) {
- var matches = wildcard('a:*:c', testdataSep, ':');
- t.plan(4);
- t.ok(matches['a:b:c']);
- t.notOk(matches['a:b']);
- t.notOk(matches['a']);
- t.notOk(matches['a:b:d']);
- t.end();
- });
- t.test('should return 0 matches for b.*.d', function(t) {
- var matches = wildcard('b.*.d', testdata);
- t.plan(4);
- t.notOk(matches['a.b.c']);
- t.notOk(matches['a.b']);
- t.notOk(matches['a']);
- t.notOk(matches['a.b.d']);
- t.end();
- });
- t.test('should return 0 matches for b:*:d', function(t) {
- var matches = wildcard('b:*:d', testdataSep, ':');
- t.plan(4);
- t.notOk(matches['a:b:c']);
- t.notOk(matches['a:b']);
- t.notOk(matches['a']);
- t.notOk(matches['a:b:d']);
- t.end();
- });
- t.end();
- });
|