| Server IP : 68.183.124.220 / Your IP : 216.73.217.137 Web Server : Apache/2.4.18 (Ubuntu) System : Linux Sandbox-A 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : gavin ( 1000) PHP Version : 7.0.33-0ubuntu0.16.04.16 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_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /home/gavin/workspace/happymandarin/node_modules/regexp-clone/test/ |
Upload File : |
var assert = require('assert')
var clone = require('../');
describe('regexp-clone', function(){
function hasEqualSource (a, b) {
assert.ok(a !== b);
assert.equal(a.source, b.source);
}
function isInsensitive (a) {
assert.ok(a.ignoreCase);
}
function isGlobal (a) {
assert.ok(a.global);
}
function isMultiline (a) {
assert.ok(a.multiline);
}
function insensitiveFlag (a) {
var b = clone(a);
hasEqualSource(a, b);
isInsensitive(a);
isInsensitive(b);
}
function globalFlag (a) {
var b = clone(a);
hasEqualSource(a, b);
isGlobal(a);
isGlobal(b);
}
function multilineFlag (a) {
var b = clone(a);
hasEqualSource(a, b);
isMultiline(a);
isMultiline(b);
}
describe('literals', function(){
it('insensitive flag', function(done){
var a = /hello/i;
insensitiveFlag(a);
done();
})
it('global flag', function(done){
var a = /hello/g;
globalFlag(a);
done();
})
it('multiline flag', function(done){
var a = /hello/m;
multilineFlag(a);
done();
})
it('no flags', function(done){
var a = /hello/;
var b = clone(a);
hasEqualSource(a, b);
assert.ok(!a.insensitive);
assert.ok(!a.global);
assert.ok(!a.global);
done();
})
it('all flags', function(done){
var a = /hello/gim;
insensitiveFlag(a);
globalFlag(a);
multilineFlag(a);
done();
})
})
describe('instances', function(){
it('insensitive flag', function(done){
var a = new RegExp('hello', 'i');
insensitiveFlag(a);
done();
})
it('global flag', function(done){
var a = new RegExp('hello', 'g');
globalFlag(a);
done();
})
it('multiline flag', function(done){
var a = new RegExp('hello', 'm');
multilineFlag(a);
done();
})
it('no flags', function(done){
var a = new RegExp('hmm');
var b = clone(a);
hasEqualSource(a, b);
assert.ok(!a.insensitive);
assert.ok(!a.global);
assert.ok(!a.global);
done();
})
it('all flags', function(done){
var a = new RegExp('hello', 'gim');
insensitiveFlag(a);
globalFlag(a);
multilineFlag(a);
done();
})
})
})