Skip to content

Commit c4e3007

Browse files
sam-gcavolkovi
authored andcommitted
Clean up tests per PR feedback
1 parent 975f2e7 commit c4e3007

File tree

1 file changed

+56
-59
lines changed

1 file changed

+56
-59
lines changed

packages-exp/auth-exp/src/core/auth/auth_impl.test.ts

Lines changed: 56 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,7 @@ import { browserLocalPersistence } from '../persistence/browser';
3030
import { inMemoryPersistence } from '../persistence/in_memory';
3131
import { PersistenceUserManager } from '../persistence/persistence_user_manager';
3232
import { ClientPlatform, getClientVersion } from '../util/version';
33-
import {
34-
DEFAULT_API_HOST,
35-
DEFAULT_API_SCHEME,
36-
initializeAuth
37-
} from './auth_impl';
33+
import { DEFAULT_API_HOST, DEFAULT_API_SCHEME, initializeAuth } from './auth_impl';
3834

3935
use(sinonChai);
4036

@@ -155,70 +151,71 @@ describe('AuthImpl', () => {
155151

156152
describe('user logs in/out, tokens refresh', () => {
157153
let user: User;
158-
let callback: sinon.SinonSpy;
154+
let authStateCallback: sinon.SinonSpy;
155+
let idTokenCallback: sinon.SinonSpy;
159156

160157
beforeEach(() => {
161158
user = testUser('uid');
162-
callback = sinon.spy();
159+
authStateCallback = sinon.spy();
160+
idTokenCallback = sinon.spy();
163161
});
164162

165-
it('onAuthStateChange triggers on log in', async () => {
166-
auth.onAuthStateChanged(callback);
167-
await auth.updateCurrentUser(null);
168-
callback.resetHistory();
169-
await auth.updateCurrentUser(user);
170-
expect(callback).to.have.been.calledWith(user);
171-
});
172-
173-
it('onAuthStateChange triggers on log out', async () => {
174-
auth.onAuthStateChanged(callback);
175-
await auth.updateCurrentUser(user);
176-
callback.resetHistory();
177-
await auth.updateCurrentUser(null);
178-
expect(callback).to.have.been.calledWith(null);
179-
});
180-
181-
it('onIdTokenChange triggers on log in', async () => {
182-
auth.onIdTokenChange(callback);
183-
await auth.updateCurrentUser(null);
184-
callback.resetHistory();
185-
await auth.updateCurrentUser(user);
186-
expect(callback).to.have.been.calledWith(user);
187-
});
163+
context('initially currentUser is null', () => {
164+
beforeEach(async () => {
165+
auth.onAuthStateChanged(authStateCallback);
166+
auth.onIdTokenChange(idTokenCallback);
167+
await auth.updateCurrentUser(null);
168+
authStateCallback.resetHistory();
169+
idTokenCallback.resetHistory();
170+
});
188171

189-
it('onIdTokenChange triggers on log out', async () => {
190-
auth.onIdTokenChange(callback);
191-
await auth.updateCurrentUser(user);
192-
callback.resetHistory();
193-
await auth.updateCurrentUser(null);
194-
expect(callback).to.have.been.calledWith(null);
195-
});
172+
it('onAuthStateChange triggers on log in', async () => {
173+
await auth.updateCurrentUser(user);
174+
expect(authStateCallback).to.have.been.calledWith(user);
175+
});
196176

197-
it('onAuthStateChange does not trigger for user props change', async () => {
198-
auth.onAuthStateChanged(callback);
199-
await auth.updateCurrentUser(user);
200-
callback.resetHistory();
201-
user.refreshToken = 'hey look I changed';
202-
await auth.updateCurrentUser(user);
203-
expect(callback).not.to.have.been.called;
177+
it('onIdTokenChange triggers on log in', async () => {
178+
await auth.updateCurrentUser(user);
179+
expect(idTokenCallback).to.have.been.calledWith(user);
180+
});
204181
});
205182

206-
it('onIdTokenChange triggers for user props change', async () => {
207-
auth.onIdTokenChange(callback);
208-
await auth.updateCurrentUser(user);
209-
callback.resetHistory();
210-
user.refreshToken = 'hey look I changed';
211-
await auth.updateCurrentUser(user);
212-
expect(callback).to.have.been.calledWith(user);
213-
});
183+
context('initially currentUser is user', () => {
184+
beforeEach(async () => {
185+
auth.onAuthStateChanged(authStateCallback);
186+
auth.onIdTokenChange(idTokenCallback);
187+
await auth.updateCurrentUser(user);
188+
authStateCallback.resetHistory();
189+
idTokenCallback.resetHistory();
190+
});
214191

215-
it('onAuthStateChange triggers if uid changes', async () => {
216-
auth.onAuthStateChanged(callback);
217-
await auth.updateCurrentUser(user);
218-
callback.resetHistory();
219-
const newUser = testUser('different-uid');
220-
await auth.updateCurrentUser(newUser);
221-
expect(callback).to.have.been.calledWith(newUser);
192+
it('onAuthStateChange triggers on log out', async () => {
193+
await auth.updateCurrentUser(null);
194+
expect(authStateCallback).to.have.been.calledWith(null);
195+
});
196+
197+
it('onIdTokenChange triggers on log out', async () => {
198+
await auth.updateCurrentUser(null);
199+
expect(idTokenCallback).to.have.been.calledWith(null);
200+
});
201+
202+
it('onAuthStateChange does not trigger for user props change', async () => {
203+
user.refreshToken = 'hey look I changed';
204+
await auth.updateCurrentUser(user);
205+
expect(authStateCallback).not.to.have.been.called;
206+
});
207+
208+
it('onIdTokenChange triggers for user props change', async () => {
209+
user.refreshToken = 'hey look I changed';
210+
await auth.updateCurrentUser(user);
211+
expect(idTokenCallback).to.have.been.calledWith(user);
212+
});
213+
214+
it('onAuthStateChange triggers if uid changes', async () => {
215+
const newUser = testUser('different-uid');
216+
await auth.updateCurrentUser(newUser);
217+
expect(authStateCallback).to.have.been.calledWith(newUser);
218+
});
222219
});
223220

224221
it('onAuthStateChange works for multiple listeners', async () => {

0 commit comments

Comments
 (0)