Comparing version 0.1.3 to 0.1.4
@@ -1,5 +0,4 @@ | ||
(function(global) { | ||
(function (global) { | ||
function CBuffer() { | ||
var i = 0; | ||
// handle cases where "new" keyword wasn't used | ||
@@ -39,13 +38,14 @@ if (!(this instanceof CBuffer)) { | ||
// pop last item | ||
pop : function() { | ||
pop : function () { | ||
var item; | ||
if (this.size === 0) return; | ||
item = this.data[this.end]; | ||
delete this.data[(this.size + this.start - 1) % this.length]; | ||
// no need to delete item, since resize will make it inaccessible to | ||
// CBuffer methods | ||
this.end = (this.end - 1 + this.length) % this.length; | ||
this.size--; | ||
this.end = (this.end - 1 + this.length) % this.length; | ||
return item; | ||
}, | ||
// push item to the end | ||
push : function() { | ||
push : function () { | ||
var i = 0; | ||
@@ -77,3 +77,3 @@ // check if overflow is set, and if data is about to be overwritten | ||
// reverse order of the buffer | ||
reverse : function() { | ||
reverse : function () { | ||
var i = 0, | ||
@@ -89,3 +89,3 @@ tmp; | ||
// rotate buffer to the left by cntr, or by 1 | ||
rotateLeft : function(cntr) { | ||
rotateLeft : function (cntr) { | ||
if (!cntr) cntr = 1; | ||
@@ -98,3 +98,3 @@ while (--cntr >= 0) { | ||
// rotate buffer to the right by cntr, or by 1 | ||
rotateRight : function(cntr) { | ||
rotateRight : function (cntr) { | ||
if (!cntr) cntr = 1; | ||
@@ -107,11 +107,9 @@ while (--cntr >= 0) { | ||
// remove and return first item | ||
shift : function() { | ||
shift : function () { | ||
var item; | ||
// check if there are any items in CBuffer | ||
// check if there are any items in CBuff | ||
if (this.size === 0) return; | ||
// store first item for return | ||
item = this.data[this.start]; | ||
// delete first item from memory | ||
delete this.data[this.start]; | ||
// recalculate start of CBuff | ||
// recalculate start of CBuffer | ||
this.start = (this.start + 1) % this.length; | ||
@@ -123,3 +121,3 @@ // decrement size | ||
// sort items | ||
sort : function(fn) { | ||
sort : function (fn) { | ||
if (fn) this.data.sort(fn); | ||
@@ -132,3 +130,3 @@ else this.data.sort(); | ||
// add item to beginning of buffer | ||
unshift : function() { | ||
unshift : function () { | ||
var i = 0; | ||
@@ -160,3 +158,3 @@ // check if overflow is set, and if data is about to be overwritten | ||
// return index of first matched element | ||
indexOf : function(arg, idx) { | ||
indexOf : function (arg, idx) { | ||
if (!idx) idx = 0; | ||
@@ -169,3 +167,3 @@ for (; idx < this.size; idx++) { | ||
// return last index of the first match | ||
lastIndexOf : function(arg, idx) { | ||
lastIndexOf : function (arg, idx) { | ||
if (!idx) idx = this.size - 1; | ||
@@ -180,14 +178,7 @@ for (; idx >= 0; idx--) { | ||
// check every item in the array against a test | ||
every : function(callback, context) { | ||
every : function (callback, context) { | ||
var i = 0; | ||
if (context) { | ||
for (; i < this.size; i++) { | ||
if (!callback.call(context, this.data[(this.start + i) % this.length], i, this)) | ||
return false; | ||
} | ||
} else { | ||
for (; i < this.size; i++) { | ||
if (!callback(this.data[(this.start + i) % this.length], i, this)) | ||
return false; | ||
} | ||
for (; i < this.size; i++) { | ||
if (!callback.call(context, this.data[(this.start + i) % this.length], i, this)) | ||
return false; | ||
} | ||
@@ -197,28 +188,14 @@ return true; | ||
// loop through each item in buffer | ||
forEach : function(callback, context) { | ||
forEach : function (callback, context) { | ||
var i = 0; | ||
// check if context was passed | ||
if (context) { | ||
for (; i < this.size; i++) { | ||
callback.call(context, this.data[(this.start + i) % this.length], i, this); | ||
} | ||
} else { | ||
for (; i < this.size; i++) { | ||
callback(this.data[(this.start + i) % this.length], i, this); | ||
} | ||
for (; i < this.size; i++) { | ||
callback.call(context, this.data[(this.start + i) % this.length], i, this); | ||
} | ||
}, | ||
// check items agains test until one returns true | ||
some : function(callback, context) { | ||
some : function (callback, context) { | ||
var i = 0; | ||
if (context) { | ||
for (; i < this.size; i++) { | ||
if (callback.call(context, this.data[(this.start + i) % this.length], i, this)) | ||
return true; | ||
} | ||
} else { | ||
for (; i < this.size; i++) { | ||
if (callback(this.data[(this.start + i) % this.length], i, this)) | ||
return true; | ||
} | ||
for (; i < this.size; i++) { | ||
if (callback.call(context, this.data[(this.start + i) % this.length], i, this)) | ||
return true; | ||
} | ||
@@ -232,3 +209,3 @@ return false; | ||
// need to be overwritten, run `.fill(null).empty()` | ||
empty : function() { | ||
empty : function () { | ||
var i = 0; | ||
@@ -240,3 +217,3 @@ this.size = this.start = 0; | ||
// fill all places with passed value or function | ||
fill : function(arg) { | ||
fill : function (arg) { | ||
var i = 0; | ||
@@ -254,19 +231,19 @@ if (typeof arg === 'function') { | ||
// return first item in buffer | ||
first : function() { | ||
first : function () { | ||
return this.data[this.start]; | ||
}, | ||
// return last item in buffer | ||
last : function() { | ||
last : function () { | ||
return this.data[this.end]; | ||
}, | ||
// return specific index in buffer | ||
get : function(arg) { | ||
get : function (arg) { | ||
return this.data[(this.start + arg) % this.length]; | ||
}, | ||
// set value at specified index | ||
set : function(idx, arg) { | ||
set : function (idx, arg) { | ||
return this.data[(this.start + idx) % this.length] = arg; | ||
}, | ||
// return clean array of values | ||
toArray : function() { | ||
toArray : function () { | ||
var narr = new Array(this.size), | ||
@@ -273,0 +250,0 @@ i = 0; |
{ | ||
"name" : "CBuffer", | ||
"version" : "0.1.3", | ||
"version" : "0.1.4", | ||
"description" : "Circular Buffer JavaScript implementation", | ||
@@ -19,6 +19,9 @@ "homepage" : "https://github.com/trevnorris/cbuffer", | ||
}, | ||
"scripts" : { | ||
"test" : "node ./node_modules/.bin/vows" | ||
}, | ||
"repository" : { | ||
"type" : "git", | ||
"url" : "https://github.com/trevnoris/cbuffer.git" | ||
"url" : "https://github.com/trevnorris/cbuffer.git" | ||
} | ||
} |
@@ -0,15 +1,20 @@ | ||
const SIZE = 1e5; | ||
var CBuffer = require('../../cbuffer'), | ||
test = require('../test'), | ||
cb = new CBuffer(1e5), | ||
arr = new Array(); | ||
test = require('../test'), | ||
cb = new CBuffer(SIZE), | ||
arr = []; | ||
test('push 1e5 - Array ', function() { | ||
var i = 1e5; | ||
arr.length = 0; | ||
while(arr.push(i), --i >= 0); | ||
test('push 1e5 - CBuffer', function () { | ||
cb.empty(); | ||
}, function () { | ||
var i = SIZE; | ||
while (cb.push(i * 0.1), --i >= 0); | ||
}); | ||
test('push 1e5 - CBuffer', function() { | ||
var i = 1e5; | ||
while(cb.push(i), --i >= 0); | ||
test('push 1e5 - Array ', function () { | ||
arr.length = 0; | ||
}, function () { | ||
var i = SIZE; | ||
while (arr.push(i * 0.1), --i >= 0); | ||
}); |
@@ -0,19 +1,20 @@ | ||
const SIZE = 1e5; | ||
var CBuffer = require('../../cbuffer'), | ||
test = require('../test'), | ||
cb = new CBuffer(), | ||
arr = new Array(), | ||
i; | ||
test = require('../test'), | ||
cb = new CBuffer(SIZE), | ||
arr = [], | ||
i; | ||
for (i = 1e5; i > 0; i--) | ||
for (i = SIZE; i > 0; i--) { | ||
arr.push(i); | ||
cb.push(i); | ||
} | ||
for (i = 1e5; i > 0; i--) | ||
arr.push(i); | ||
test('reverse - CBuffer', function() { | ||
test('reverse - CBuffer', function () { | ||
cb.reverse(); | ||
}); | ||
test('reverse - Array ', function() { | ||
test('reverse - Array ', function () { | ||
arr.reverse(); | ||
}); |
@@ -0,16 +1,20 @@ | ||
const SIZE = 1e5; | ||
var CBuffer = require('../../cbuffer'), | ||
test = require('../test'), | ||
cb = new CBuffer(1e5), | ||
arr = new Array(); | ||
test = require('../test'), | ||
cb = new CBuffer(SIZE), | ||
arr = new Array(); | ||
test('unshift 1e5 - CBuffer', function() { | ||
var i = 1e5; | ||
test('unshift 1e5 - CBuffer', function () { | ||
cb.empty(); | ||
}, function () { | ||
var i = SIZE; | ||
while(cb.unshift(i), --i >= 0); | ||
}); | ||
test('unshift 1e5 - Array ', function() { | ||
var i = 1e5; | ||
test('unshift 1e5 - Array ', function () { | ||
arr.length = 0; | ||
}, function () { | ||
var i = SIZE; | ||
while(arr.unshift(i), --i >= 0); | ||
}); |
@@ -1,19 +0,18 @@ | ||
module.exports = function test(name, fn) { | ||
module.exports = function test(name, setup, fn) { | ||
var itter = 1; | ||
if (!fn) { | ||
fn = setup; | ||
setup = false; | ||
} | ||
// first generate reliable number of itterations for test | ||
(function genItter() { | ||
var i = itter, | ||
iniT = -Date.now(); | ||
while(fn(), --i >= 0); | ||
iniT += Date.now(); | ||
if (iniT > 100) | ||
setTimeout(function() { | ||
runTest(itter, name, fn); | ||
var iniT = exec(fn, setup, itter); | ||
if (iniT > 300) { | ||
setTimeout(function () { | ||
runTest(name, itter, fn, setup); | ||
}, 100); | ||
else { | ||
if (iniT < 10) | ||
itter *= 10; | ||
else | ||
itter *= 2; | ||
setTimeout(genItter, 10); | ||
} else { | ||
if (iniT < 10) itter *= 10; | ||
else itter *= 2; | ||
setTimeout(genItter, 30); | ||
} | ||
@@ -23,9 +22,18 @@ }()); | ||
function runTest(name, itter, fn, setup) { | ||
var iniT = exec(fn, setup, itter); | ||
console.log(name, ':', (itter / iniT * 1000).toFixed(2).replace(/(\d)(?=(\d\d\d)+(?!\d))/g, '$1,'), 'op/s'); | ||
}; | ||
function runTest(itter, name, fn) { | ||
var i = itter, | ||
function exec(fn, setup, i) { | ||
var cum = 0, | ||
iniT; | ||
while (--i >= 0) { | ||
if (setup) setup(); | ||
iniT = -Date.now(); | ||
while (fn(), --i >= 0); | ||
iniT += Date.now(); | ||
console.log(name, ':', (itter / iniT * 1000).toFixed(2).replace(/(\d)(?=(\d\d\d)+(?!\d))/g, '$1,'), 'op/s'); | ||
}; | ||
fn(); | ||
iniT += Date.now(); | ||
cum += iniT; | ||
} | ||
return cum; | ||
} |
@@ -1,17 +0,17 @@ | ||
var vows = require( 'vows' ), | ||
assert = require('assert' ) | ||
suite = vows.describe( 'CBuffer' ); | ||
var vows = require('vows'), | ||
assert = require('assert') | ||
suite = vows.describe('CBuffer'); | ||
require( '../env' ); | ||
require('../env'); | ||
suite.addBatch({ | ||
'indexOf' : { | ||
'topic' : function() { | ||
'topic' : function () { | ||
return CBuffer; | ||
}, | ||
'find item' : function( CBuffer ) { | ||
assert.equal( CBuffer( 1, 2, 3 ).indexOf( 2 ), 1 ); | ||
assert.equal( CBuffer( 'a', 'b', 'c' ).indexOf( 'c' ), 2 ); | ||
assert.equal( CBuffer( 1, 2, 3 ).indexOf( '1' ), -1 ); | ||
assert.equal( CBuffer( 1, 2, 3 ).indexOf( 4 ), -1 ); | ||
'find item' : function (CBuffer) { | ||
assert.equal(CBuffer(1, 2, 3).indexOf(2), 1); | ||
assert.equal(CBuffer('a', 'b', 'c').indexOf('c'), 2); | ||
assert.equal(CBuffer(1, 2, 3).indexOf('1'), -1); | ||
assert.equal(CBuffer(1, 2, 3).indexOf(4), -1); | ||
} | ||
@@ -21,2 +21,2 @@ } | ||
suite.export( module ); | ||
suite.export(module); |
@@ -1,39 +0,39 @@ | ||
var vows = require( 'vows' ), | ||
assert = require('assert' ) | ||
suite = vows.describe( 'CBuffer' ), | ||
und = undefined; | ||
var vows = require('vows'), | ||
assert = require('assert') | ||
suite = vows.describe('CBuffer'), | ||
und = undefined; | ||
require( '../env' ); | ||
require('../env'); | ||
suite.addBatch({ | ||
'CBuffer' : { | ||
'topic' : function() { | ||
'topic' : function () { | ||
return CBuffer; | ||
}, | ||
'construction' : function( CBuffer ) { | ||
assert.isTrue(( new CBuffer( 1 )) instanceof CBuffer ); | ||
assert.isTrue( CBuffer( 1 ) instanceof CBuffer ); | ||
assert.isTrue(( new CBuffer( 1, 2, 3 )) instanceof CBuffer ); | ||
assert.isTrue( CBuffer( 1, 2, 3 ) instanceof CBuffer ); | ||
assert.isTrue( CBuffer( 1 ).constructor === CBuffer ); | ||
'construction' : function (CBuffer) { | ||
assert.isTrue((new CBuffer(1)) instanceof CBuffer); | ||
assert.isTrue(CBuffer(1) instanceof CBuffer); | ||
assert.isTrue((new CBuffer(1, 2, 3)) instanceof CBuffer); | ||
assert.isTrue(CBuffer(1, 2, 3) instanceof CBuffer); | ||
assert.isTrue(CBuffer(1).constructor === CBuffer); | ||
}, | ||
'data' : function( CBuffer ) { | ||
assert.deepEqual( CBuffer( 3 ).data, [,,]); | ||
assert.deepEqual( CBuffer( 1, 2, 3 ).data, [ 1, 2, 3 ]); | ||
'data' : function (CBuffer) { | ||
assert.deepEqual(CBuffer(3).data, [,,]); | ||
assert.deepEqual(CBuffer(1, 2, 3).data, [1, 2, 3]); | ||
}, | ||
'end' : function( CBuffer ) { | ||
assert.equal( CBuffer( 3 ).end, 2 ); | ||
assert.equal( CBuffer( 1, 2, 3 ).end, 2 ); | ||
'end' : function (CBuffer) { | ||
assert.equal(CBuffer(3).end, 2); | ||
assert.equal(CBuffer(1, 2, 3).end, 2); | ||
}, | ||
'length' : function( CBuffer ) { | ||
assert.equal( CBuffer( 3 ).length, 3 ); | ||
assert.equal( CBuffer( 1, 2, 3 ).length, 3 ); | ||
'length' : function (CBuffer) { | ||
assert.equal(CBuffer(3).length, 3); | ||
assert.equal(CBuffer(1, 2, 3).length, 3); | ||
}, | ||
'size' : function( CBuffer ) { | ||
assert.equal( CBuffer( 3 ).size, 0 ); | ||
assert.equal( CBuffer( 1, 2, 3 ).size, 3 ); | ||
'size' : function (CBuffer) { | ||
assert.equal(CBuffer(3).size, 0); | ||
assert.equal(CBuffer(1, 2, 3).size, 3); | ||
}, | ||
'start' : function( CBuffer ) { | ||
assert.equal( CBuffer( 3 ).start, 0 ); | ||
assert.equal( CBuffer( 1, 2, 3 ).start, 0 ); | ||
'start' : function (CBuffer) { | ||
assert.equal(CBuffer(3).start, 0); | ||
assert.equal(CBuffer(1, 2, 3).start, 0); | ||
} | ||
@@ -43,2 +43,2 @@ } | ||
suite.export( module ); | ||
suite.export(module); |
@@ -1,1 +0,1 @@ | ||
CBuffer = require( '../cbuffer' ); | ||
CBuffer = require('../cbuffer'); |
@@ -1,32 +0,32 @@ | ||
var vows = require( 'vows' ), | ||
assert = require('assert' ) | ||
suite = vows.describe( 'CBuffer' ); | ||
var vows = require('vows'), | ||
assert = require('assert') | ||
suite = vows.describe('CBuffer'); | ||
require( '../env' ); | ||
require('../env'); | ||
suite.addBatch({ | ||
'pop' : { | ||
'topic' : function() { | ||
'topic' : function () { | ||
return CBuffer; | ||
}, | ||
'pop items' : function( CBuffer ) { | ||
'pop items' : function (CBuffer) { | ||
var tmp; | ||
tmp = CBuffer( 1, 2, 3 ); | ||
assert.equal( tmp.pop(), 3 ); | ||
tmp = CBuffer(1, 2, 3); | ||
assert.equal(tmp.pop(), 3); | ||
tmp = CBuffer( 1, 2, 3 ); | ||
tmp = CBuffer(1, 2, 3); | ||
tmp.pop(); | ||
assert.deepEqual( tmp.data, [ 1, 2, ]); | ||
assert.deepEqual(tmp.toArray(), [1, 2]); | ||
tmp = CBuffer( 3 ); | ||
assert.isUndefined( tmp.pop() ); | ||
tmp = CBuffer(3); | ||
assert.isUndefined(tmp.pop()); | ||
}, | ||
'pop properties' : function( CBuffer ) { | ||
'pop properties' : function (CBuffer) { | ||
var tmp; | ||
tmp = CBuffer( 1, 2, 3 ); | ||
tmp = CBuffer(1, 2, 3); | ||
tmp.pop(); | ||
assert.equal( tmp.end, 1 ); | ||
assert.equal( tmp.size, 2 ); | ||
assert.equal(tmp.end, 1); | ||
assert.equal(tmp.size, 2); | ||
} | ||
@@ -36,2 +36,2 @@ } | ||
suite.export( module ); | ||
suite.export(module); |
@@ -1,29 +0,29 @@ | ||
var vows = require( 'vows' ), | ||
assert = require('assert' ) | ||
suite = vows.describe( 'CBuffer' ); | ||
var vows = require('vows'), | ||
assert = require('assert') | ||
suite = vows.describe('CBuffer'); | ||
require( '../env' ); | ||
require('../env'); | ||
suite.addBatch({ | ||
'push' : { | ||
'topic' : function() { | ||
'topic' : function () { | ||
return CBuffer; | ||
}, | ||
'push items' : function( CBuffer ) { | ||
'push items' : function (CBuffer) { | ||
var tmp; | ||
tmp = CBuffer( 3 ); | ||
tmp.push( 1, 2, 3 ); | ||
assert.deepEqual( tmp.data, [ 1, 2, 3 ]); | ||
tmp.push( 4 ); | ||
assert.deepEqual( tmp.data, [ 4, 2, 3 ]); | ||
tmp = CBuffer(3); | ||
tmp.push(1, 2, 3); | ||
assert.deepEqual(tmp.data, [1, 2, 3]); | ||
tmp.push(4); | ||
assert.deepEqual(tmp.data, [4, 2, 3]); | ||
}, | ||
'push properties' : function( CBuffer ) { | ||
'push properties' : function (CBuffer) { | ||
var tmp; | ||
tmp = CBuffer( 3 ); | ||
tmp.push( 1, 2 ); | ||
assert.equal( tmp.size, 2 ); | ||
assert.equal( tmp.start, 0 ); | ||
assert.equal( tmp.end, 1 ); | ||
tmp = CBuffer(3); | ||
tmp.push(1, 2); | ||
assert.equal(tmp.size, 2); | ||
assert.equal(tmp.start, 0); | ||
assert.equal(tmp.end, 1); | ||
} | ||
@@ -33,2 +33,2 @@ } | ||
suite.export( module ); | ||
suite.export(module); |
@@ -1,15 +0,15 @@ | ||
var vows = require( 'vows' ), | ||
assert = require('assert' ) | ||
suite = vows.describe( 'CBuffer' ); | ||
var vows = require('vows'), | ||
assert = require('assert') | ||
suite = vows.describe('CBuffer'); | ||
require( '../env' ); | ||
require('../env'); | ||
suite.addBatch({ | ||
'reverse' : { | ||
'topic' : function() { | ||
'topic' : function () { | ||
return CBuffer; | ||
}, | ||
'reverse buffer' : function( CBuffer ) { | ||
assert.deepEqual( CBuffer( 1, 2, 3 ).reverse().data, [ 3, 2, 1 ]); | ||
assert.deepEqual( CBuffer( 1, 2, 3, 4 ).reverse().data, [ 4, 3, 2, 1 ]); | ||
'reverse buffer' : function (CBuffer) { | ||
assert.deepEqual(CBuffer(1, 2, 3).reverse().data, [3, 2, 1]); | ||
assert.deepEqual(CBuffer(1, 2, 3, 4).reverse().data, [4, 3, 2, 1]); | ||
} | ||
@@ -19,2 +19,2 @@ } | ||
suite.export( module ); | ||
suite.export(module); |
@@ -1,15 +0,15 @@ | ||
var vows = require( 'vows' ), | ||
assert = require('assert' ) | ||
suite = vows.describe( 'CBuffer' ); | ||
var vows = require('vows'), | ||
assert = require('assert') | ||
suite = vows.describe('CBuffer'); | ||
require( '../env.js' ); | ||
require('../env.js'); | ||
suite.addBatch({ | ||
'rotateLeft' : { | ||
'topic' : function() { | ||
'topic' : function () { | ||
return CBuffer; | ||
}, | ||
'simple rotateLeft' : function( CBuffer ) { | ||
assert.deepEqual( CBuffer( 1, 2, 3 ).rotateLeft( 2 ).toArray(), [ 3, 1, 2 ]); | ||
assert.deepEqual( CBuffer( 1, 2, 3 ).rotateLeft().toArray(), [ 2, 3, 1 ]); | ||
'simple rotateLeft' : function (CBuffer) { | ||
assert.deepEqual(CBuffer(1, 2, 3).rotateLeft(2).toArray(), [3, 1, 2]); | ||
assert.deepEqual(CBuffer(1, 2, 3).rotateLeft().toArray(), [2, 3, 1]); | ||
} | ||
@@ -19,2 +19,2 @@ } | ||
suite.export( module ); | ||
suite.export(module); |
@@ -1,15 +0,15 @@ | ||
var vows = require( 'vows' ), | ||
assert = require('assert' ) | ||
suite = vows.describe( 'CBuffer' ); | ||
var vows = require('vows'), | ||
assert = require('assert') | ||
suite = vows.describe('CBuffer'); | ||
require( '../env.js' ); | ||
require('../env.js'); | ||
suite.addBatch({ | ||
'rotateRight' : { | ||
'topic' : function() { | ||
'topic' : function () { | ||
return CBuffer; | ||
}, | ||
'simple rotateRight' : function( CBuffer ) { | ||
assert.deepEqual( CBuffer( 1, 2, 3 ).rotateRight( 2 ).toArray(), [ 2, 3, 1 ]); | ||
assert.deepEqual( CBuffer( 1, 2, 3 ).rotateRight().toArray(), [ 3, 1, 2 ]); | ||
'simple rotateRight' : function (CBuffer) { | ||
assert.deepEqual(CBuffer(1, 2, 3).rotateRight(2).toArray(), [2, 3, 1]); | ||
assert.deepEqual(CBuffer(1, 2, 3).rotateRight().toArray(), [3, 1, 2]); | ||
} | ||
@@ -19,2 +19,2 @@ } | ||
suite.export( module ); | ||
suite.export(module); |
@@ -1,39 +0,39 @@ | ||
var vows = require( 'vows' ), | ||
assert = require('assert' ) | ||
suite = vows.describe( 'CBuffer' ); | ||
var vows = require('vows'), | ||
assert = require('assert') | ||
suite = vows.describe('CBuffer'); | ||
require( '../env' ); | ||
require('../env'); | ||
suite.addBatch({ | ||
'shift' : { | ||
'topic' : function() { | ||
'topic' : function () { | ||
return CBuffer; | ||
}, | ||
'shift items' : function( CBuffer ) { | ||
'shift items' : function (CBuffer) { | ||
var tmp; | ||
tmp = CBuffer( 1, 2, 3 ); | ||
assert.equal( tmp.shift(), 1 ); | ||
assert.deepEqual( tmp.data, [ , 2, 3 ]); | ||
tmp = CBuffer(1, 2, 3); | ||
assert.equal(tmp.shift(), 1); | ||
assert.deepEqual(tmp.toArray(), [2, 3]); | ||
tmp = CBuffer( 1, 2, 3 ); | ||
tmp.push( 4 ); | ||
assert.equal( tmp.shift(), 2 ); | ||
assert.deepEqual( tmp.data, [ 4, , 3 ]); | ||
tmp = CBuffer(1, 2, 3); | ||
tmp.push(4); | ||
assert.equal(tmp.shift(), 2); | ||
assert.deepEqual(tmp.toArray(), [3, 4]); | ||
}, | ||
'shift properties' : function( CBuffer ) { | ||
'shift properties' : function (CBuffer) { | ||
var tmp; | ||
tmp = CBuffer( 1, 2, 3 ); | ||
tmp = CBuffer(1, 2, 3); | ||
tmp.shift(); | ||
assert.equal( tmp.size, 2 ); | ||
assert.equal( tmp.start, 1 ); | ||
assert.equal( tmp.end, 2 ); | ||
assert.equal(tmp.size, 2); | ||
assert.equal(tmp.start, 1); | ||
assert.equal(tmp.end, 2); | ||
tmp = CBuffer( 1, 2, 3 ); | ||
tmp.push( 4 ); | ||
tmp = CBuffer(1, 2, 3); | ||
tmp.push(4); | ||
tmp.shift(); | ||
assert.equal( tmp.size, 2 ); | ||
assert.equal( tmp.start, 2 ); | ||
assert.equal( tmp.end, 0 ); | ||
assert.equal(tmp.size, 2); | ||
assert.equal(tmp.start, 2); | ||
assert.equal(tmp.end, 0); | ||
} | ||
@@ -43,2 +43,2 @@ } | ||
suite.export( module ); | ||
suite.export(module); |
@@ -1,13 +0,13 @@ | ||
var vows = require( 'vows' ), | ||
assert = require('assert' ) | ||
suite = vows.describe( 'CBuffer' ); | ||
var vows = require('vows'), | ||
assert = require('assert') | ||
suite = vows.describe('CBuffer'); | ||
require( '../env.js' ); | ||
require('../env.js'); | ||
suite.addBatch({ | ||
'' : { | ||
'topic' : function() { | ||
'topic' : function () { | ||
return CBuffer; | ||
}, | ||
'' : function( CBuffer ) { | ||
'' : function (CBuffer) { | ||
} | ||
@@ -17,2 +17,2 @@ } | ||
suite.export( module ); | ||
suite.export(module); |
22192
29
699