g.test.js 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. const calculateCredit = require('./1kredit.js');
  2. test('Цена: 2000000, Месяцев: 5', () => {
  3. const vehiclePrice = 2000000;
  4. const loanTerm = 5;
  5. const expectedResult = {
  6. monthlyPayment: '415000.00',
  7. totalInterest: '75000.00',
  8. totalPayment: 2075000.00
  9. };
  10. const result = calculateCredit(vehiclePrice, loanTerm);
  11. expect(result.monthlyPayment).toBe(expectedResult.monthlyPayment);
  12. expect(result.totalInterest).toBe(expectedResult.totalInterest);
  13. expect(result.totalPayment).toBe(expectedResult.totalPayment);
  14. });
  15. test('возвращает правильные значения для срока кредита в 6 месяцев', () => {
  16. const vehiclePrice = 1000000;
  17. const loanTerm = 6;
  18. const result = calculateCredit(vehiclePrice, loanTerm);
  19. expect(result.monthlyPayment).toBe('174166.67');
  20. expect(result.totalInterest).toBe('45000.02');
  21. expect(result.totalPayment).toBe(1045000.02);
  22. });
  23. const sendForm = require('./1sendForm.js');
  24. test('возвращает объект данных', () => {
  25. const name = 'Иван Иванов';
  26. const phone = '+79290390339';
  27. const date = '2024-03-15';
  28. const result = sendForm(name, phone, date);
  29. expect(result).toEqual({ name, phone, date });
  30. });
  31. const validateForm = require('./1testdrive.js');
  32. test('все поля заполнены правильно', () => {
  33. const name = 'Иван';
  34. const surname = 'Иванов';
  35. const phone = '89290390339';
  36. const email = 'ivan.ivanov@example.com';
  37. const password = 'password123';
  38. const result = validateForm(name, surname, phone, email, password);
  39. expect(result).toBe(true);
  40. });
  41. test('email введен некорректно', () => {
  42. expect(() => validateForm('Иван', 'Иванов', '89290390339', 'invalidemail', 'password123')).toThrowError("Введите корректный email.");
  43. });
  44. const generateRandomCode = require('./1generetion.js');
  45. test('возвращает код длиной 6 по умолчанию', () => {
  46. const code = generateRandomCode();
  47. expect(code).toHaveLength(6);
  48. });
  49. test('возвращает код заданной длины', () => {
  50. const code = generateRandomCode(4);
  51. expect(code).toHaveLength(4);
  52. });
  53. const checkForm = require('./1checkForm.js'); // Путь к вашему файлу checkForm.js
  54. test('все поля пароля заполнены правильно', () => {
  55. const oldPassword = 'oldpassword';
  56. const newPassword = 'newpassword123';
  57. const repeatPassword = 'newpassword123';
  58. const result = checkForm(oldPassword, newPassword, repeatPassword);
  59. expect(result).toBe(true);
  60. });
  61. test('новый и старый пароль не совпадают', () => {
  62. const oldPassword = 'oldpassword';
  63. const newPassword = 'newpassword123';
  64. const repeatPassword = 'wrongpassword';
  65. expect(() => checkForm(oldPassword, newPassword, repeatPassword)).toThrowError('Новый пароль и повторный пароль не совпадают!');
  66. });
  67. const checkDate = require('./1checkdata.js');
  68. test('введенная дата находится в прошлом', () => {
  69. const inputDate = '2023-12-31'; // Прошлое
  70. expect(() => checkDate(inputDate)).toThrowError("Дата должна быть больше или равна сегодняшней дате");
  71. });