/usr/lib/nodejs/databank/lib/test/integer.js is in node-databank 0.19.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | // test/integer.js
//
// Test CRUD for integer scalars
//
// Copyright 2012, E14N https://e14n.com/
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
var assert = require('assert'),
vows = require('vows'),
databank = require('../databank'),
Databank = databank.Databank;
var integerContext = function(driver, params) {
var context = {};
context["When we create a " + driver + " databank"] = {
topic: function() {
if (!params.hasOwnProperty('schema')) {
params.schema = {};
}
params.schema['computer-count'] = {
pkey: 'username'
};
return Databank.get(driver, params);
},
'We can connect to it': {
topic: function(bank) {
bank.connect(params, this.callback);
},
teardown: function(bank) {
var callback = this.callback;
// Workaround for vows bug
setImmediate(function() {
bank.disconnect(function(err) {
callback();
});
});
},
'without an error': function(err) {
assert.ifError(err);
},
'and we can insert an integer': {
topic: function(bank) {
bank.create('computer-count', 'evanp', 3, this.callback);
},
'without an error': function(err, value) {
assert.ifError(err);
assert.isNumber(value);
assert.equal(value, 3);
},
'and we can fetch it': {
topic: function(created, bank) {
bank.read('computer-count', 'evanp', this.callback);
},
'without an error': function(err, value) {
assert.ifError(err);
assert.isNumber(value);
assert.equal(value, 3);
},
'and we can update it': {
topic: function(read, created, bank) {
bank.update('computer-count', 'evanp', 5, this.callback);
},
'without an error': function(err, value) {
assert.ifError(err);
assert.isNumber(value);
assert.equal(value, 5);
},
'and we can read it again': {
topic: function(updated, read, created, bank) {
bank.read('computer-count', 'evanp', this.callback);
},
'without an error': function(err, value) {
assert.ifError(err);
assert.isNumber(value);
assert.equal(value, 5);
},
'and we can increment it': {
topic: function(readAgain, updated, read, created, bank) {
bank.incr('computer-count', 'evanp', this.callback);
},
'without an error': function(err, value) {
assert.ifError(err);
assert.isNumber(value);
assert.equal(value, 6);
},
'and we can decrement it': {
topic: function(incremented, readAgain, updated, read, created, bank) {
bank.decr('computer-count', 'evanp', this.callback);
},
'without an error': function(err, value) {
assert.ifError(err);
assert.isNumber(value);
assert.equal(value, 5);
},
'and we can delete it': {
topic: function(decremented, incremented, readAgain, updated, read, created, bank) {
bank.del('computer-count', 'evanp', this.callback);
},
'without an error': function(err) {
assert.ifError(err);
}
}
}
}
}
}
}
}
}
};
return context;
};
module.exports = integerContext;
|