c9-core/node_modules/c9/available_test.js

117 wiersze
2.6 KiB
JavaScript

#!/usr/bin/env node
"use strict";
"use server";
require("c9/setup_paths");
require("c9/inline-mocha")(module);
var assert = require("assert-diff");
var available = require("./available");
describe(__filename, function() {
it("Should do basic math for shared keys in the input", function() {
var cases = [{
label: "When total < used",
total: {
ram: 10,
disk: 5,
},
used: {
ram: 20,
disk: 5,
},
avail: {
ram: -10,
disk: 0
}
}, {
label: "When keys in total not in used",
total: {
ram: 10,
disk: 5,
foo: 10,
},
used: {
ram: 10,
disk: 5,
},
avail: {
ram: 0,
disk: 0,
foo: 10
}
}, {
label: "When keys in used not in total",
total: {
ram: 10,
disk: 5,
},
used: {
foo: 10,
ram: 10,
disk: 5,
},
avail: {
ram: 0,
disk: 0,
foo: -10
}
}, {
label: "When all looks normal",
total: {
ram: 10,
disk: 5,
},
used: {
ram: 5,
disk: 2,
},
avail: {
ram: 5,
disk: 3,
}
}, {
label: "With a little extra",
total: {
ram: 10,
disk: 6,
},
used: {
ram: 10,
disk: 5,
},
extra: {
ram: 3,
disk: 3
},
avail: {
ram: 3,
disk: 4,
}
}, {
label: "But extra is not more",
total: {
ram: 10,
disk: 10,
},
used: {
ram: 5,
disk: 5,
},
extra: {
ram: 5,
disk: 3
},
avail: {
ram: 10,
disk: 8,
}
}];
cases.forEach(function(testCase) {
var avail = available(testCase.total, testCase.used, testCase.extra);
assert.deepEqual(avail, testCase.avail, testCase.label);
});
});
});