-
Notifications
You must be signed in to change notification settings - Fork 0
Notes about testcases and application
To log out from a certain user, click "Switch mode" in top of window. Then you can log out easily. SO it's more convenient to try all users functions like this.
In testcases 8 and 9 patrons v , p3 aren't able to check out the document because there are only 3 copies. they are added to the waiting queue. So my code checks if the log says that they were added instead that they checked out the document.
For placing outstanding request, you should click on some document from the table and then edit the document and check the outstanding request box. For librarians of previlige1 this box will be disabled when they open the dialog for editing the document (as well adding the document).
The search filters work as the following. For independent filters (author,title) they are linked through conjunction. For example if you write author:hussain,title:innolibrary, It will search for such document with a title having this as substring and written by hussain.
The relation between your queries in each filter are linked through disjunction. Suppose you want to search for a document with title "programming" or "algorithms" so you write "programming#algorithms" and it will search for such book that has at least one of these words in its title.
There is a radioButton (match all subexpressions) when you apply it so the case for "programming#algorithms" would turn to searching for book having both words in its title. Of course the same applies to each of the filters.
A detailed description of testcases is provided in the code in the format of comments. You can check how contracts are validating the testcases and matching the expected output in the pdf.