44 lines
1.6 KiB
Dart

// Copyright (C) 2022 WYATT GROUP
// Please see the AUTHORS file for details.
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
import 'package:flutter_test/flutter_test.dart';
import 'package:mocktail/mocktail.dart';
import 'package:wyatt_authentication_bloc/wyatt_authentication_bloc.dart';
class MockUser extends Mock implements UserInterface {}
void main() {
group('AuthenticationState', () {
group('unauthenticated', () {
test('has correct status', () {
const AuthenticationState state = AuthenticationState.unauthenticated();
expect(state.status, AuthenticationStatus.unauthenticated);
expect(state.user, null);
});
});
group('authenticated', () {
test('has correct status', () {
final MockUser user = MockUser();
final AuthenticationState state =
AuthenticationState.authenticated(user, null);
expect(state.status, AuthenticationStatus.authenticated);
expect(state.user, user);
});
});
});
}