From 17696936870c4ffde5cba715ab76e0624418ec2a Mon Sep 17 00:00:00 2001 From: Oliver Walters Date: Fri, 3 Jun 2022 20:55:17 +1000 Subject: [PATCH] Initial tests for grabbing model data from server --- test/models_test.dart | 54 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 test/models_test.dart diff --git a/test/models_test.dart b/test/models_test.dart new file mode 100644 index 00000000..7cd21b8d --- /dev/null +++ b/test/models_test.dart @@ -0,0 +1,54 @@ +/* + * Unit tests for accessing various model classes via the API + */ + +import 'package:inventree/inventree/model.dart'; +import "package:test/test.dart"; + +import "package:inventree/api.dart"; +import "package:inventree/user_profile.dart"; +import "package:inventree/inventree/part.dart"; + + +void main() { + + setUp(() async { + await UserProfileDBManager().addProfile(UserProfile( + name: "Test Profile", + server: "http://localhost:12345", + username: "testuser", + password: "testpassword", + selected: true, + )); + + assert(await UserProfileDBManager().selectProfileByName("Test Profile")); + assert(await InvenTreeAPI().connectToServer()); + }); + + group("Part Tests:", () { + + test("List Parts", () async { + List results; + + // List *all* parts + results = await InvenTreePart().list(); + assert(results.length == 13); + + for (var result in results) { + // results must be InvenTreePart instances + assert(result is InvenTreePart); + } + + // Filter by category + results = await InvenTreePart().list( + filters: { + "category": "2", + } + ); + + assert(results.length == 2); + }); + + }); + +} \ No newline at end of file