Uname: Linux business55.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
Software: LiteSpeed
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.213.251.212
Your Ip: 3.144.108.220
User: allssztx (535) | Group: allssztx (533)
Safe Mode: OFF
Disable Function:
NONE

name : objects.js
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();
});
© 2025 GrazzMean-Shell