everything up to purgeAllSegments

This commit is contained in:
Michael C
2021-09-04 19:23:43 -04:00
parent 1823a91d54
commit 6e55f9d979
15 changed files with 320 additions and 308 deletions

View File

@@ -1,7 +1,6 @@
import fetch from "node-fetch";
import {db} from "../../src/databases/databases";
import {Done, getbaseURL, partialDeepEquals} from "../utils";
import {getHash} from "../../src/utils/getHash";
import assert from "assert";
const ENOENTID = "0".repeat(64);
@@ -30,22 +29,21 @@ describe("getSegmentInfo", () => {
before(async () => {
const insertQuery = `INSERT INTO
"sponsorTimes"("videoID", "startTime", "endTime", "votes", "locked",
"UUID", "userID", "timeSubmitted", "views", "category", "service",
"videoDuration", "hidden", "shadowHidden", "hashedVideoID", "userAgent")
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`;
await db.prepare("run", insertQuery, ["upvoted", 1, 10, 2, 0, upvotedID, "testman", 0, 50, "sponsor", "YouTube", 100, 0, 0, getHash("upvoted", 1), userAgents.vanced]);
await db.prepare("run", insertQuery, ["downvoted", 1, 10, -2, 0, downvotedID, "testman", 0, 50, "sponsor", "YouTube", 120, 0, 0, getHash("downvoted", 1), userAgents.meabot]);
await db.prepare("run", insertQuery, ["locked-up", 1, 10, 2, 1, lockedupID, "testman", 0, 50, "sponsor", "YouTube", 101, 0, 0, getHash("locked-up", 1), userAgents.mpv]);
await db.prepare("run", insertQuery, ["infvotes", 1, 10, 100000, 0, infvotesID, "testman", 0, 50, "sponsor", "YouTube", 101, 0, 0, getHash("infvotes", 1), userAgents.nodesb]);
await db.prepare("run", insertQuery, ["hidden", 1, 10, 2, 0, hiddenID, "testman", 0, 50, "sponsor", "YouTube", 140, 1, 0, getHash("hidden", 1), userAgents.blank]);
await db.prepare("run", insertQuery, ["shadowhidden", 1, 10, 2, 0, shadowhiddenID, "testman", 0, 50, "sponsor", "YouTube", 140, 0, 1, getHash("shadowhidden", 1), userAgents.blank]);
await db.prepare("run", insertQuery, ["locked-down", 1, 10, -2, 1, lockeddownID, "testman", 0, 50, "sponsor", "YouTube", 200, 0, 0, getHash("locked-down", 1), userAgents.blank]);
await db.prepare("run", insertQuery, ["oldID", 1, 10, 1, 0, oldID, "testman", 0, 50, "sponsor", "YouTube", 300, 0, 0, getHash("oldID", 1), userAgents.blank]);
await db.prepare("run", insertQuery, ["filler", 1, 2, 1, 0, fillerID1, "testman", 0, 50, "sponsor", "YouTube", 300, 0, 0, getHash("filler", 1), userAgents.blank]);
await db.prepare("run", insertQuery, ["filler", 2, 3, 1, 0, fillerID2, "testman", 0, 50, "sponsor", "YouTube", 300, 0, 0, getHash("filler", 1), userAgents.blank]);
await db.prepare("run", insertQuery, ["filler", 3, 4, 1, 0, fillerID3, "testman", 0, 50, "sponsor", "YouTube", 300, 0, 0, getHash("filler", 1), userAgents.blank]);
await db.prepare("run", insertQuery, ["filler", 4, 5, 1, 0, fillerID4, "testman", 0, 50, "sponsor", "YouTube", 300, 0, 0, getHash("filler", 1), userAgents.blank]);
await db.prepare("run", insertQuery, ["filler", 5, 6, 1, 0, fillerID5, "testman", 0, 50, "sponsor", "YouTube", 300, 0, 0, getHash("filler", 1), userAgents.blank]);
"UUID", "userID", "timeSubmitted", "views", "hidden", "shadowHidden", "userAgent")
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`;
await db.prepare("run", insertQuery, ["segmentInfoUpvoted", 1, 10, 2, 0, upvotedID, "segmentInfoUser", 0, 50, 0, 0, userAgents.vanced]);
await db.prepare("run", insertQuery, ["segmentInfoDownvoted", 1, 10, -2, 0, downvotedID, "segmentInfoUser", 0, 50, 0, 0, userAgents.meabot]);
await db.prepare("run", insertQuery, ["segmentInfoLockedup", 1, 10, 2, 1, lockedupID, "segmentInfoUser", 0, 50, 0, 0, userAgents.mpv]);
await db.prepare("run", insertQuery, ["segmentInfoInfvotes", 1, 10, 100000, 0, infvotesID, "segmentInfoUser", 0, 50, 0, 0, userAgents.nodesb]);
await db.prepare("run", insertQuery, ["segmentInfoHidden", 1, 10, 2, 0, hiddenID, "segmentInfoUser", 0, 50, 1, 0, userAgents.blank]);
await db.prepare("run", insertQuery, ["segmentInfoShadowhidden", 1, 10, 2, 0, shadowhiddenID, "segmentInfoUser", 0, 50, 0, 1, userAgents.blank]);
await db.prepare("run", insertQuery, ["segmentInfoLockedown", 1, 10, -2, 1, lockeddownID, "segmentInfoUser", 0, 50, 0, 0, userAgents.blank]);
await db.prepare("run", insertQuery, ["segmentInfoOldID", 1, 10, 1, 0, oldID, "segmentInfoUser", 0, 50, 0, 0, userAgents.blank]);
await db.prepare("run", insertQuery, ["segmentInfoUpvoted", 1, 2, 1, 0, fillerID1, "segmentInfoUser", 0, 50, 0, 0, userAgents.blank]);
await db.prepare("run", insertQuery, ["segmentInfoFiller", 2, 3, 1, 0, fillerID2, "segmentInfoUser", 0, 50, 0, 0, userAgents.blank]);
await db.prepare("run", insertQuery, ["segmentInfoFiller", 3, 4, 1, 0, fillerID3, "segmentInfoUser", 0, 50, 0, 0, userAgents.blank]);
await db.prepare("run", insertQuery, ["segmentInfoFiller", 4, 5, 1, 0, fillerID4, "segmentInfoUser", 0, 50, 0, 0, userAgents.blank]);
await db.prepare("run", insertQuery, ["segmentInfoFiller", 5, 6, 1, 0, fillerID5, "segmentInfoUser", 0, 50, 0, 0, userAgents.blank]);
});
it("Should be able to retreive upvoted segment", (done: Done) => {
@@ -54,7 +52,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "upvoted",
videoID: "segmentInfoUpvoted",
votes: 2,
userAgent: userAgents.vanced,
}];
@@ -70,7 +68,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "downvoted",
videoID: "segmentInfoDownvoted",
votes: -2,
userAgent: userAgents.meabot,
}];
@@ -86,7 +84,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "locked-up",
videoID: "segmentInfoLockedup",
locked: 1,
votes: 2,
userAgent: userAgents.mpv,
@@ -103,7 +101,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "infvotes",
videoID: "segmentInfoInfvotes",
votes: 100000,
userAgent: userAgents.nodesb,
}];
@@ -119,7 +117,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "shadowhidden",
videoID: "segmentInfoShadowhidden",
shadowHidden: 1,
userAgent: userAgents.blank,
}];
@@ -135,7 +133,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "locked-down",
videoID: "segmentInfoLockedown",
locked: 1,
votes: -2,
}];
@@ -151,7 +149,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "hidden",
videoID: "segmentInfoHidden",
hidden: 1,
}];
assert.ok(partialDeepEquals(data, expected));
@@ -166,7 +164,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "oldID",
videoID: "segmentInfoOldID",
votes: 1,
}];
assert.ok(partialDeepEquals(data, expected));
@@ -181,7 +179,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "upvoted",
videoID: "segmentInfoUpvoted",
votes: 2,
}];
assert.strictEqual(data.length, 1);
@@ -197,10 +195,10 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "upvoted",
videoID: "segmentInfoUpvoted",
votes: 2,
}, {
videoID: "downvoted",
videoID: "segmentInfoDownvoted",
votes: -2,
}];
assert.ok(partialDeepEquals(data, expected));
@@ -216,7 +214,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "upvoted",
videoID: "segmentInfoUpvoted",
votes: 2,
}];
assert.ok(partialDeepEquals(data, expected));
@@ -267,7 +265,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "upvoted",
videoID: "segmentInfoUpvoted",
votes: 2,
}];
assert.ok(partialDeepEquals(data, expected));
@@ -285,9 +283,9 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
assert.strictEqual(data.length, 10);
assert.strictEqual(data[0].videoID, "upvoted");
assert.strictEqual(data[0].videoID, "segmentInfoUpvoted");
assert.strictEqual(data[0].votes, 2);
assert.strictEqual(data[9].videoID, "filler");
assert.strictEqual(data[9].videoID, "segmentInfoFiller");
assert.strictEqual(data[9].UUID, fillerID4);
done();
})
@@ -308,7 +306,7 @@ describe("getSegmentInfo", () => {
it("Should return 400 if UUID not found", (done: Done) => {
fetch(`${getbaseURL()}/api/segmentInfo?UUID=${ENOENTID}`)
.then(res => {
if (res.status !== 400) done(`non 400 respone code: ${res.status}`);
if (res.status !== 400) done(`non 400 response code: ${res.status}`);
else done(); // pass
})
.catch(err => done(err));
@@ -320,10 +318,10 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "upvoted",
videoID: "segmentInfoUpvoted",
votes: 2,
}, {
videoID: "downvoted",
videoID: "segmentInfoDownvoted",
votes: -2,
}];
assert.ok(partialDeepEquals(data, expected));
@@ -339,7 +337,7 @@ describe("getSegmentInfo", () => {
assert.strictEqual(res.status, 200);
const data = await res.json();
const expected = [{
videoID: "upvoted",
videoID: "segmentInfoUpvoted",
votes: 2
}];
assert.ok(partialDeepEquals(data, expected));