mirror of
https://github.com/elyby/accounts-frontend.git
synced 2025-05-31 14:11:58 +05:30
Add additional E2E tests cases for user agreement auth state and ensure, that oauth flow works correctly with deleted accounts
This commit is contained in:
@ -47,6 +47,20 @@ describe('AcceptRulesState', () => {
|
||||
|
||||
state.enter(context);
|
||||
});
|
||||
|
||||
it('should transition to complete state if account is deleted even if user should accept rules', () => {
|
||||
context.getState.returns({
|
||||
user: {
|
||||
shouldAcceptRules: true,
|
||||
isGuest: false,
|
||||
isDeleted: true,
|
||||
},
|
||||
});
|
||||
|
||||
expectState(mock, CompleteState);
|
||||
|
||||
state.enter(context);
|
||||
});
|
||||
});
|
||||
|
||||
describe('#resolve', () => {
|
||||
|
@ -8,7 +8,7 @@ export default class AcceptRulesState extends AbstractState {
|
||||
enter(context: AuthContext): Promise<void> | void {
|
||||
const { user } = context.getState();
|
||||
|
||||
if (user.shouldAcceptRules) {
|
||||
if (!user.isDeleted && user.shouldAcceptRules) {
|
||||
context.navigate('/accept-rules');
|
||||
} else {
|
||||
context.setState(new CompleteState());
|
||||
|
@ -71,6 +71,22 @@ describe('CompleteState', () => {
|
||||
state.enter(context);
|
||||
});
|
||||
|
||||
it('should navigate to the / if account is deleted', () => {
|
||||
context.getState.returns({
|
||||
user: {
|
||||
isGuest: false,
|
||||
isActive: true,
|
||||
shouldAcceptRules: true,
|
||||
isDeleted: true,
|
||||
},
|
||||
auth: {},
|
||||
});
|
||||
|
||||
expectNavigate(mock, '/');
|
||||
|
||||
state.enter(context);
|
||||
});
|
||||
|
||||
it('should transition to accept-rules if shouldAcceptRules', () => {
|
||||
context.getState.returns({
|
||||
user: {
|
||||
|
@ -34,6 +34,8 @@ export default class CompleteState extends AbstractState {
|
||||
context.setState(new LoginState());
|
||||
} else if (!user.isActive) {
|
||||
context.setState(new ActivationState());
|
||||
} else if (user.isDeleted) {
|
||||
context.navigate('/');
|
||||
} else if (user.shouldAcceptRules) {
|
||||
context.setState(new AcceptRulesState());
|
||||
} else if (oauth && oauth.clientId) {
|
||||
|
Reference in New Issue
Block a user