mirror of
https://github.com/ets-cfuhrman-pfe/EvalueTonSavoir.git
synced 2025-08-11 21:23:54 -04:00
Compare commits
8 commits
839ee79912
...
e5e7f61b71
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e5e7f61b71 | ||
|
|
90e42865ba | ||
|
|
ea6454550c | ||
|
|
6c73cfddc9 | ||
|
|
51d3d9f473 | ||
|
|
3faed3625e | ||
|
|
535e726e6e | ||
|
|
3366fbe18c |
11 changed files with 36 additions and 19 deletions
|
|
@ -1,2 +1,2 @@
|
||||||
VITE_BACKEND_URL=http://localhost:4400
|
VITE_BACKEND_URL=http://localhost:4400
|
||||||
VITE_AZURE_BACKEND_URL=http://localhost:4400
|
VITE_BACKEND_SOCKET_URL=http://localhost:4400
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,8 @@ module.exports = {
|
||||||
//moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
|
//moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
|
||||||
setupFiles: ['./jest.setup.cjs'],
|
setupFiles: ['./jest.setup.cjs'],
|
||||||
moduleNameMapper: {
|
moduleNameMapper: {
|
||||||
'\\.(css|less|scss|sass)$': 'identity-obj-proxy'
|
'\\.(css|less|scss|sass)$': 'identity-obj-proxy',
|
||||||
|
'^src/constants$': '<rootDir>/src/__mocks__/constantsMock.tsx',
|
||||||
},
|
},
|
||||||
transformIgnorePatterns: ['node_modules/(?!nanoid/)'],
|
transformIgnorePatterns: ['node_modules/(?!nanoid/)'],
|
||||||
};
|
};
|
||||||
|
|
|
||||||
13
client/src/__mocks__/constantsMock.tsx
Normal file
13
client/src/__mocks__/constantsMock.tsx
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
console.log('constantsMock.tsx is loaded');
|
||||||
|
|
||||||
|
// constants.tsx
|
||||||
|
const ENV_VARIABLES = {
|
||||||
|
MODE: 'production',
|
||||||
|
VITE_BACKEND_URL: process.env.VITE_BACKEND_URL || "",
|
||||||
|
VITE_BACKEND_SOCKET_URL: process.env.VITE_BACKEND_SOCKET_URL || "",
|
||||||
|
};
|
||||||
|
|
||||||
|
console.log(`ENV_VARIABLES.VITE_BACKEND_URL=${ENV_VARIABLES.VITE_BACKEND_URL}`);
|
||||||
|
console.log(`ENV_VARIABLES.VITE_BACKEND_SOCKET_URL=${ENV_VARIABLES.VITE_BACKEND_SOCKET_URL}`);
|
||||||
|
|
||||||
|
export { ENV_VARIABLES };
|
||||||
|
|
@ -1,16 +1,10 @@
|
||||||
//WebsocketService.test.tsx
|
//WebsocketService.test.tsx
|
||||||
import WebsocketService from '../../services/WebsocketService';
|
import WebsocketService from '../../services/WebsocketService';
|
||||||
import { io, Socket } from 'socket.io-client';
|
import { io, Socket } from 'socket.io-client';
|
||||||
import { ENV_VARIABLES } from '../../constants';
|
import { ENV_VARIABLES } from 'src/constants';
|
||||||
|
|
||||||
jest.mock('socket.io-client');
|
jest.mock('socket.io-client');
|
||||||
|
|
||||||
// jest.mock('../../constants', () => ({
|
|
||||||
// ENV_VARIABLES: {
|
|
||||||
// VITE_BACKEND_SOCKET_URL: 'https://ets-glitch-backend.glitch.me/'
|
|
||||||
// }
|
|
||||||
// }));
|
|
||||||
|
|
||||||
describe('WebSocketService', () => {
|
describe('WebSocketService', () => {
|
||||||
let mockSocket: Partial<Socket>;
|
let mockSocket: Partial<Socket>;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
// constants.tsx
|
// constants.tsx
|
||||||
const ENV_VARIABLES = {
|
const ENV_VARIABLES = {
|
||||||
MODE: 'production',
|
MODE: 'production',
|
||||||
VITE_BACKEND_URL: process.env.VITE_BACKEND_URL || "",
|
VITE_BACKEND_URL: import.meta.env.VITE_BACKEND_URL || "",
|
||||||
VITE_BACKEND_SOCKET_URL: process.env.VITE_BACKEND_SOCKET_URL || "",
|
VITE_BACKEND_SOCKET_URL: import.meta.env.VITE_BACKEND_SOCKET_URL || "",
|
||||||
};
|
};
|
||||||
|
|
||||||
console.log(`ENV_VARIABLES.VITE_BACKEND_URL=${ENV_VARIABLES.VITE_BACKEND_URL}`);
|
console.log(`ENV_VARIABLES.VITE_BACKEND_URL=${ENV_VARIABLES.VITE_BACKEND_URL}`);
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import React, { useEffect, useState } from 'react';
|
import React, { useEffect, useState } from 'react';
|
||||||
|
|
||||||
import { Socket } from 'socket.io-client';
|
import { Socket } from 'socket.io-client';
|
||||||
import { ENV_VARIABLES } from '../../../constants';
|
import { ENV_VARIABLES } from 'src/constants';
|
||||||
|
|
||||||
import StudentModeQuiz from '../../../components/StudentModeQuiz/StudentModeQuiz';
|
import StudentModeQuiz from '../../../components/StudentModeQuiz/StudentModeQuiz';
|
||||||
import TeacherModeQuiz from '../../../components/TeacherModeQuiz/TeacherModeQuiz';
|
import TeacherModeQuiz from '../../../components/TeacherModeQuiz/TeacherModeQuiz';
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ import webSocketService, { AnswerReceptionFromBackendType } from '../../../servi
|
||||||
import { QuizType } from '../../../Types/QuizType';
|
import { QuizType } from '../../../Types/QuizType';
|
||||||
|
|
||||||
import './manageRoom.css';
|
import './manageRoom.css';
|
||||||
import { ENV_VARIABLES } from '../../../constants';
|
import { ENV_VARIABLES } from 'src/constants';
|
||||||
import { StudentType, Answer } from '../../../Types/StudentType';
|
import { StudentType, Answer } from '../../../Types/StudentType';
|
||||||
import { Button } from '@mui/material';
|
import { Button } from '@mui/material';
|
||||||
import LoadingCircle from '../../../components/LoadingCircle/LoadingCircle';
|
import LoadingCircle from '../../../components/LoadingCircle/LoadingCircle';
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
import axios, { AxiosError, AxiosResponse } from 'axios';
|
import axios, { AxiosError, AxiosResponse } from 'axios';
|
||||||
import { ENV_VARIABLES } from '../constants';
|
|
||||||
|
|
||||||
import { QuizType } from '../Types/QuizType';
|
import { FolderType } from 'src/Types/FolderType';
|
||||||
import { FolderType } from '../Types/FolderType';
|
import { QuizType } from 'src/Types/QuizType';
|
||||||
|
import { ENV_VARIABLES } from 'src/constants';
|
||||||
|
|
||||||
class ApiService {
|
class ApiService {
|
||||||
private BASE_URL: string;
|
private BASE_URL: string;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,9 @@
|
||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
|
"baseUrl": "./",
|
||||||
|
"paths": {
|
||||||
|
"src/*": ["src/*"]
|
||||||
|
},
|
||||||
"target": "ESNext",
|
"target": "ESNext",
|
||||||
"useDefineForClassFields": true,
|
"useDefineForClassFields": true,
|
||||||
"lib": ["ES2020", "DOM", "DOM.Iterable"],
|
"lib": ["ES2020", "DOM", "DOM.Iterable"],
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,11 @@ export default defineConfig({
|
||||||
pluginChecker({ typescript: true }),
|
pluginChecker({ typescript: true }),
|
||||||
EnvironmentPlugin(filteredEnv),
|
EnvironmentPlugin(filteredEnv),
|
||||||
],
|
],
|
||||||
|
resolve: {
|
||||||
|
alias: {
|
||||||
|
'src': '/src'
|
||||||
|
}
|
||||||
|
},
|
||||||
preview: {
|
preview: {
|
||||||
port: 5173,
|
port: 5173,
|
||||||
strictPort: true
|
strictPort: true
|
||||||
|
|
|
||||||
|
|
@ -43,6 +43,7 @@ const imagesRouter = require('./routers/images.js');
|
||||||
|
|
||||||
// Setup environment
|
// Setup environment
|
||||||
dotenv.config();
|
dotenv.config();
|
||||||
|
const isDev = process.env.NODE_ENV === 'development';
|
||||||
const errorHandler = require("./middleware/errorHandler.js");
|
const errorHandler = require("./middleware/errorHandler.js");
|
||||||
|
|
||||||
// Start app
|
// Start app
|
||||||
|
|
@ -63,13 +64,12 @@ const configureServer = (httpServer, isDev) => {
|
||||||
};
|
};
|
||||||
|
|
||||||
// Start sockets (depending on the dev or prod environment)
|
// Start sockets (depending on the dev or prod environment)
|
||||||
let server = http.createServer(app);
|
const server = http.createServer(app);
|
||||||
let isDev = process.env.NODE_ENV === 'development';
|
|
||||||
|
|
||||||
console.log(`Environnement: ${process.env.NODE_ENV} (${isDev ? 'dev' : 'prod'})`);
|
console.log(`Environnement: ${process.env.NODE_ENV} (${isDev ? 'dev' : 'prod'})`);
|
||||||
|
|
||||||
const io = configureServer(server);
|
const io = configureServer(server);
|
||||||
console.log(`server.io configured: ${io.secure ? 'secure' : 'not secure'}`);
|
console.log(`Server configured with cors.origin: ${io.opts.cors.origin} and secure: ${io.opts.secure}`);
|
||||||
|
|
||||||
setupWebsocket(io);
|
setupWebsocket(io);
|
||||||
console.log(`Websocket setup with on() listeners.`);
|
console.log(`Websocket setup with on() listeners.`);
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue