Skip to content

Commit e0f819c

Browse files
authored
Merge pull request #32 from klmhyeonwoo/feature/utils-workspace-yeom
2 parents 5e7e6a4 + fbacf5b commit e0f819c

File tree

3 files changed

+200
-99
lines changed

3 files changed

+200
-99
lines changed
Lines changed: 37 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,43 @@
1+
import { describe, expect, test } from "vitest";
12
import subtract from ".";
2-
import { expect, test } from "vitest";
33

4-
test("2 - 1은 1이다.", () => {
5-
expect(subtract(2, 1)).toBe(1);
6-
});
4+
describe("subtract", () => {
5+
describe("기본 케이스", () => {
6+
test("두 양수를 올바르게 뺀다", () => {
7+
expect(subtract(10, 3)).toBe(7);
8+
});
79

8-
test("5 - 10 - 15는 -20이다.", () => {
9-
expect(subtract(5, 10, 15)).toBe(-20);
10-
});
10+
test("여러 숫자를 순서대로 뺀다", () => {
11+
expect(subtract(100, 10, 20)).toBe(70);
12+
});
1113

12-
test("-1 - (-2)는 1이다.", () => {
13-
expect(subtract(-1, -2)).toBe(1);
14-
});
14+
test("음수를 포함한 뺄셈을 올바르게 처리한다", () => {
15+
expect(subtract(5, -10)).toBe(15);
16+
expect(subtract(-5, 10)).toBe(-15);
17+
});
18+
});
19+
20+
describe("예외 케이스", () => {
21+
test("인수가 없을 때 0을 반환한다", () => {
22+
expect(subtract()).toBe(0);
23+
});
24+
25+
test("인수가 하나일 때 해당 숫자 자신을 반환한다", () => {
26+
expect(subtract(10)).toBe(10);
27+
expect(subtract(-5)).toBe(-5);
28+
});
29+
30+
test("0을 포함한 뺄셈을 올바르게 처리한다", () => {
31+
expect(subtract(10, 0)).toBe(10);
32+
expect(subtract(0, 10)).toBe(-10);
33+
});
34+
35+
test("부동소수점을 올바르게 처리한다", () => {
36+
expect(subtract(0.3, 0.1)).toBeCloseTo(0.2);
37+
});
1538

16-
test("인자 없는 경우 0을 반환한다.", () => {
17-
expect(subtract()).toBe(0);
39+
test("인수 중 NaN이 포함되면 NaN을 반환한다", () => {
40+
expect(subtract(10, 5, NaN, 2)).toBeNaN();
41+
});
42+
});
1843
});
Lines changed: 34 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,38 @@
11
import sum from ".";
2-
import { expect, test } from "vitest";
2+
import { describe, expect, test } from "vitest";
33

4-
test("1 + 2 + 3은 6이다.", () => {
5-
expect(sum(1, 2, 3)).toBe(6);
6-
});
4+
describe("sum", () => {
5+
describe("기본 케이스", () => {
6+
test("1 + 2 + 3은 6이다.", () => {
7+
expect(sum(1, 2, 3)).toBe(6);
8+
});
9+
10+
test("5 + 10 + 15는 30이다.", () => {
11+
expect(sum(5, 10, 15)).toBe(30);
12+
});
13+
});
14+
15+
describe("예외 케이스", () => {
16+
test("인수가 없을 때 0을 반환한다", () => {
17+
expect(sum()).toBe(0);
18+
});
19+
20+
test("인수가 하나일 때 해당 숫자 자신을 반환한다", () => {
21+
expect(sum(10)).toBe(10);
22+
expect(sum(-5)).toBe(-5);
23+
});
24+
25+
test("음수를 포함한 덧셈을 올바르게 처리한다", () => {
26+
expect(sum(-1, -2, -3)).toBe(-6);
27+
expect(sum(5, -10)).toBe(-5);
28+
});
29+
30+
test("부동소수점을 올바르게 처리한다", () => {
31+
expect(sum(0.1, 0.2)).toBeCloseTo(0.3);
32+
});
733

8-
test("5 + 10 + 15는 30이다.", () => {
9-
expect(sum(5, 10, 15)).toBe(30);
34+
test("인수 중 NaN이 포함되면 NaN을 반환한다", () => {
35+
expect(sum(1, 2, NaN, 4)).toBeNaN();
36+
});
37+
});
1038
});

0 commit comments

Comments
 (0)