diff --git a/backend/.eslintrc.json b/backend/.eslintrc.json index 9edbbb1..aa015fa 100644 --- a/backend/.eslintrc.json +++ b/backend/.eslintrc.json @@ -17,6 +17,7 @@ }, "plugins": ["@typescript-eslint", "prettier"], "rules": { + "@typescript-eslint/no-non-null-assertion": "off", "@typescript-eslint/no-unused-vars": [ "error", { "argsIgnorePattern": "_" } diff --git a/backend/coverage/lcov-report/AuthServices/RefreshTokenService.ts.html b/backend/coverage/lcov-report/AuthServices/RefreshTokenService.ts.html index 1c5845d..32112c2 100644 --- a/backend/coverage/lcov-report/AuthServices/RefreshTokenService.ts.html +++ b/backend/coverage/lcov-report/AuthServices/RefreshTokenService.ts.html @@ -187,7 +187,7 @@ diff --git a/backend/coverage/lcov-report/AuthServices/index.html b/backend/coverage/lcov-report/AuthServices/index.html index 104244f..d7dadca 100644 --- a/backend/coverage/lcov-report/AuthServices/index.html +++ b/backend/coverage/lcov-report/AuthServices/index.html @@ -95,7 +95,7 @@ diff --git a/backend/coverage/lcov-report/ContactServices/CreateContactService.ts.html b/backend/coverage/lcov-report/ContactServices/CreateContactService.ts.html index 3b7a777..dc74396 100644 --- a/backend/coverage/lcov-report/ContactServices/CreateContactService.ts.html +++ b/backend/coverage/lcov-report/ContactServices/CreateContactService.ts.html @@ -202,7 +202,7 @@ diff --git a/backend/coverage/lcov-report/ContactServices/DeleteContactService.ts.html b/backend/coverage/lcov-report/ContactServices/DeleteContactService.ts.html index f50f9ce..6095cc2 100644 --- a/backend/coverage/lcov-report/ContactServices/DeleteContactService.ts.html +++ b/backend/coverage/lcov-report/ContactServices/DeleteContactService.ts.html @@ -112,7 +112,7 @@ diff --git a/backend/coverage/lcov-report/ContactServices/ListContactsService.ts.html b/backend/coverage/lcov-report/ContactServices/ListContactsService.ts.html index 21dbff4..7a12096 100644 --- a/backend/coverage/lcov-report/ContactServices/ListContactsService.ts.html +++ b/backend/coverage/lcov-report/ContactServices/ListContactsService.ts.html @@ -214,7 +214,7 @@ diff --git a/backend/coverage/lcov-report/ContactServices/ShowContactService.ts.html b/backend/coverage/lcov-report/ContactServices/ShowContactService.ts.html index 4c94b72..0a4e69e 100644 --- a/backend/coverage/lcov-report/ContactServices/ShowContactService.ts.html +++ b/backend/coverage/lcov-report/ContactServices/ShowContactService.ts.html @@ -106,7 +106,7 @@ diff --git a/backend/coverage/lcov-report/ContactServices/UpdateContactService.ts.html b/backend/coverage/lcov-report/ContactServices/UpdateContactService.ts.html index 4976727..1c4d8fb 100644 --- a/backend/coverage/lcov-report/ContactServices/UpdateContactService.ts.html +++ b/backend/coverage/lcov-report/ContactServices/UpdateContactService.ts.html @@ -274,7 +274,7 @@ diff --git a/backend/coverage/lcov-report/ContactServices/index.html b/backend/coverage/lcov-report/ContactServices/index.html index b9b178b..2fd966c 100644 --- a/backend/coverage/lcov-report/ContactServices/index.html +++ b/backend/coverage/lcov-report/ContactServices/index.html @@ -155,7 +155,7 @@ diff --git a/backend/coverage/lcov-report/MessageServices/CreateMessageService.ts.html b/backend/coverage/lcov-report/MessageServices/CreateMessageService.ts.html index c26b978..8e5a7cc 100644 --- a/backend/coverage/lcov-report/MessageServices/CreateMessageService.ts.html +++ b/backend/coverage/lcov-report/MessageServices/CreateMessageService.ts.html @@ -187,7 +187,7 @@ diff --git a/backend/coverage/lcov-report/MessageServices/ListMessagesService.ts.html b/backend/coverage/lcov-report/MessageServices/ListMessagesService.ts.html index e91f094..119f887 100644 --- a/backend/coverage/lcov-report/MessageServices/ListMessagesService.ts.html +++ b/backend/coverage/lcov-report/MessageServices/ListMessagesService.ts.html @@ -250,7 +250,7 @@ diff --git a/backend/coverage/lcov-report/MessageServices/index.html b/backend/coverage/lcov-report/MessageServices/index.html index 7815105..18ac61a 100644 --- a/backend/coverage/lcov-report/MessageServices/index.html +++ b/backend/coverage/lcov-report/MessageServices/index.html @@ -110,7 +110,7 @@ diff --git a/backend/coverage/lcov-report/SettingServices/ListSettingsService.ts.html b/backend/coverage/lcov-report/SettingServices/ListSettingsService.ts.html index 0b2effd..0b2e482 100644 --- a/backend/coverage/lcov-report/SettingServices/ListSettingsService.ts.html +++ b/backend/coverage/lcov-report/SettingServices/ListSettingsService.ts.html @@ -91,7 +91,7 @@ diff --git a/backend/coverage/lcov-report/SettingServices/UpdateSettingService.ts.html b/backend/coverage/lcov-report/SettingServices/UpdateSettingService.ts.html index 7333233..deb7211 100644 --- a/backend/coverage/lcov-report/SettingServices/UpdateSettingService.ts.html +++ b/backend/coverage/lcov-report/SettingServices/UpdateSettingService.ts.html @@ -142,7 +142,7 @@ diff --git a/backend/coverage/lcov-report/SettingServices/index.html b/backend/coverage/lcov-report/SettingServices/index.html index 3974171..e487142 100644 --- a/backend/coverage/lcov-report/SettingServices/index.html +++ b/backend/coverage/lcov-report/SettingServices/index.html @@ -110,7 +110,7 @@ diff --git a/backend/coverage/lcov-report/TicketServices/CreateTicketService.ts.html b/backend/coverage/lcov-report/TicketServices/CreateTicketService.ts.html index 5664852..df5eb10 100644 --- a/backend/coverage/lcov-report/TicketServices/CreateTicketService.ts.html +++ b/backend/coverage/lcov-report/TicketServices/CreateTicketService.ts.html @@ -184,7 +184,7 @@ diff --git a/backend/coverage/lcov-report/TicketServices/DeleteTicketService.ts.html b/backend/coverage/lcov-report/TicketServices/DeleteTicketService.ts.html index 8f93a7d..194be02 100644 --- a/backend/coverage/lcov-report/TicketServices/DeleteTicketService.ts.html +++ b/backend/coverage/lcov-report/TicketServices/DeleteTicketService.ts.html @@ -118,7 +118,7 @@ diff --git a/backend/coverage/lcov-report/TicketServices/ListTicketsService.ts.html b/backend/coverage/lcov-report/TicketServices/ListTicketsService.ts.html index 6634ab9..7b88672 100644 --- a/backend/coverage/lcov-report/TicketServices/ListTicketsService.ts.html +++ b/backend/coverage/lcov-report/TicketServices/ListTicketsService.ts.html @@ -496,7 +496,7 @@ diff --git a/backend/coverage/lcov-report/TicketServices/ShowTicketService.ts.html b/backend/coverage/lcov-report/TicketServices/ShowTicketService.ts.html index 90682db..d3be7c0 100644 --- a/backend/coverage/lcov-report/TicketServices/ShowTicketService.ts.html +++ b/backend/coverage/lcov-report/TicketServices/ShowTicketService.ts.html @@ -154,7 +154,7 @@ diff --git a/backend/coverage/lcov-report/TicketServices/UpdateTicketService.ts.html b/backend/coverage/lcov-report/TicketServices/UpdateTicketService.ts.html index 7a19f4a..7ce5caa 100644 --- a/backend/coverage/lcov-report/TicketServices/UpdateTicketService.ts.html +++ b/backend/coverage/lcov-report/TicketServices/UpdateTicketService.ts.html @@ -250,7 +250,7 @@ diff --git a/backend/coverage/lcov-report/TicketServices/index.html b/backend/coverage/lcov-report/TicketServices/index.html index e72a4f4..06cdc44 100644 --- a/backend/coverage/lcov-report/TicketServices/index.html +++ b/backend/coverage/lcov-report/TicketServices/index.html @@ -155,7 +155,7 @@ diff --git a/backend/coverage/lcov-report/UserServices/AuthUserSerice.ts.html b/backend/coverage/lcov-report/UserServices/AuthUserSerice.ts.html index a4153ef..d516254 100644 --- a/backend/coverage/lcov-report/UserServices/AuthUserSerice.ts.html +++ b/backend/coverage/lcov-report/UserServices/AuthUserSerice.ts.html @@ -199,7 +199,7 @@ diff --git a/backend/coverage/lcov-report/UserServices/CreateUserService.ts.html b/backend/coverage/lcov-report/UserServices/CreateUserService.ts.html index 07d89be..d709a9d 100644 --- a/backend/coverage/lcov-report/UserServices/CreateUserService.ts.html +++ b/backend/coverage/lcov-report/UserServices/CreateUserService.ts.html @@ -23,30 +23,30 @@
- 0% + 100% Statements - 0/70 + 67/67
- 0% + 71.88% Branches - 0/1 + 23/32
- 0% + 90% Functions - 0/1 + 9/10
- 0% + 100% Lines - 0/70 + 67/67
@@ -55,7 +55,7 @@ Press n or j to go to the next uncovered block, b, p or k for the previous block.

-
+
1 2 @@ -124,149 +124,140 @@ 65 66 67 -68 -69 -70 -71  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
import * as Yup from "yup";
-
-import AppError from "../../errors/AppError";
-import User from "../../models/User";
-
-interface Request {
-  email: string;
-  password: string;
-  name: string;
-  profile?: string;
-}
-
-interface Response {
-  email: string;
-  name: string;
-  id: number;
-  profile: string;
-}
-
-const CreateUserService = async ({
-  email,
-  password,
-  name,
-  profile = "admin"
-}: Request): Promise<Response> => {
-  const schema = Yup.object().shape({
-    name: Yup.string().required().min(2),
-    email: Yup.string()
-      .email()
-      .required()
-      .test(
-        "Check-email",
-        "An user with this email already exists.",
-        async value => {
-          if (value) {
-            const emailExists = await User.findOne({
-              where: { email: value }
-            });
-            return !emailExists;
-          }
-          return false;
-        }
-      ),
-    password: Yup.string().required().min(5)
-  });
-
-  try {
-    await schema.validate({ email, password, name });
-  } catch (err) {
-    throw new AppError(err.message);
-  }
-
-  const user = await User.create({
-    email,
-    password,
-    name,
-    profile
-  });
-
-  const serializedUser = {
-    id: user.id,
-    name: user.name,
-    email: user.email,
-    profile: user.profile
-  };
-
-  return serializedUser;
-};
-
-export default CreateUserService;
+68
1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +5x +4x +4x +5x +5x +5x +5x +5x +5x +5x +1x +1x +3x +3x +3x +3x +3x +3x +3x +3x +3x +3x +3x +3x +3x +3x +3x +3x +3x +1x +1x + 
import * as Yup from "yup";
+ 
+import AppError from "../../errors/AppError";
+import User from "../../models/User";
+ 
+interface Request {
+  email: string;
+  password: string;
+  name: string;
+  profile?: string;
+}
+ 
+interface Response {
+  email: string;
+  name: string;
+  id: number;
+  profile: string;
+}
+ 
+const CreateUserService = async ({
+  email,
+  password,
+  name,
+  profile = "admin"
+}: Request): Promise<Response> => {
+  const schema = Yup.object().shape({
+    name: Yup.string().required().min(2),
+    email: Yup.string()
+      .email()
+      .required()
+      .test(
+        "Check-email",
+        "An user with this email already exists.",
+        async value => {
+          const emailExists = await User.findOne({
+            where: { email: value! }
+          });
+          return !emailExists;
+        }
+      ),
+    password: Yup.string().required().min(5)
+  });
+ 
+  try {
+    await schema.validate({ email, password, name });
+  } catch (err) {
+    throw new AppError(err.message);
+  }
+ 
+  const user = await User.create({
+    email,
+    password,
+    name,
+    profile
+  });
+ 
+  const serializedUser = {
+    id: user.id,
+    name: user.name,
+    email: user.email,
+    profile: user.profile
+  };
+ 
+  return serializedUser;
+};
+ 
+export default CreateUserService;
  
@@ -274,7 +265,7 @@ diff --git a/backend/coverage/lcov-report/UserServices/DeleteUserService.ts.html b/backend/coverage/lcov-report/UserServices/DeleteUserService.ts.html index 3f75955..8d97b8e 100644 --- a/backend/coverage/lcov-report/UserServices/DeleteUserService.ts.html +++ b/backend/coverage/lcov-report/UserServices/DeleteUserService.ts.html @@ -142,7 +142,7 @@ diff --git a/backend/coverage/lcov-report/UserServices/ListUsersService.ts.html b/backend/coverage/lcov-report/UserServices/ListUsersService.ts.html index eb6a0e5..49a47f2 100644 --- a/backend/coverage/lcov-report/UserServices/ListUsersService.ts.html +++ b/backend/coverage/lcov-report/UserServices/ListUsersService.ts.html @@ -217,7 +217,7 @@ diff --git a/backend/coverage/lcov-report/UserServices/ShowUserService.ts.html b/backend/coverage/lcov-report/UserServices/ShowUserService.ts.html index a128fb0..5419f16 100644 --- a/backend/coverage/lcov-report/UserServices/ShowUserService.ts.html +++ b/backend/coverage/lcov-report/UserServices/ShowUserService.ts.html @@ -112,7 +112,7 @@ diff --git a/backend/coverage/lcov-report/UserServices/UpdateUserService.ts.html b/backend/coverage/lcov-report/UserServices/UpdateUserService.ts.html index 7b3c3ee..47c66fd 100644 --- a/backend/coverage/lcov-report/UserServices/UpdateUserService.ts.html +++ b/backend/coverage/lcov-report/UserServices/UpdateUserService.ts.html @@ -268,7 +268,7 @@ diff --git a/backend/coverage/lcov-report/UserServices/index.html b/backend/coverage/lcov-report/UserServices/index.html index b6e59a8..dc5633c 100644 --- a/backend/coverage/lcov-report/UserServices/index.html +++ b/backend/coverage/lcov-report/UserServices/index.html @@ -23,30 +23,30 @@
- 0% + 24.54% Statements - 0/276 + 67/273
- 0% + 62.16% Branches - 0/6 + 23/37
- 0% + 60% Functions - 0/6 + 9/15
- 0% + 24.54% Lines - 0/276 + 67/273
@@ -88,18 +88,18 @@ - CreateUserService.ts - -
+ CreateUserService.ts + +
- 0% - 0/70 - 0% - 0/1 - 0% - 0/1 - 0% - 0/70 + 100% + 67/67 + 71.88% + 23/32 + 90% + 9/10 + 100% + 67/67 @@ -170,7 +170,7 @@
diff --git a/backend/coverage/lcov-report/WbotServices/CheckIsValidContact.ts.html b/backend/coverage/lcov-report/WbotServices/CheckIsValidContact.ts.html index 87ab9e5..2df9c6c 100644 --- a/backend/coverage/lcov-report/WbotServices/CheckIsValidContact.ts.html +++ b/backend/coverage/lcov-report/WbotServices/CheckIsValidContact.ts.html @@ -136,7 +136,7 @@ diff --git a/backend/coverage/lcov-report/WbotServices/DeleteWhatsAppMessage.ts.html b/backend/coverage/lcov-report/WbotServices/DeleteWhatsAppMessage.ts.html index 79b1993..273495d 100644 --- a/backend/coverage/lcov-report/WbotServices/DeleteWhatsAppMessage.ts.html +++ b/backend/coverage/lcov-report/WbotServices/DeleteWhatsAppMessage.ts.html @@ -172,7 +172,7 @@ diff --git a/backend/coverage/lcov-report/WbotServices/GetProfilePicUrl.ts.html b/backend/coverage/lcov-report/WbotServices/GetProfilePicUrl.ts.html index e85e944..3f7311f 100644 --- a/backend/coverage/lcov-report/WbotServices/GetProfilePicUrl.ts.html +++ b/backend/coverage/lcov-report/WbotServices/GetProfilePicUrl.ts.html @@ -106,7 +106,7 @@ diff --git a/backend/coverage/lcov-report/WbotServices/ImportContactsService.ts.html b/backend/coverage/lcov-report/WbotServices/ImportContactsService.ts.html index b62f234..a845b8a 100644 --- a/backend/coverage/lcov-report/WbotServices/ImportContactsService.ts.html +++ b/backend/coverage/lcov-report/WbotServices/ImportContactsService.ts.html @@ -193,7 +193,7 @@ diff --git a/backend/coverage/lcov-report/WbotServices/SendWhatsAppMedia.ts.html b/backend/coverage/lcov-report/WbotServices/SendWhatsAppMedia.ts.html index 7df6d3a..dbd1fb0 100644 --- a/backend/coverage/lcov-report/WbotServices/SendWhatsAppMedia.ts.html +++ b/backend/coverage/lcov-report/WbotServices/SendWhatsAppMedia.ts.html @@ -178,7 +178,7 @@ diff --git a/backend/coverage/lcov-report/WbotServices/SendWhatsAppMessage.ts.html b/backend/coverage/lcov-report/WbotServices/SendWhatsAppMessage.ts.html index 15a7777..078168e 100644 --- a/backend/coverage/lcov-report/WbotServices/SendWhatsAppMessage.ts.html +++ b/backend/coverage/lcov-report/WbotServices/SendWhatsAppMessage.ts.html @@ -157,7 +157,7 @@ diff --git a/backend/coverage/lcov-report/WbotServices/StartWhatsAppSessions.ts.html b/backend/coverage/lcov-report/WbotServices/StartWhatsAppSessions.ts.html index fc3ed8a..115ddeb 100644 --- a/backend/coverage/lcov-report/WbotServices/StartWhatsAppSessions.ts.html +++ b/backend/coverage/lcov-report/WbotServices/StartWhatsAppSessions.ts.html @@ -118,7 +118,7 @@ diff --git a/backend/coverage/lcov-report/WbotServices/index.html b/backend/coverage/lcov-report/WbotServices/index.html index 2596043..dbc93c5 100644 --- a/backend/coverage/lcov-report/WbotServices/index.html +++ b/backend/coverage/lcov-report/WbotServices/index.html @@ -215,7 +215,7 @@ diff --git a/backend/coverage/lcov-report/WbotServices/wbotMessageListener.ts.html b/backend/coverage/lcov-report/WbotServices/wbotMessageListener.ts.html index 30a16f0..d2df189 100644 --- a/backend/coverage/lcov-report/WbotServices/wbotMessageListener.ts.html +++ b/backend/coverage/lcov-report/WbotServices/wbotMessageListener.ts.html @@ -1063,7 +1063,7 @@ diff --git a/backend/coverage/lcov-report/WbotServices/wbotMonitor.ts.html b/backend/coverage/lcov-report/WbotServices/wbotMonitor.ts.html index 72601d9..08200e8 100644 --- a/backend/coverage/lcov-report/WbotServices/wbotMonitor.ts.html +++ b/backend/coverage/lcov-report/WbotServices/wbotMonitor.ts.html @@ -325,7 +325,7 @@ diff --git a/backend/coverage/lcov-report/WhatsappService/CreateWhatsAppService.ts.html b/backend/coverage/lcov-report/WhatsappService/CreateWhatsAppService.ts.html index 28109ff..9200530 100644 --- a/backend/coverage/lcov-report/WhatsappService/CreateWhatsAppService.ts.html +++ b/backend/coverage/lcov-report/WhatsappService/CreateWhatsAppService.ts.html @@ -262,7 +262,7 @@ diff --git a/backend/coverage/lcov-report/WhatsappService/DeleteWhatsAppService.ts.html b/backend/coverage/lcov-report/WhatsappService/DeleteWhatsAppService.ts.html index bf32354..6af4799 100644 --- a/backend/coverage/lcov-report/WhatsappService/DeleteWhatsAppService.ts.html +++ b/backend/coverage/lcov-report/WhatsappService/DeleteWhatsAppService.ts.html @@ -112,7 +112,7 @@ diff --git a/backend/coverage/lcov-report/WhatsappService/ListWhatsAppsService.ts.html b/backend/coverage/lcov-report/WhatsappService/ListWhatsAppsService.ts.html index e89130a..21c87ea 100644 --- a/backend/coverage/lcov-report/WhatsappService/ListWhatsAppsService.ts.html +++ b/backend/coverage/lcov-report/WhatsappService/ListWhatsAppsService.ts.html @@ -91,7 +91,7 @@ diff --git a/backend/coverage/lcov-report/WhatsappService/ShowWhatsAppService.ts.html b/backend/coverage/lcov-report/WhatsappService/ShowWhatsAppService.ts.html index f3acd55..6ddf946 100644 --- a/backend/coverage/lcov-report/WhatsappService/ShowWhatsAppService.ts.html +++ b/backend/coverage/lcov-report/WhatsappService/ShowWhatsAppService.ts.html @@ -112,7 +112,7 @@ diff --git a/backend/coverage/lcov-report/WhatsappService/UpdateWhatsAppService.ts.html b/backend/coverage/lcov-report/WhatsappService/UpdateWhatsAppService.ts.html index 30738d0..2050076 100644 --- a/backend/coverage/lcov-report/WhatsappService/UpdateWhatsAppService.ts.html +++ b/backend/coverage/lcov-report/WhatsappService/UpdateWhatsAppService.ts.html @@ -262,7 +262,7 @@ diff --git a/backend/coverage/lcov-report/WhatsappService/index.html b/backend/coverage/lcov-report/WhatsappService/index.html index 7aa1e65..2e5dbbe 100644 --- a/backend/coverage/lcov-report/WhatsappService/index.html +++ b/backend/coverage/lcov-report/WhatsappService/index.html @@ -155,7 +155,7 @@ diff --git a/backend/coverage/lcov-report/index.html b/backend/coverage/lcov-report/index.html index e176f4d..1056375 100644 --- a/backend/coverage/lcov-report/index.html +++ b/backend/coverage/lcov-report/index.html @@ -23,30 +23,30 @@
- 0% + 3.85% Statements - 0/1742 + 67/1739
- 0% + 34.85% Branches - 0/35 + 23/66
- 0% + 20.45% Functions - 0/35 + 9/44
- 0% + 3.85% Lines - 0/1742 + 67/1739
@@ -149,17 +149,17 @@ UserServices - -
+ +
- 0% - 0/276 - 0% - 0/6 - 0% - 0/6 - 0% - 0/276 + 24.54% + 67/273 + 62.16% + 23/37 + 60% + 9/15 + 24.54% + 67/273 @@ -200,7 +200,7 @@
diff --git a/backend/coverage/lcov.info b/backend/coverage/lcov.info index 6eb2e70..ae494da 100644 --- a/backend/coverage/lcov.info +++ b/backend/coverage/lcov.info @@ -906,85 +906,131 @@ BRH:0 end_of_record TN: SF:src/services/UserServices/CreateUserService.ts -FN:1,(empty-report) -FNF:1 -FNH:0 -FNDA:0,(empty-report) -DA:1,0 -DA:2,0 -DA:3,0 -DA:4,0 -DA:5,0 -DA:6,0 -DA:7,0 -DA:8,0 -DA:9,0 -DA:10,0 -DA:11,0 -DA:12,0 -DA:13,0 -DA:14,0 -DA:15,0 -DA:16,0 -DA:17,0 -DA:18,0 -DA:19,0 -DA:20,0 -DA:21,0 -DA:22,0 -DA:23,0 -DA:24,0 -DA:25,0 -DA:26,0 -DA:27,0 -DA:28,0 -DA:29,0 -DA:30,0 -DA:31,0 -DA:32,0 -DA:33,0 -DA:34,0 -DA:35,0 -DA:36,0 -DA:37,0 -DA:38,0 -DA:39,0 -DA:40,0 -DA:41,0 -DA:42,0 -DA:43,0 -DA:44,0 -DA:45,0 -DA:46,0 -DA:47,0 -DA:48,0 -DA:49,0 -DA:50,0 -DA:51,0 -DA:52,0 -DA:53,0 -DA:54,0 -DA:55,0 -DA:56,0 -DA:57,0 -DA:58,0 -DA:59,0 -DA:60,0 -DA:61,0 -DA:62,0 -DA:63,0 -DA:64,0 -DA:65,0 -DA:66,0 -DA:67,0 -DA:68,0 -DA:69,0 -DA:70,0 -LF:70 -LH:0 -BRDA:1,0,0,0 -BRF:1 -BRH:0 +FN:67,Object. +FN:67,Object..__setModuleDefault +FN:67,Object..__importStar +FN:67,Object..__awaiter +FN:67,adopt +FN:67,fulfilled +FN:67,rejected +FN:67,step +FN:67,Object..__importDefault +FN:20,CreateUserService +FNF:10 +FNH:9 +FNDA:1,Object. +FNDA:0,Object..__setModuleDefault +FNDA:1,Object..__importStar +FNDA:10,Object..__awaiter +FNDA:13,adopt +FNDA:10,fulfilled +FNDA:1,rejected +FNDA:20,step +FNDA:2,Object..__importDefault +FNDA:5,CreateUserService +DA:1,1 +DA:2,1 +DA:3,1 +DA:4,1 +DA:5,1 +DA:6,1 +DA:7,1 +DA:8,1 +DA:9,1 +DA:10,1 +DA:11,1 +DA:12,1 +DA:13,1 +DA:14,1 +DA:15,1 +DA:16,1 +DA:17,1 +DA:18,1 +DA:19,1 +DA:20,1 +DA:21,5 +DA:22,5 +DA:23,5 +DA:24,5 +DA:25,5 +DA:26,5 +DA:27,5 +DA:28,5 +DA:29,5 +DA:30,5 +DA:31,5 +DA:32,5 +DA:33,5 +DA:34,5 +DA:35,5 +DA:36,5 +DA:37,5 +DA:38,4 +DA:39,4 +DA:40,5 +DA:41,5 +DA:42,5 +DA:43,5 +DA:44,5 +DA:45,5 +DA:46,5 +DA:47,1 +DA:48,1 +DA:49,3 +DA:50,3 +DA:51,3 +DA:52,3 +DA:53,3 +DA:54,3 +DA:55,3 +DA:56,3 +DA:57,3 +DA:58,3 +DA:59,3 +DA:60,3 +DA:61,3 +DA:62,3 +DA:63,3 +DA:64,3 +DA:65,3 +DA:66,1 +DA:67,1 +LF:67 +LH:67 +BRDA:67,0,0,1 +BRDA:67,1,0,1 +BRDA:67,2,0,0 +BRDA:67,3,0,0 +BRDA:67,4,0,0 +BRDA:67,5,0,0 +BRDA:67,6,0,0 +BRDA:67,7,0,1 +BRDA:67,8,0,0 +BRDA:67,9,0,10 +BRDA:67,10,0,13 +BRDA:67,11,0,5 +BRDA:67,12,0,8 +BRDA:67,13,0,8 +BRDA:67,14,0,10 +BRDA:67,15,0,10 +BRDA:67,16,0,0 +BRDA:67,17,0,1 +BRDA:67,18,0,0 +BRDA:67,19,0,20 +BRDA:67,20,0,7 +BRDA:67,21,0,13 +BRDA:67,22,0,2 +BRDA:67,23,0,0 +BRDA:20,24,0,5 +BRDA:25,25,0,5 +BRDA:45,26,0,3 +BRDA:46,27,0,1 +BRDA:48,28,0,3 +BRDA:34,29,0,5 +BRDA:34,30,0,5 +BRDA:37,31,0,4 +BRF:32 +BRH:23 end_of_record TN: SF:src/services/UserServices/DeleteUserService.ts diff --git a/backend/jest.config.js b/backend/jest.config.js index 76c1b57..14fdd5e 100644 --- a/backend/jest.config.js +++ b/backend/jest.config.js @@ -8,7 +8,7 @@ module.exports = { // automock: false, // Stop running tests after `n` failures - bail: 1, + // bail: 0, // The directory where Jest should store its cached dependency information // cacheDirectory: "/tmp/jest_rs", diff --git a/backend/package.json b/backend/package.json index 58ce482..dc3bc44 100644 --- a/backend/package.json +++ b/backend/package.json @@ -8,7 +8,7 @@ "watch": "tsc -w", "start": "nodemon dist/server.js", "dev:server": "ts-node-dev --respawn --transpile-only --ignore node_modules src/server.ts", - "pretest": "NODE_ENV=test sequelize db:migrate", + "pretest": "NODE_ENV=test sequelize db:migrate && NODE_ENV=test sequelize db:seed:all", "test": "NODE_ENV=test jest", "posttest": "NODE_ENV=test sequelize db:migrate:undo:all" }, @@ -42,11 +42,14 @@ "@types/cookie-parser": "^1.4.2", "@types/cors": "^2.8.7", "@types/express": "^4.17.8", + "@types/factory-girl": "^5.0.2", + "@types/faker": "^5.1.3", "@types/jest": "^26.0.15", "@types/jsonwebtoken": "^8.5.0", "@types/multer": "^1.4.4", "@types/node": "^14.11.8", "@types/socket.io": "^2.1.11", + "@types/supertest": "^2.0.10", "@types/validator": "^13.1.0", "@types/yup": "^0.29.8", "@typescript-eslint/eslint-plugin": "^4.4.0", @@ -57,9 +60,12 @@ "eslint-import-resolver-typescript": "^2.3.0", "eslint-plugin-import": "^2.22.1", "eslint-plugin-prettier": "^3.1.4", + "factory-girl": "^5.0.4", + "faker": "^5.1.0", "jest": "^26.6.0", "nodemon": "^2.0.4", "prettier": "^2.1.2", + "supertest": "^5.0.0", "ts-jest": "^26.4.1", "ts-node-dev": "^1.0.0-pre.63", "typescript": "^4.0.3" diff --git a/backend/src/__tests__/CreateUserService.spec.ts b/backend/src/__tests__/CreateUserService.spec.ts deleted file mode 100644 index 55a66bc..0000000 --- a/backend/src/__tests__/CreateUserService.spec.ts +++ /dev/null @@ -1,3 +0,0 @@ -test("sum two number", () => { - expect(1 + 2).toBe(3); -}); diff --git a/backend/src/__tests__/unit/CreateUserService.spec.ts b/backend/src/__tests__/unit/CreateUserService.spec.ts new file mode 100644 index 0000000..bb9b858 --- /dev/null +++ b/backend/src/__tests__/unit/CreateUserService.spec.ts @@ -0,0 +1,41 @@ +import { disconnect, truncate } from "../utils/database"; +// import User from "../../models/User"; +// import app from "../../app"; +import CreateUserService from "../../services/UserServices/CreateUserService"; +import AppError from "../../errors/AppError"; + +describe("User", () => { + beforeEach(async () => { + await truncate(); + }); + + afterAll(async () => { + await disconnect(); + }); + + it("should be able to create a new user", async () => { + const user = await CreateUserService({ + name: "dasdas", + email: "tesssst@test.com", + password: "passwo22221131rd" + }); + + expect(user).toHaveProperty("id"); + }); + + it("should not be able to create a user with duplicated email", async () => { + await CreateUserService({ + name: "dasdas", + email: "tesssst@test.com", + password: "passwo22221131rd" + }); + + expect( + CreateUserService({ + name: "dasdas", + email: "tesssst@test.com", + password: "passwo22221131rd" + }) + ).rejects.toBeInstanceOf(AppError); + }); +}); diff --git a/backend/src/__tests__/utils/database.ts b/backend/src/__tests__/utils/database.ts new file mode 100644 index 0000000..0332c63 --- /dev/null +++ b/backend/src/__tests__/utils/database.ts @@ -0,0 +1,11 @@ +import database from "../../database"; + +const truncate = async (): Promise => { + await database.sync({ force: true }); +}; + +const disconnect = async (): Promise => { + return database.connectionManager.close(); +}; + +export { truncate, disconnect }; diff --git a/backend/src/app.ts b/backend/src/app.ts new file mode 100644 index 0000000..c0740de --- /dev/null +++ b/backend/src/app.ts @@ -0,0 +1,44 @@ +import "./bootstrap"; +import "reflect-metadata"; +import "express-async-errors"; +import express, { Request, Response, NextFunction } from "express"; +import cors from "cors"; +import cookieParser from "cookie-parser"; +import multer from "multer"; +import * as Sentry from "@sentry/node"; + +import "./database"; +import uploadConfig from "./config/upload"; +import AppError from "./errors/AppError"; +import routes from "./routes"; + +Sentry.init({ dsn: process.env.SENTRY_DSN }); + +const upload = multer(uploadConfig); +const app = express(); + +app.use( + cors({ + credentials: true, + origin: process.env.FRONTEND_URL + }) +); +app.use(cookieParser()); +app.use(express.json()); +app.use(Sentry.Handlers.requestHandler()); +app.use(upload.single("media")); +app.use("/public", express.static(uploadConfig.directory)); +app.use(routes); + +app.use(Sentry.Handlers.errorHandler()); + +app.use(async (err: Error, req: Request, res: Response, _: NextFunction) => { + if (err instanceof AppError) { + return res.status(err.statusCode).json({ error: err.message }); + } + + console.error(err); + return res.status(500).json({ error: "Internal server error" }); +}); + +export default app; diff --git a/backend/src/server.ts b/backend/src/server.ts index e090f7f..53c4065 100644 --- a/backend/src/server.ts +++ b/backend/src/server.ts @@ -1,51 +1,10 @@ -import "./bootstrap"; -import "reflect-metadata"; -import "express-async-errors"; -import express, { Request, Response, NextFunction } from "express"; -import cors from "cors"; -import cookieParser from "cookie-parser"; -import multer from "multer"; -import * as Sentry from "@sentry/node"; - -import "./database"; -import uploadConfig from "./config/upload"; -import AppError from "./errors/AppError"; -import routes from "./routes"; +import app from "./app"; import { initIO } from "./libs/socket"; import { StartWhatsAppSessions } from "./services/WbotServices/StartWhatsAppSessions"; -Sentry.init({ dsn: process.env.SENTRY_DSN }); - -const upload = multer(uploadConfig); -const app = express(); - -app.use( - cors({ - credentials: true, - origin: process.env.FRONTEND_URL - }) -); -app.use(cookieParser()); -app.use(express.json()); -app.use(Sentry.Handlers.requestHandler()); -app.use(upload.single("media")); -app.use("/public", express.static(uploadConfig.directory)); -app.use(routes); - const server = app.listen(process.env.PORT, () => { console.log(`Server started on port: ${process.env.PORT}`); }); initIO(server); StartWhatsAppSessions(); - -app.use(Sentry.Handlers.errorHandler()); - -app.use(async (err: Error, req: Request, res: Response, _: NextFunction) => { - if (err instanceof AppError) { - return res.status(err.statusCode).json({ error: err.message }); - } - - console.error(err); - return res.status(500).json({ error: "Internal server error" }); -}); diff --git a/backend/src/services/UserServices/CreateUserService.ts b/backend/src/services/UserServices/CreateUserService.ts index 531b935..c48b6d0 100644 --- a/backend/src/services/UserServices/CreateUserService.ts +++ b/backend/src/services/UserServices/CreateUserService.ts @@ -32,13 +32,10 @@ const CreateUserService = async ({ "Check-email", "An user with this email already exists.", async value => { - if (value) { - const emailExists = await User.findOne({ - where: { email: value } - }); - return !emailExists; - } - return false; + const emailExists = await User.findOne({ + where: { email: value! } + }); + return !emailExists; } ), password: Yup.string().required().min(5)