Browse Source

Merge remote-tracking branch 'origin/fdai7600'

remotes/origin/fdai7780
fdai7600 11 months ago
parent
commit
3dd46f8e27
  1. 16
      src/main/java/org/example/Professor.java
  2. 44
      src/test/java/org/example/ProfessorTest.java

16
src/main/java/org/example/Professor.java

@ -116,4 +116,20 @@ public class Professor {
writer.newLine(); writer.newLine();
} }
} }
public static List<Professor> readFromFile() throws IOException {
List<Professor> professors = new ArrayList<>();
try (BufferedReader reader = new BufferedReader(new FileReader("professorData.txt"))) {
String line;
while ((line = reader.readLine()) != null) {
// Assuming the toString format is exactly how we write to the file
String[] parts = line.replace("Professor{", "").replace("}", "").split(", ");
String professorID = parts[0].split("'")[1]; // Extracting professorID
String name = parts[1].split("'")[1]; // Extracting Name
String role = parts[2].split("'")[1]; // Extracting role
professors.add(new Professor(professorID, name, role));
}
}
return professors;
}
} }

44
src/test/java/org/example/ProfessorTest.java

@ -1,4 +1,48 @@
package org.example; package org.example;
import org.example.Professor;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
import java.io.*;
import java.util.List;
public class ProfessorTest { public class ProfessorTest {
@BeforeEach
void setup() throws IOException {
// Ensure the file is clean before each test
new PrintWriter("professorData.txt").close();
}
@AfterEach
void tearDown() {
// Clean up after tests
new File("professorData.txt").delete();
}
@Test
void testWriteToFile() throws IOException {
Professor professor = new Professor("P1001", "John Doe", "Professor");
professor.writeToFile();
// Verify the file contains the expected data
try (BufferedReader reader = new BufferedReader(new FileReader("professorData.txt"))) {
assertEquals("Professor{professorID='P1001', Name='John Doe', role='Professor'}", reader.readLine());
}
}
@Test
void testReadFromFile() throws IOException {
Professor professor = new Professor("P1002", "Jane Doe", "Professor");
professor.writeToFile();
List<Professor> professors = Professor.readFromFile();
assertEquals(1, professors.size());
assertEquals("P1002", professors.get(0).getProfessorID());
assertEquals("Jane Doe", professors.get(0).getName());
assertEquals("Professor", professors.get(0).getRole());
}
} }
Loading…
Cancel
Save