Skip to content
This repository was archived by the owner on Jan 14, 2024. It is now read-only.

Commit e2d2a92

Browse files
author
Dedekind561
committed
tweak test suites to be more readable
1 parent 5486c55 commit e2d2a92

File tree

1 file changed

+77
-62
lines changed

1 file changed

+77
-62
lines changed

mandatory/2-function-creation.js

Lines changed: 77 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -49,93 +49,108 @@ function countReverse(number) {}
4949

5050
/* ======= TESTS - DO NOT MODIFY ===== */
5151

52-
test("isAcceptableUser function returns true if over 18 and logged in", () => {
53-
expect(isAcceptableUser(21, true)).toEqual(true);
54-
});
52+
describe("isAcceptableUser", () => {
53+
test("returns true if over 18 and logged in", () => {
54+
expect(isAcceptableUser(21, true)).toEqual(true);
55+
});
5556

56-
test("isAcceptableUser function returns true if 18 and logged in", () => {
57-
expect(isAcceptableUser(18, true)).toEqual(true);
58-
});
57+
test("returns true if 18 and logged in", () => {
58+
expect(isAcceptableUser(18, true)).toEqual(true);
59+
});
5960

60-
test("isAcceptableUser function returns false if under 18 and logged in", () => {
61-
expect(isAcceptableUser(17, true)).toEqual(false);
62-
});
61+
test("returns false if under 18 and logged in", () => {
62+
expect(isAcceptableUser(17, true)).toEqual(false);
63+
});
6364

64-
test("isAcceptableUser function returns false if over 18 and not logged in", () => {
65-
expect(isAcceptableUser(21, false)).toEqual(false);
65+
test("returns false if over 18 and not logged in", () => {
66+
expect(isAcceptableUser(21, false)).toEqual(false);
67+
});
6668
});
6769

68-
test("applyDiscount function returns price with 5% discount", () => {
69-
expect(applyDiscount(120)).toEqual(114);
70-
});
70+
describe("applyDiscount", () => {
71+
test("returns price with 5% discount", () => {
72+
expect(applyDiscount(120)).toEqual(114);
73+
});
7174

72-
test("applyDiscount function returns price with 10% discount", () => {
73-
expect(applyDiscount(280)).toEqual(252);
75+
test("returns price with 10% discount", () => {
76+
expect(applyDiscount(280)).toEqual(252);
77+
});
7478
});
7579

76-
test("printOddNumbers function prints odd numbers between 1 and 2", () => {
77-
expectprintOddNumbersToLog([1], 2);
78-
});
80+
describe("printOddNumbers", () => {
81+
test("printOddNumbers function prints odd numbers between 1 and 2", () => {
82+
const consoleLogSpy = jest.spyOn(console, "log");
83+
printOddNumbers(2);
84+
85+
expect(consoleLogSpy).toBeCalledWith(1);
86+
consoleLogSpy.mockRestore();
87+
});
88+
89+
test("printOddNumbers function prints odd numbers between 1 and 10", () => {
90+
const consoleLogSpy = jest.spyOn(console, "log");
7991

80-
test("printOddNumbers function prints odd numbers between 1 and 10", () => {
81-
expectprintOddNumbersToLog([1, 3, 5, 7, 9], 10);
92+
printOddNumbers(10);
93+
expect(consoleLogSpy).toBeCalledWith(1);
94+
expect(consoleLogSpy).toBeCalledWith(3);
95+
expect(consoleLogSpy).toBeCalledWith(5);
96+
expect(consoleLogSpy).toBeCalledWith(7);
97+
expect(consoleLogSpy).toBeCalledWith(9);
98+
99+
consoleLogSpy.mockRestore();
100+
});
82101
});
83102

84-
function expectprintOddNumbersToLog(expectedValues, limit) {
85-
const consoleLogSpy = jest.spyOn(console, "log");
86-
printOddNumbers(limit);
87-
expect(consoleLogSpy).toBeCalledTimes(expectedValues.length);
88-
expectedValues.forEach((value, i) => {
89-
expect(consoleLogSpy).nthCalledWith(i + 1, value);
103+
describe("buyTwoGetTheCheapestFree", () => {
104+
test("buyTwoGetTheCheapestFree function returns first price when it is largest", () => {
105+
expect(buyTwoGetTheCheapestFree(700, 500)).toEqual(700);
90106
});
91-
consoleLogSpy.mockRestore();
92-
}
93107

94-
test("buyTwoGetTheCheapestFree function returns first price when it is largest", () => {
95-
expect(buyTwoGetTheCheapestFree(700, 500)).toEqual(700);
108+
test("buyTwoGetTheCheapestFree function returns second price when it is largest", () => {
109+
expect(buyTwoGetTheCheapestFree(500, 700)).toEqual(700);
110+
});
96111
});
97112

98-
test("buyTwoGetTheCheapestFree function returns second price when it is largest", () => {
99-
expect(buyTwoGetTheCheapestFree(500, 700)).toEqual(700);
100-
});
113+
describe("canRegister", () => {
114+
test("returns in case of a person of age 7", () => {
115+
expect(canRegister(7)).toEqual("You Are Too Young To Register");
116+
});
101117

102-
test("(canRegister function returns in case of a person of age 7", () => {
103-
expect(canRegister(7)).toEqual("You Are Too Young To Register");
104-
});
118+
test("returns in case of a person of age 12", () => {
119+
expect(canRegister(12)).toEqual("You Are Too Young To Register");
120+
});
105121

106-
test("canRegister function returns in case of a person of age 12", () => {
107-
expect(canRegister(12)).toEqual("You Are Too Young To Register");
108-
});
122+
test("returns in case of a person of age 13", () => {
123+
expect(canRegister(13)).toEqual("You Can Register");
124+
});
109125

110-
test("canRegister function returns in case of a person of age 13", () => {
111-
expect(canRegister(13)).toEqual("You Can Register");
112-
});
126+
test("returns in case of a person of age 89", () => {
127+
expect(canRegister(89)).toEqual("You Can Register");
128+
});
113129

114-
test("canRegister function returns in case of a person of age 89", () => {
115-
expect(canRegister(89)).toEqual("You Can Register");
116-
});
130+
test("returns in case of a person of age 90", () => {
131+
expect(canRegister(90)).toEqual("You Don't Need To Register");
132+
});
117133

118-
test("canRegister function returns in case of a person of age 90", () => {
119-
expect(canRegister(90)).toEqual("You Don't Need To Register");
134+
test("returns in case of a person of age 112", () => {
135+
expect(canRegister(112)).toEqual("You Don't Need To Register");
136+
});
120137
});
121138

122-
test("canRegister function returns in case of a person of age 112", () => {
123-
expect(canRegister(112)).toEqual("You Don't Need To Register");
124-
});
139+
describe("countReverse", () => {
140+
test("countReverse function logs values from 7 to 1", () => {
141+
const consoleLogSpy = jest.spyOn(console, "log");
125142

126-
test("countReverse function logs values from 7 to 1", () => {
127-
expectcountReverseToLog([7, 6, 5, 4, 3, 2, 1], 7);
128-
});
143+
expect(consoleLogSpy).toBeCalledWith(7);
144+
expect(consoleLogSpy).toBeCalledWith(6);
145+
expect(consoleLogSpy).toBeCalledWith(5);
146+
expect(consoleLogSpy).toBeCalledWith(4);
147+
expect(consoleLogSpy).toBeCalledWith(3);
148+
expect(consoleLogSpy).toBeCalledWith(2);
149+
expect(consoleLogSpy).toBeCalledWith(1);
129150

130-
function expectcountReverseToLog(expectedValues, start) {
131-
const consoleLogSpy = jest.spyOn(console, "log");
132-
countReverse(start);
133-
expect(consoleLogSpy).toBeCalledTimes(expectedValues.length);
134-
expectedValues.forEach((value, i) => {
135-
expect(consoleLogSpy).nthCalledWith(i + 1, value);
151+
consoleLogSpy.mockRestore();
136152
});
137-
consoleLogSpy.mockRestore();
138-
}
153+
});
139154

140155
/*
141156
CHECK OUT solutions.md FOR MORE INFO ON OUR SOLUTION

0 commit comments

Comments
 (0)