Все мои тесты проходят нормально, как на незащищенных маршрутах, но выдают ошибку на защищенных маршрутах.
// ERROR
[INFO] aqueduct: POST /register 68ms 400
Invalid argument(s): Invalid username/password.
package:aqueduct_test/src/auth_harness.dart 99:9 TestHarnessAuthMixin.loginUser
Мой тест (у меня есть дополнительные обязательные поля в таблице):
// controller_test.dart
setUp(() async {
agents = {};
for (var i = 0; i < 6; i++) {
final user = User()
..username = 'bob+$i@stablekernel.com'
..password = 'foobaraxegrind$i%'
..first_name = 'bob'
..last_name = 'Johnson'
..employee_id = 'JOHN12'
..user_type = (UserType()..id = 1);
agents[i] = await harness.registerUser(user);
}
});
// test/harness/app.dart
Future<Agent> registerUser(User user, {Agent withClient}) async {
withClient ??= publicAgent;
print('APP onSetUp: ${user.asMap()}');
final req = withClient.request('/register')
..body = {
'username': user.username,
'password': user.password,
'first_name': user.first_name,
'last_name': user.last_name,
'employee_id': user.employee_id,
'user_type': user.user_type.id
};
await req.post();
return loginUser(withClient, user.username, user.password);
}
Я что-то упускаю из виду?