sphinx-tribes
sphinx-tribes copied to clipboard
Implement component tests for Bounty Home Page
Signed out perspective
View
Login
- [ ] I should see the sign in button on the top right.
- [ ] I should see Get Sphinx on the top right
- [ ] When I click Get Sphinx, I should be presented with the modal to get sphinx including a button to reveal the connection code on step 2.
- [ ] When i click on reveal the connection code, a QR code should appear if there are enough codes.
- [ ] When I click on reveal the connection code and there are insufficient codes, then a message should appear to check later.
- [ ] When I click on Sign in, I should see a QR code, login with sphinx, log in with LNAUTH, and Get Sphinx. Each of these should be clickable.
- [ ] ~When I scan the QR code to log in with sphinx, I should be logged into the platform.~ May not be possible. Should be on Relay.
- [ ] ~When I click on "login with sphinx", a deep link should be initiated to authenticate through sphinx app.~
View home page
- [ ] I should view the amount of rows set by pagination limit.
- [ ] When I click "load more" at the bottom of the screen, I should see more bounties based on the pagination limit while the order of the previously loaded tickets are preserved.
- [ ] I should view the status of a ticket (unassigned, assigned, completed, paid)
- [ ] I should view amount of sats associated with ticket.
- [ ] ~I should view the USD conversion of sats~ Needs to be integration test.
- [ ] I should view estimated hours in the ticket.
- [ ] I should view organizations if they are associated with a ticket in any state (unassigned, assigned, completed, paid)
- [ ] When I click "i can help", a pop up should appear with the QR code to connect, assign to self, copy button for pubkey, and connect with sphinx. We are testing that the modal pops up and that the modal has all these sections. (Won't be able to test the actions to assign to self, connect, and connect with sphinx. Integration test is needed).
- [ ] When I click on a bounty, then the bounty page should pop up revealing details of the bounty.
- [ ] When I click on the leaderboard, I should be able taken to the leaderboard url in a different window. (Ticket needed)
Filter Covered in unit tests.
Signed in perspective
View
- [ ] I should see my profile on the top right including my profile image and name.
- [ ] When I click on my profile, it should take me to my profile page in the same window.
- [ ] @elraphty will update with more info about mockdata.
- [ ] I should view the amount of rows set by pagination limit
- [ ] When I click "load more" at the bottom of the screen, I should see more bounties based on the pagination limit while the order of the previously loaded tickets are preserved.
- [ ] I should view the status of a ticket (unassigned, assigned, completed, paid)
- [ ] I should view amount of sats associated with ticket
- [ ] I should view the USD conversion of sats.
- [ ] I should view estimated hours in the ticket.
- [ ] I should view organizations if they are associated with a ticket in any state (unassigned, assigned, completed, paid)
- [ ] When I click on the leaderboard, I should be able taken to the leaderboard url in a different window. (Ticket needed)
- [ ] When I click "i can help", a pop up should appear with the QR code to connect, assign to self, copy button for pubkey, and connect with sphinx. We are testing that the modal pops up and that the modal has all these sections. (Won't be able to test the actions to assign to self, connect, and connect with sphinx. Integration test is needed).
Bounty edit
Need to mock api calls to test these areas
- [ ] When I click on a bounty that I posted, then the bounty page should pop up revealing details of the bounty including edit, delete, and the not assigned buttons.
- [ ] I should be able to click on edit and the modal to edit a bounty should appear.
- [ ] I should be able to change one character in a field and save the bounty and be returned to the same bounty page with updated information. (TBD If we can mock api call)
- [ ] I should be able to click on delete and be taken to the bounty deleted page window. (TBD If we can mock api call)
- [ ] I should be able to click on not assigned buttons and a modal appears to assign a developer.
- [ ] I should be able to click on the search box, skill box, and invite one of the developers listed below.
Filter
- [ ] I should be able view my filtering options when I click on filter
- [ ] I should be able to filter open, assigned, paid
- [ ] I should be able to filter based on various skills provided in the filter
Post a bounty
- [ ] When I click post a bounty, I should be presented with freelance job request or live help (coming soon)
- [ ] I should able to cancel the pop up.
- [ ] I should be able to click "start" to take me to posting the bounty #902
Bounty creation - Signed In
Step 2
- [ ] Investigate the unit test occurring starting step 2!!
- [ ] I should see the following categories on step 2 of the bounty creation process: Organization, category, bounty title, coding language, github issue url, *required fields, back, next.
- [ ] ~When I click on organization I should see a drop down menu of all the organizations I'm involved with. I should also be able to click to select one. (Need to mock 3 organizations. Need to mock api calls.~ (Might need to be integration test)
- [ ] If I don't have an organization I'm a part of, this section should be empty.
- [ ] When I click on category, I should see a drop down list including static categories that I can select.
- [ ] When I select a category, it should be selected to the a bounty.
- [ ] When I click on Bounty Title, I should be able to type in any character and see it reflected in the UI. (There is no char limit)
- [ ] I should be able to copy and paste into the Bounty Title.
- [ ] When I click on Github Issue URL, I should be able to type in any character and see it reflected in the UI.
- [ ] I should be able to copy and paste into the Github Issue URL
- [ ] When I click on Coding Language, I should see a modal appear with a list including of skills.
- [ ] When the required fields of Bounty Title and Category are filled, the next button should turn blue.
- [ ] When the required fields of Bounty Title and Category are not filled, the next button should be grey and unclickable.
- [ ] When I click on the blue next button, I should be taken to step 3.
Step 3
- [ ] I should see the following categories on step 3 of the bounty creation process at first: Description, Record Loom Video, back, and a grey next button that isn't clickable.
- [ ] When I click on Description, I should be able to type in any character and see it reflected in the UI. (There is no character limit)
- [ ] Once a single character is typed in the description, the next button should turn blue.
- [ ] If a github issue link has been provided in step 2, a toggle should appear "get description from github".
- [ ] When "Get description from github" button is selected, a check occurs to see if the url is valid.
- [ ] If validation is true, it should turn green and the next button should turn blue.
- [ ] If validation is false, it shows an error. (@ecurrencyhodler to check specific modal).
- [ ] If next button is blue, I should be able to click it and take me to step 4.
- [ ] ~When I click Record Loom Video, I should be prompted to record a loom video through a pop up.~ This needs to be an integration test.
Step 4
- [ ] When I get to step 4, I should see the following categories: Price (Sats), Tribe, Estimate Session Length, Deliverables, Estimate Completion Date, Show to public button should be toggled on and green, back button, required fields, and greyed next button that isn't clickable.
- [ ] Price (sats) should show a 0 by default in the box as well as a 0.00 USD value.
- [ ] When I click into Price (Sats), the cursor appears in front of the 0.
- [ ] When I click into Price (Sats), I should be able to type digits only.
- [ ] When I click into Price (Sats), I should be able to select all and delete all digits.
- [ ] When I click on Tribe, I should see a drop down. (mock data of 3 tribes)
- [ ] When I click on "estimate session length", I see a drop down of options.
- [ ] When I click on Deliverables, I should be able to type any character I want.
- [ ] When I click on Estimate Completion Date, a calendar pop up should appear
- [ ] When I click on a date on the calendar pop up, the date should appear inside the box in the following format MM/DD/YYYY
- [ ] When I click on Show to public, it untoggles to grey.
- [ ] When required fields of Price (Sats) is filled with any digit, the next button turns blue.
Step 5
- [ ] When I get to step 5, I should see type to search box, skills, a list of 5 recommended hunters, back button, and blue decide later button.
- [ ] When I click into Type to search, I should be able to type any character.
- [ ] ~As I type in characters into Type to search, the list of hunters should get filtered~ Integration test.
- [ ] When I click on Skills a drop down should appear
- [ ] ~As I click on a skill, the list of hunters should get filtered based on what I clicked.~ Integration test
- [ ] When I click on Decide Later, it should be clickable and a green button Finish should appear in it's place.
- [ ] When I click on Finish and have not assigned a hunter, I should be taken back to the bounty home page and see my ticket on the home page and the ticket should not be assigned.
- [ ] When I click on Finish and have assigned a hunter, I should be taken back to the bounty home page and see my ticket on the home page and the ticket should be assigned to the right hunter.