New Behat step for visiting a specific view
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mahara |
Fix Released
|
Medium
|
Aaron Wells | ||
15.04 |
Fix Released
|
Medium
|
Aaron Wells | ||
15.10 |
Fix Released
|
Medium
|
Aaron Wells |
Bug Description
While writing a Behat test that requires placing comments by anonymous users on a portfolio page, I realized there is no easy way to visit a portfolio page while you're logged out.
For logged in users, I've been relying on the fact that the default Dashboard page includes the "latest views" block, which in normal test cases will show the small number of pages created for the test. But a logged-out user has no such dashboard. They need to get to the page directly by its URL. But we can't rely on the URL being the same every time because it contains an ID number, and MySQL doesn't reset the automatically assigned ID numbers back to 0 between each test.
So, what we need is a step like this:
Given I go to portfolio page "This is my page"
The step can then look up the page's ID, and send you to the correct URL.
Changed in mahara: | |
status: | Fix Committed → Fix Released |
I considered adding authorship information as well (like "Given I go to portfolio page "hello" by user "user1"") but on further reflection, in a test case all the pages in the site have been created by the test and have known titles. So the only case where you'd need to identify the page by title & author is if you're writing a test and you specifically create multiple pages with the same title. That situation seems unlikely, so I'm not going to go to the extra effort of implementing it.