Erweiterungen

This commit is contained in:
2025-09-02 19:01:07 +02:00
parent 4f3f75c8a8
commit f444f50538
7 changed files with 168 additions and 6 deletions

View File

@@ -0,0 +1,60 @@
import com.fasterxml.jackson.databind.ObjectMapper;
import de.assecutor.votianlt.dto.JobWithRelatedDataDTO;
import de.assecutor.votianlt.model.CargoItem;
import de.assecutor.votianlt.model.Job;
import de.assecutor.votianlt.model.TaskEntry;
import org.bson.types.ObjectId;
import java.util.List;
/**
* Simple test to verify JSON serialization of ObjectIds as strings
*/
public class JsonSerializationTest {
public static void main(String[] args) throws Exception {
System.out.println("[DEBUG_LOG] Testing Job ID serialization...");
// Create test data
Job job = new Job();
job.setId(new ObjectId());
job.setJobNumber("TEST-001");
CargoItem cargo = new CargoItem();
cargo.setId(new ObjectId());
cargo.setJobId(job.getId());
cargo.setDescription("Test cargo");
TaskEntry task = new TaskEntry();
task.setId(new ObjectId());
task.setJobId(job.getId());
task.setText("Test task");
JobWithRelatedDataDTO dto = new JobWithRelatedDataDTO(job, List.of(cargo), List.of(task));
// Serialize to JSON
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(dto);
System.out.println("[DEBUG_LOG] Serialized JSON: " + json);
// Check if job ID is serialized as string
if (json.contains("\"id\":\"" + job.getId().toString() + "\"")) {
System.out.println("[DEBUG_LOG] ✓ Job ID correctly serialized as string");
} else if (json.contains("\"id\":{")) {
System.out.println("[DEBUG_LOG] ✗ Job ID serialized as ObjectId object");
} else {
System.out.println("[DEBUG_LOG] ? Job ID serialization format unclear");
}
// Test individual Job serialization
String jobJson = mapper.writeValueAsString(job);
System.out.println("[DEBUG_LOG] Individual Job JSON: " + jobJson);
if (jobJson.contains("\"id\":\"" + job.getId().toString() + "\"")) {
System.out.println("[DEBUG_LOG] ✓ Individual Job ID correctly serialized as string");
} else {
System.out.println("[DEBUG_LOG] ✗ Individual Job ID not serialized as string");
}
}
}