added guardian letters with chat and multiple answer functionalities

This commit is contained in:
2026-09-20 16:12:45 +02:00
parent 67c935c05b
commit 2423c1a75e
68 changed files with 8348 additions and 226 deletions
+31
View File
@@ -0,0 +1,31 @@
import 'package:flutter_test/flutter_test.dart';
import 'package:marianum_mobile/access/access_requirement.dart';
import 'package:marianum_mobile/session/session.dart';
void main() {
final student = CredentialSession(username: 'max', password: 'pw');
const guardian = GuardianSession(email: 'e@x.de');
test('nextcloud is only met by sessions with a Nextcloud identity', () {
expect(AccessRequirement.nextcloud.isMetBy(student), isTrue);
expect(AccessRequirement.nextcloud.isMetBy(guardian), isFalse);
expect(AccessRequirement.nextcloud.isMetBy(null), isFalse);
});
test('guardian is only met by guardian sessions', () {
expect(AccessRequirement.guardian.isMetBy(guardian), isTrue);
expect(AccessRequirement.guardian.isMetBy(student), isFalse);
expect(AccessRequirement.guardian.isMetBy(null), isFalse);
});
test('a set is met only when every requirement is met', () {
expect(<AccessRequirement>{}.areMetBy(null), isTrue);
expect(
{
AccessRequirement.guardian,
AccessRequirement.nextcloud,
}.areMetBy(guardian),
isFalse,
);
});
}