* Added tests for previewing the question, to make sure it works when
attempted.
* Added Moodle XML export tests.
* Reorganised the tests to follow the 'Test one thing per scenario' best
practice.
This commit requires MDL-49154 to work.
This commit also fixes MDL-32049 about the lack or valdiation message
when an incomplete respnses is submitted.
AMOS BEGIN
CPY [pleaseananswerallparts,qtype_match],[pleaseananswerallparts,qtype_multianswer]
AMOS END
following_should_download_between_and_bytes step sometimes
fails because of server speed. Added extended timout
ensuring they wait enough before failing.
Also, not calling force download while running behat site
following_should_download_between_and_bytes step sometimes
fails because of server speed. Added extended timout
ensuring they wait enough before failing.
Also, not calling force download while running behat site
The back end code already threw an exception if you clicked the icon,
so you could not delete the category, but we should not have shown the
icon in the first place.
Thanks to Pramith Dayananda for working out the fix for this issue. I am
just committing it.
The new steps make it more efficient to create questions.
While making the changes, I took the opportunity to alter the tests to
follow Behat best practices, and only test one thing per scenario.
If the download step is the last in the scenario then we
can sometimes run into the situation where the download page
causes a http redirect but behat has already conducted its
reset (generating an error). By putting a logout step we avoid
behat doing the reset until we are off that page.
Variant has two purposes. First to determine which version of the
question the student will see. Hence it is used to set up the state
of the quetsion when the question is started. Then the internal state of
the question is saved in the first step.
Once that has been done, the variant number is purely informative, and
just used to break down the statistics.
In some cases (the one I have in mind is qtype_opaque) then there is a
complex randomisation process, which may lead to several inital variant
numbers acutally giving the same version of the question. In this case
it is nice if the question can update the stored variant number, to make
the statistics more meaningful.