diff --git a/server/src/server/router/ir/beatoraja/auth.test.ts b/server/src/server/router/ir/beatoraja/auth.test.ts index 3e63ac63b..59bdf4be7 100644 --- a/server/src/server/router/ir/beatoraja/auth.test.ts +++ b/server/src/server/router/ir/beatoraja/auth.test.ts @@ -34,7 +34,7 @@ t.test("#ValidateIRClientVersion", (t) => { t.test("Should accept 2.0.0", async (t) => { const { res } = await expMiddlewareMock(ValidateIRClientVersion, { headers: { - "X-TachiIR-Version": "2.0.0", + "X-TachiIR-Version": "v2.0.0", }, }); diff --git a/server/src/server/router/ir/beatoraja/auth.ts b/server/src/server/router/ir/beatoraja/auth.ts index 76203ac64..a315a2fb7 100644 --- a/server/src/server/router/ir/beatoraja/auth.ts +++ b/server/src/server/router/ir/beatoraja/auth.ts @@ -3,7 +3,7 @@ import { RequestHandler } from "express"; export const ValidateIRClientVersion: RequestHandler = (req, res, next) => { const header = req.header("X-TachiIR-Version"); - if (header !== "2.0.0") { + if (header !== "v2.0.0") { return res.status(400).json({ success: false, description: "Invalid TachiIR client version.", diff --git a/server/src/server/router/ir/beatoraja/charts/router.test.ts b/server/src/server/router/ir/beatoraja/charts/router.test.ts index c01338cdd..38c3086ca 100644 --- a/server/src/server/router/ir/beatoraja/charts/router.test.ts +++ b/server/src/server/router/ir/beatoraja/charts/router.test.ts @@ -35,7 +35,7 @@ t.test("GET /ir/beatoraja/charts/:chartSHA256/scores", (t) => { const res = await mockApi .get(`/ir/beatoraja/charts/${GAZER_SHA256}/scores`) - .set("X-TachiIR-Version", "2.0.0"); + .set("X-TachiIR-Version", "v2.0.0"); t.equal(res.status, 200); @@ -45,7 +45,7 @@ t.test("GET /ir/beatoraja/charts/:chartSHA256/scores", (t) => { t.test("Should return 404 if chart doesnt exist", async (t) => { const res = await mockApi .get(`/ir/beatoraja/charts/INVALID/scores`) - .set("X-TachiIR-Version", "2.0.0"); + .set("X-TachiIR-Version", "v2.0.0"); t.equal(res.status, 404); diff --git a/server/src/server/router/ir/beatoraja/router.test.ts b/server/src/server/router/ir/beatoraja/router.test.ts index 79afc06f2..b0a177887 100644 --- a/server/src/server/router/ir/beatoraja/router.test.ts +++ b/server/src/server/router/ir/beatoraja/router.test.ts @@ -25,7 +25,7 @@ t.test("POST /ir/beatoraja/submit-score", (t) => { t.test("Should import a valid score.", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-score") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send(scoreReq); @@ -62,7 +62,7 @@ t.test("POST /ir/beatoraja/submit-score", (t) => { t.test("Should return an error if invalid client.", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-score") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send(deepmerge(scoreReq, { client: "INVALID" })); @@ -77,7 +77,7 @@ t.test("POST /ir/beatoraja/submit-score", (t) => { t.test("Should return an error if invalid score.", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-score") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send(deepmerge(scoreReq, { score: { exscore: -1 } })); @@ -92,7 +92,7 @@ t.test("POST /ir/beatoraja/submit-score", (t) => { t.test("Should return an error if invalid chart.", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-score") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send(deepmerge(scoreReq, { chart: { title: null } })); @@ -107,7 +107,7 @@ t.test("POST /ir/beatoraja/submit-score", (t) => { t.test("Should defer a chart to the orphan queue if not found.", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-score") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send( deepmerge(scoreReq, { @@ -168,7 +168,7 @@ t.test("POST /ir/beatoraja/submit-score", (t) => { const res = await mockApi .post("/ir/beatoraja/submit-score") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send( deepmerge(scoreReq, { @@ -181,7 +181,7 @@ t.test("POST /ir/beatoraja/submit-score", (t) => { const res2 = await mockApi .post("/ir/beatoraja/submit-score") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer token2") .send( deepmerge(scoreReq, { @@ -200,7 +200,7 @@ t.test("POST /ir/beatoraja/submit-score", (t) => { const res3 = await mockApi .post("/ir/beatoraja/submit-score") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer token3") .send( deepmerge(scoreReq, { @@ -235,7 +235,7 @@ t.test("POST /ir/beatoraja/submit-score", (t) => { t.test("Should require authentication.", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-score") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .send(scoreReq); t.equal(res.status, 401); @@ -246,7 +246,7 @@ t.test("POST /ir/beatoraja/submit-score", (t) => { t.test("Should reject non-corresponding tokens.", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-score") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer invalid_token") .send(scoreReq); @@ -329,7 +329,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should accept a valid clear", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send(courseScore); @@ -347,7 +347,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should silently reject a fail", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send(deepmerge(courseScore, { score: { clear: "Failed" } })); @@ -361,7 +361,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should reject scores with no charts", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send(deepmerge(courseScore, { course: { charts: [] } }, { arrayMerge: (d, s) => s })); @@ -375,7 +375,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should reject scores with invalid chart documents", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send(deepmerge(courseScore, { course: { charts: [1, 2, 3, 4] } })); @@ -389,7 +389,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should reject scores with too many chart documents", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send( deepmerge(courseScore, { @@ -407,7 +407,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should reject scores not on LN mode", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send( deepmerge(courseScore, { @@ -427,7 +427,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should reject too few constraints", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send( deepmerge( @@ -451,7 +451,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should reject non-array constraints", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send( deepmerge( @@ -475,7 +475,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should reject too many constraints", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send( deepmerge( @@ -499,7 +499,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should reject invalid constraints", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send( deepmerge( @@ -523,7 +523,7 @@ t.test("POST /ir/beatoraja/submit-course", (t) => { t.test("Should reject invalid constraints for 3", async (t) => { const res = await mockApi .post("/ir/beatoraja/submit-course") - .set("X-TachiIR-Version", "2.0.0") + .set("X-TachiIR-Version", "v2.0.0") .set("Authorization", "Bearer mock_token") .send( deepmerge(