Skip to content

Commit

Permalink
fix: cleanup chat channels system
Browse files Browse the repository at this point in the history
  • Loading branch information
robert-bo-davis committed Sep 11, 2023
1 parent 0a9e0a5 commit 4d87e6b
Show file tree
Hide file tree
Showing 7 changed files with 862 additions and 10 deletions.
2 changes: 1 addition & 1 deletion e2e-tests/chatScripts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ export const commonScripts: Record<string, ChatStatement[]> = {
botStatement(
'You are number 1 in line. To keep your chat active, please do not leave/refresh this window or hit the back button.',
),
// counselorAutoStatement("Hi, you've reached a counsellor. What would you like to talk about?"),
counselorAutoStatement("Hi, you've reached a counsellor. What would you like to talk about?"),
callerStatement('CALLER TEST CHAT MESSAGE'),
counselorStatement('COUNSELLOR TEST CHAT MESSAGE'),
],
Expand Down
34 changes: 34 additions & 0 deletions e2e-tests/deleteChatChannels.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
/**
* Copyright (C) 2021-2023 Technology Matters
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published
* by the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see https://www.gnu.org/licenses/.
*/

/**
* This script is used to delete all chat channels for a given user. It is very slow because there
* are so many anonymous users in the system. We run it on a schedule instead of as part of the
* normal test suite to avoid slowing down the test suite.
*
* If we don't cleanup chat channels, we will eventually hit the 1000 channel limit and be unable
* send new messages from the e2e test user.
*/

import { deleteChatChannels } from './twilio/channels';
import { initConfig } from './config';

const main = async () => {
await initConfig();
await deleteChatChannels();
};

main();
6 changes: 3 additions & 3 deletions e2e-tests/lambda/handler.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,15 @@

const { spawn } = require('child_process');

module.exports.handler = async (event, context) => {
module.exports.handler = async (event) => {
const env = { ...process.env };

const { testName } = event;
const { testName, npmScript } = event;
if (testName) {
env.TEST_NAME = testName;
}

const cmd = spawn('npm', ['-loglevel silent', 'run', 'test'], {
const cmd = spawn('npm', ['-loglevel silent', 'run', npmScript || 'test'], {
stdio: 'inherit',
stderr: 'inherit',
env,
Expand Down
Loading

0 comments on commit 4d87e6b

Please sign in to comment.