aboutsummaryrefslogtreecommitdiff
path: root/frontend/lib/models/test_suite.dart
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/lib/models/test_suite.dart')
-rw-r--r--frontend/lib/models/test_suite.dart25
1 files changed, 25 insertions, 0 deletions
diff --git a/frontend/lib/models/test_suite.dart b/frontend/lib/models/test_suite.dart
new file mode 100644
index 000000000..bffca73af
--- /dev/null
+++ b/frontend/lib/models/test_suite.dart
@@ -0,0 +1,25 @@
+import 'package:auto_gpt_flutter_client/models/task.dart';
+
+class TestSuite {
+ final String timestamp;
+ final List<Task> tests;
+
+ TestSuite({required this.timestamp, required this.tests});
+
+ // Serialization: Convert the object into a Map
+ Map<String, dynamic> toJson() {
+ return {
+ 'timestamp': timestamp,
+ 'tests': tests.map((task) => task.toJson()).toList(),
+ };
+ }
+
+// Deserialization: Create an object from a Map
+ factory TestSuite.fromJson(Map<String, dynamic> json) {
+ return TestSuite(
+ timestamp: json['timestamp'],
+ tests: List<Task>.from(json['tests'].map(
+ (taskJson) => Task.fromMap(Map<String, dynamic>.from(taskJson)))),
+ );
+ }
+}