From 28519098adeae791b01a4bb2a933e09dbdb5fe54 Mon Sep 17 00:00:00 2001 From: ywChen-NTUST Date: Thu, 29 Feb 2024 15:40:00 +0800 Subject: [PATCH 1/2] add unit test --- lab1/main_test.js | 60 ++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 52 insertions(+), 8 deletions(-) diff --git a/lab1/main_test.js b/lab1/main_test.js index 74a716b4..6f261741 100644 --- a/lab1/main_test.js +++ b/lab1/main_test.js @@ -2,22 +2,66 @@ const test = require('node:test'); const assert = require('assert'); const { MyClass, Student } = require('./main'); +const names = ['John', 'Jane', 'Doe', 'Smith']; + test("Test MyClass's addStudent", () => { - // TODO - throw new Error("Test not implemented"); + let myClass = new MyClass(); + assert.strictEqual(myClass.students.length, 0); + + let stdid = myClass.addStudent([]); + assert.strictEqual(stdid, -1); + + for(let i=0; i<100; i++){ + let stdid = myClass.addStudent(new Student()); + assert.strictEqual(myClass.students.length, i+1); + assert.strictEqual(stdid, i); + } + // throw new Error("Test not implemented"); }); test("Test MyClass's getStudentById", () => { - // TODO - throw new Error("Test not implemented"); + let myClass = new MyClass(); + let stdids = []; + for(let i=0; i { - // TODO - throw new Error("Test not implemented"); + let student = new Student(); + + student.setName(123); + assert.strictEqual(student.getName(), ''); + + for(let name in names){ + student.setName(name); + assert.strictEqual(student.getName(), name); + } + + // throw new Error("Test not implemented"); }); test("Test Student's getName", () => { - // TODO - throw new Error("Test not implemented"); + let student = new Student(); + assert.strictEqual(student.getName(), ''); + + for(let name in names){ + student.setName(name); + assert.strictEqual(student.getName(), name); + } + + // throw new Error("Test not implemented"); }); \ No newline at end of file From c87280db639c8be07e1c357f2a1bd1f5fb939ae3 Mon Sep 17 00:00:00 2001 From: ywChen-NTUST Date: Thu, 29 Feb 2024 15:43:18 +0800 Subject: [PATCH 2/2] remove unneeded comment --- lab1/main_test.js | 6 ------ 1 file changed, 6 deletions(-) diff --git a/lab1/main_test.js b/lab1/main_test.js index 6f261741..45578dfb 100644 --- a/lab1/main_test.js +++ b/lab1/main_test.js @@ -16,7 +16,6 @@ test("Test MyClass's addStudent", () => { assert.strictEqual(myClass.students.length, i+1); assert.strictEqual(stdid, i); } - // throw new Error("Test not implemented"); }); test("Test MyClass's getStudentById", () => { @@ -37,7 +36,6 @@ test("Test MyClass's getStudentById", () => { assert.strictEqual(student, null); let student2 = myClass.getStudentById(100); assert.strictEqual(student2, null); - // throw new Error("Test not implemented"); }); test("Test Student's setName", () => { @@ -50,8 +48,6 @@ test("Test Student's setName", () => { student.setName(name); assert.strictEqual(student.getName(), name); } - - // throw new Error("Test not implemented"); }); test("Test Student's getName", () => { @@ -62,6 +58,4 @@ test("Test Student's getName", () => { student.setName(name); assert.strictEqual(student.getName(), name); } - - // throw new Error("Test not implemented"); }); \ No newline at end of file