Dashboard page: added unit test related to create resume interaction

This commit is contained in:
gianantoniopini
2021-01-25 17:54:36 +01:00
parent 87fee23480
commit b196ca1bf5

View File

@ -157,8 +157,11 @@ describe('Dashboard', () => {
describe('with valid name', () => {
const resumeName = 'Resume for SW development roles';
let now = 0;
beforeEach(() => {
now = new Date().getTime();
fireEvent.change(nameTextBox, {
target: { value: resumeName },
});
@ -201,6 +204,29 @@ describe('Dashboard', () => {
await expectResumeToBeRenderedInPreview({ name: resumeName });
});
it('adds resume in initial state to database', async () => {
await waitForModalWindowToHaveBeenClosed();
await waitForResumeToBeRenderedInPreview({ name: resumeName });
const actualUserResumes = (
await FirebaseStub.database()
.ref(DatabaseConstants.resumesPath)
.orderByChild('user')
.equalTo(user.uid)
.once('value')
).val();
expect(Object.values(actualUserResumes)).toHaveLength(3);
const actualUserResumesFiltered = Object.values(
actualUserResumes,
).filter((resume) => resume.name === resumeName);
expect(actualUserResumesFiltered).toHaveLength(1);
const createdResume = actualUserResumesFiltered[0];
expect(createdResume.createdAt).toBeTruthy();
expect(createdResume.createdAt).toBeGreaterThanOrEqual(now);
expect(createdResume.createdAt).toEqual(createdResume.updatedAt);
});
});
});