Added testing

This commit is contained in:
Joe-Dowd
2020-04-01 21:04:04 +01:00
parent 1bff019a64
commit 5369d48eae
23 changed files with 1388 additions and 517 deletions

29
test/cases/getHash.js Normal file
View File

@@ -0,0 +1,29 @@
var getHash = require('../../src/utils/getHash.js');
var assert = require('assert');
describe('getHash', () => {
it('Should not output the input string', () => {
assert(getHash("test") !== "test");
assert(getHash("test", -1) !== "test");
assert(getHash("test", 0) !== "test");
assert(getHash("test", null) !== "test");
});
it('Should return a hashed value', () => {
assert.equal(getHash("test"), "2f327ef967ade1ebf4319163f7debbda9cc17bb0c8c834b00b30ca1cf1c256ee");
});
it ('Should take a variable number of passes', () => {
assert.equal(getHash("test", 1), "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08");
assert.equal(getHash("test", 2), "7b3d979ca8330a94fa7e9e1b466d8b99e0bcdea1ec90596c0dcc8d7ef6b4300c");
assert.equal(getHash("test", 3), "5b24f7aa99f1e1da5698a4f91ae0f4b45651a1b625c61ed669dd25ff5b937972");
});
it ('Should default to 5000 passes', () => {
assert.equal(getHash("test"), getHash("test", 5000));
});
it ('Should not take a negative number of passes', () => {
assert.equal(getHash("test", -1), "");
});
});

View File

@@ -0,0 +1,22 @@
BEGIN TRANSACTION;
DROP TABLE "shadowBannedUsers";
DROP TABLE "votes";
DROP TABLE "sponsorTimes";
CREATE TABLE IF NOT EXISTS "shadowBannedUsers" (
"userID" TEXT NOT NULL
);
CREATE TABLE IF NOT EXISTS "votes" (
"UUID" TEXT NOT NULL,
"userID" INTEGER NOT NULL,
"hashedIP" INTEGER NOT NULL,
"type" INTEGER NOT NULL
);
CREATE TABLE IF NOT EXISTS "sponsorTimes" (
"videoID" TEXT NOT NULL,
"hashedIP" TEXT NOT NULL,
"timeSubmitted" INTEGER NOT NULL
);
CREATE INDEX IF NOT EXISTS sponsorTimes_hashedIP on sponsorTimes(hashedIP);
CREATE INDEX IF NOT EXISTS votes_userID on votes(UUID);
COMMIT;

View File

@@ -0,0 +1,26 @@
BEGIN TRANSACTION;
DROP TABLE "vipUsers";
DROP TABLE "sponsorTimes";
DROP TABLE "userNames";
CREATE TABLE IF NOT EXISTS "vipUsers" (
"userID" TEXT NOT NULL
);
CREATE TABLE IF NOT EXISTS "sponsorTimes" (
"videoID" TEXT NOT NULL,
"startTime" REAL NOT NULL,
"endTime" REAL NOT NULL,
"votes" INTEGER NOT NULL,
"UUID" TEXT NOT NULL UNIQUE,
"userID" TEXT NOT NULL,
"timeSubmitted" INTEGER NOT NULL,
"views" INTEGER NOT NULL,
"shadowHidden" INTEGER NOT NULL
);
CREATE TABLE IF NOT EXISTS "userNames" (
"userID" TEXT NOT NULL,
"userName" TEXT NOT NULL
);
CREATE INDEX IF NOT EXISTS sponsorTimes_videoID on sponsorTimes(videoID);
CREATE INDEX IF NOT EXISTS sponsorTimes_UUID on sponsorTimes(UUID);
COMMIT;

BIN
test/databases/private.db Normal file

Binary file not shown.

Binary file not shown.

16
test/mocks.js Normal file
View File

@@ -0,0 +1,16 @@
var express = require('express');
var app = express();
var config = require('../src/config.js');
app.post('/ReportChannelWebhook', (req, res) => {
res.status(200);
});
app.post('/FirstTimeSubmissionsWebhook', (req, res) => {
res.status(200);
});
module.exports = function createMockServer(callback) {
return app.listen(config.mockPort, callback);
}