In this assignment, you will be working off of the same repo as the last assignment, where you will be writing tests for your Gmail application.
Testing the truncate-text
Helper
Write tests with the following descriptions:
- the text is truncated to the number of characters passed in
- the text is not truncated when the length is too short
Testing the StarButton
Component
Write tests with the following descriptions:
- the star is filled when
starred
istrue
- the star is empty when
starred
isfalse
onClick
is called with the new starred value when clickedUseassert.step
andassert.verifySteps
Application Tests
Write tests with the following descriptions:
- the inbox displays starred and unstarred emails
- Seed Mirage with 2 starred emails and 3 unstarred emails. Verify that 2 emails were rendered in the starred section and 3 were rendered in the unstarred section.
- viewing a single email
- Verify that all of the email attributes were rendered.
- deleting a single email
- Seed Mirage with 2 unstarred emails. Verify that when the trash icon is clicked for either of the emails, the unstarred list contains 1 email and the current URL is
/
.
- Seed Mirage with 2 unstarred emails. Verify that when the trash icon is clicked for either of the emails, the unstarred list contains 1 email and the current URL is
- creating an email
- Seed Mirage with 0 emails. Verify that when a user fills out the new email form and clicks the submit button, the number of emails in the unstarred section is 1.
- Verify that the current URL is
/
. Verify that all of the data was sent to the server by inspecting Mirage'sserver.db.emails[0]
.
Travis CI
- Setup your repo to have Travis CI integration and add the Travis CI badge to your repo's README.md.
Submission
Push your code up to the same repo, which should be called itp404-gmail. Send an email with the GitHub repo URL to the TA and myself.