VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /usr/local/lib/node_modules/forever/node_modules/director/test/server/core/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/local/lib/node_modules/forever/node_modules/director/test/server/core/regifystring-test.js
var assert = require('assert'),
    vows = require('vows'),
    director = require('../../../lib/director');

var callback = function() {
  return true;
};

var testRoute = function(route, callback) {
  var router = new director.Router();
  router.on(route, callback);

  return function(value) {
    return router.dispatch('on', value);
  };
};

vows.describe('director/core/regifyString').addBatch({

  'When using "/home(.*)"': {
    topic: function() {
      return testRoute('/home(.*)', callback);
    },

    'Should match "/homepage"': function(result) {
      assert.isTrue(result('/homepage'));
    },

    'Should match "/home/page"': function(result) {
      assert.isTrue(result('/home/page'));
    },

    'Should not match "/foo-bar"': function(result) {
      assert.isFalse(result('/foo-bar'));
    }
  },

  'When using "/home.*"': {
    topic: function() {
      return testRoute('/home.*', callback);
    },

    'Should match "/homepage"': function(result) {
      assert.isTrue(result('/homepage'));
    },

    'Should match "/home/page"': function(result) {
      assert.isTrue(result('/home/page'));
    },

    'Should not match "/foo-bar"': function(result) {
      assert.isFalse(result('/foo-bar'));
    }
  },

  'When using "/home(page[0-9])*"': {
    topic: function() {
      return testRoute('/home(page[0-9])*', callback);
    },

    'Should match "/home"': function(result) {
      assert.isTrue(result('/home'));
    },

    'Should match "/homepage0", "/homepage1", etc.': function(result) {
      for (i = 0; i < 10; i++) {
        assert.isTrue(result('/homepage' + i));
      }
    },

    'Should not match "/home_page"': function(result) {
      assert.isFalse(result('/home_page'));
    },

    'Should not match "/home/page"': function(result) {
      assert.isFalse(result('/home/page'));
    }
  },

  'When using "/home*"': {
    topic: function() {
      return testRoute('/home*', callback);
    },

    'Should match "/homepage"': function(result) {
      assert.isTrue(result('/homepage'));
    },

    'Should match "/home_page"': function(result) {
      assert.isTrue(result('/home_page'));
    },

    'Should match "/home-page"': function(result) {
      assert.isTrue(result('/home-page'));
    },

    'Should not match "/home/page"': function(result) {
      assert.isFalse(result('/home/page'));
    }
  },
  'When using "/folder/::home"': {
    topic: function() {
      return testRoute('/folder/::home', callback);
    },
    'Should match "/folder/:home"': function(result) {
      assert.isTrue(result('/folder/:home'));
    },
    'Should not match "/folder/::home"': function(result) {
      assert.isFalse(result('/folder/::home'));
    },
    'Should not match "/folder/abc" (the catchall regexp)': function(result) {
      assert.isFalse(result('/folder/abc'));
    }
  }

}).export(module);

VaKeR 2022