From 1a2a0f426463e050694a90d163def06cf9ecc0c4 Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Thu, 17 Jun 2021 23:23:35 -0700 Subject: [PATCH] fix: Long search term causes server error writing query to db (#2237) closes #2234 --- server/api/documents.test.js | 15 +++++++++++++++ server/models/SearchQuery.js | 3 +++ 2 files changed, 18 insertions(+) diff --git a/server/api/documents.test.js b/server/api/documents.test.js index 5a3a43dbd..09bb70dc1 100644 --- a/server/api/documents.test.js +++ b/server/api/documents.test.js @@ -984,6 +984,21 @@ describe("#documents.search", () => { expect(body.data.length).toEqual(0); }); + it("should not error when search term is very long", async () => { + const { user } = await seed(); + const res = await server.post("/api/documents.search", { + body: { + token: user.getJwtToken(), + query: + "much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much much longer search term", + }, + }); + const body = await res.json(); + + expect(res.status).toEqual(200); + expect(body.data.length).toEqual(0); + }); + it("should return draft documents created by user if chosen", async () => { const { user } = await seed(); const document = await buildDocument({ diff --git a/server/models/SearchQuery.js b/server/models/SearchQuery.js index cd7258d35..0db084977 100644 --- a/server/models/SearchQuery.js +++ b/server/models/SearchQuery.js @@ -15,6 +15,9 @@ const SearchQuery = sequelize.define( }, query: { type: DataTypes.STRING, + set(val) { + this.setDataValue("query", val.substring(0, 255)); + }, allowNull: false, }, results: {