kopia lustrzana https://github.com/c9/core
117 wiersze
2.6 KiB
JavaScript
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);
|
|
});
|
|
});
|
|
}); |