Koha-clms/t/db_dependent
Agustin Moyano a551cb47ea
Bug 8179: Receive multiple orders
This patch implements the code to allow a patron to receive multiple
orders at the same time in /cgi-bin/koha/acqui/orderreceive.pl page

To test:
1. apply all patches
2. updatedatabase
3. Go to system preferences and allow AcqReceiveMultipleOrderLines
4. In acquisitions module, create a vendor if you don't have one and add
   3 baskets.. one with create items on ordering, one with create items
   on receiving and finally one with create items when cataloguing
5. Fill baskets with orders (There should be at least 15 orders in total). There should be a mix of orders created by suggestions, others by subscriptions and others by neither of those methods.
6. Close all baskets and receive shipment.
CHECK => in /cgi-bin/koha/acqui/parcel.pl page, in top table there is a column with checkboxes, and a button that says "Receive selected"
7. If all orders from all baskets are shown in the table, set the rows per page to 10, so table has more than one page
8. Check some of the checkboxes
CHECK => "Receive selected" button shows how many rows are selected
9. Go to the next page and select some more rows
CHECK => Changing page does not modify how many rows where selected
10. Go back to previous page
CHECK => Previously selected rows are still selected
11. Reload the page to deselect all rows
12. Select only one row and click on "Receive selected" button
CHECK => the page /cgi-bin/koha/acqui/orderreceive.pl behaves just the same as if the "receive" link in the selected row would have been clicked.
13. Click on cancel to go back to parcel.pl page
14. Select all rows (even the ones from the next page of the table) and
    click on "Receive selected"
CHECH => In orderreceive.pl page there is a table with all selected rows
15. Ensure table has more than one page, as in step 7
16. Click on the "edit" link in the last row of the current page
CHECK => A modal window is displayed with 4 tabs within: Info,
Accounting, Receipt history and Items
CHECK => Modal has 4 buttons at the bottom, 'Previous' to go to previos
order, 'Cancel' to close the modal without keeping modifications, 'Save'
to close modal keeping modifications and 'Next' to go to the next order
CHECK => Even that we are at the end of the current page, 'Next' button
is still available
17. Click on 'Next' button
CHECK => The table behind the modal now displays the next page, and the modal was not closed
18. Click on 'Previous'
CHECK => The table behind the modal went back to the first page, and the modal was not closed
19. Click on 'Previous' button till you reach the first row of the first
    page
CHECK => Only when you reach the first row of the first page 'Previous'
button gets disabled
20. Click on 'Next' button till you reach the last row of the last page
CHECK => Only when you reach the last button of the last page 'Next'
button gets disabled
21. Check that behaviour for the different types of order are still the
    same
    a. For orders that where created through suggestion, check that the
suggestion info is present in Info tab. If when suggestion was accepted
you set a reason, a dropdown to change the reason shoul display also.
    b. For orders that where created through subscriptions, check that
the Items tab is disabled, and the Receipt history is enabled. On
accounting tab you should be able to change quantity ordered. If there
were less items received than ordered, the next time you receive this
order the child order generated from this one shoul appear in receipt
history.
    c. For orders that don't come from subscription and creates there items on ordering, Receipt history
should be disabled, and a table with prefilled items shold appear in the
Items tab. You can edit them and the changes should appear in the item's
row.
    d. For orders that don't come from subscription and creates there
items on receiving, Receipt history should be disabled, and a form to
create the items should appear in Items tab. When you add an item a
table should appear.
    e. For orders that don't come from subscription and creates there
ites on cataloguing, Receipt history and Items tabs should be disabled.
    f. Any changes made in quantity (received or ordered) or funds in the modal should be
reflected in the table if you click save from the modal.
22. Once you've done all you checking and verifications click save
23. While saving a progress bar should appear
24. If no error was detected, you should be redirected back to parcel.pl
    page
25. If an error or warning was detected (like there is an order with 0
    items to receive) the save button should be disabled and warnings
are dispayed.
26. prove t/db_dependent/Koha/Acquisition/Fund.t t/db_dependent/Koha/Acquisitoin/Order.t t/db_dependent/Koha/Item.t

Sponsored-by: Virginia Polytechnic Institute and State University
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Laura Escamilla <laura.escamilla@bywatersolutions.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2023-05-15 08:53:47 -03:00
..
Acquisition Bug 31649: Add unit tests 2022-10-11 10:00:08 -03:00
Auth Bug 24387: Rename "News" with "Additional contents" 2021-08-16 11:55:55 +02:00
AuthoritiesMarc Bug 21958: (QA follow-up) Correct indirect object notation 2021-04-01 17:13:56 +02:00
Authority Bug 19693: Add test sub to Merge.t 2022-10-24 17:20:25 -03:00
Biblio Bug 29697: Fix tests 2022-07-22 15:24:11 -03:00
Budgets Bug 27550: Add unit test for CloneBudgetHierarchy 2022-09-22 08:18:43 -03:00
Circulation Bug 31735: Avoid re-fetcing objects from database by passing them directly instead of ids to various subroutines 2023-05-12 12:40:21 -03:00
CourseReserves Bug 32351: Fix CourseItems.t 2022-11-30 15:58:18 -03:00
Creators Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Exporter Bug 25503: Add failing test for _get_biblio_for_export 2023-05-10 15:26:19 -03:00
Holds Bug 31735: Avoid re-fetcing objects from database by passing them directly instead of ids to various subroutines 2023-05-12 12:40:21 -03:00
Illrequest Bug 21548: ILLLIBS patron category / partner_code seems extraneous 2023-03-31 12:14:51 +02:00
Items Bug 31196: Remove 'default_value_for_mod_marc-' clear_from_cache calls 2022-10-25 11:16:57 -03:00
Koha Bug 8179: Receive multiple orders 2023-05-15 08:53:47 -03:00
LDAP Bug 21395: (QA follow-up) Remove some introduced issues 2020-06-29 12:37:02 +02:00
Labels Bug 24001: (follow-up) Fix t_Profile.t 2022-04-28 20:26:20 -10:00
Letters Bug 31735: Avoid re-fetcing objects from database by passing them directly instead of ids to various subroutines 2023-05-12 12:40:21 -03:00
Members Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
OAI Bug 29697: Replace some missing occurrences 2022-07-25 09:30:30 -03:00
Patron Bug 14251: Allow use of CSS in discharge letter 2023-03-27 11:53:16 +02:00
Record Bug 29697: Use flag embed_items 2022-07-22 15:24:11 -03:00
Reports Bug 26669: Last Run if report not always updated 2022-04-04 16:23:46 +02:00
Reserves Bug 33210: Add unit test 2023-04-21 10:36:26 -03:00
SIP Bug 33580: Fix tests 2023-05-15 08:53:45 -03:00
Search Bug 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02:00
Serials Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Template/Plugin Bug 32127: Add unit test 2023-04-14 11:35:24 -03:00
Utils Bug 30063: Remove occurrences of C4::Utils::DataTables::Members 2022-04-04 09:47:01 +02:00
api/v1 Bug 31799: (follow-up) Tidy up and fix duplicate barcode handling 2023-05-09 10:57:56 -03:00
cronjobs Bug 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02:00
data Bug 29697: Fix t/db_dependent/Search.t 2022-07-25 10:16:48 -03:00
misc/translator Bug 25067: Adjust paths in tests 2020-11-06 16:59:40 +01:00
selenium Bug 33419: (QA follow-up) Remove changes to basic_workflow.t 2023-05-05 10:18:40 -03:00
www Bug 33020: (QA follow-up) POD and chmod 2023-02-27 11:33:50 -03:00
00-strict.t Bug 28617: Remove kohalib.pl and rely on PERL5LIB 2021-12-07 12:16:28 -10:00
01-test_dbic.t Bug 26384: Fix executable flags 2020-09-11 09:56:56 +02:00
Accounts.t Bug 28854: Unit tests - chargelostitem 2022-07-13 10:35:50 -03:00
Acquisition.t Bug 25655: Store invoice price and currency even if no currency change 2023-03-06 13:57:53 -03:00
Amazon.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
ArticleRequests.t Bug 29182: (follow-up) Fix ArticleRequests.t 2021-10-07 15:49:01 +02:00
AudioAlerts.t Bug 29844: Fix ->search occurrences 2022-02-09 15:36:23 -10:00
Auth.t Bug 33197: Rename GDPR_Policy system preference 2023-05-05 10:18:54 -03:00
AuthUtils.t Bug 26384: (QA follow-up) Fix two exceptions 2020-09-11 09:56:56 +02:00
Auth_with_cas.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Auth_with_ldap.t Bug 30646: Unit tests for Auth_with_ldap 2022-10-03 14:02:40 -03:00
AuthorisedValues.t Bug 32997: Add tests 2023-03-02 12:00:16 -03:00
AuthoritiesMarc.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
AuthoritiesMarc_GetTagsLabels.t Bug 30446: Add a test for GetTagsLabels 2022-04-21 21:01:09 -10:00
BackgroundJob.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Barcodes.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Barcodes_ValueBuilder.t Bug 26328: Add test 2022-03-23 10:50:51 -10:00
Biblio.t Bug 28328: Adjust tests 2023-05-10 15:26:17 -03:00
Biblio_holdsqueue.t Bug 30728: Add unit tests 2022-05-12 22:17:46 -10:00
Breeding.t Bug 30813: Remove TransformMarcToKohaOneField 2022-06-08 11:40:30 -03:00
Budgets.t Bug 32351: Fix Budgets.t 2022-11-30 15:58:15 -03:00
Cache.t Bug 16067: Remove FastMmap 2020-12-04 15:40:58 +01:00
Calendar.t Bug 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02:00
Charset.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Circulation.t Bug 31735: Avoid re-fetcing objects from database by passing them directly instead of ids to various subroutines 2023-05-12 12:40:21 -03:00
Circulation_holdsqueue.t Bug 30728: Add unit tests 2022-05-12 22:17:46 -10:00
Clubs.t Bug 29736: (QA follow-up) No need to delete all clubs 2022-01-13 16:37:33 -10:00
Context.t Bug 32687: Get server version in Context::get_versions 2023-02-24 17:52:28 -03:00
Contract.t Bug 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02:00
CourseReserves.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
DecreaseLoanHighHolds.t Bug 29102: Do not count patron's own hold against limits 2022-11-04 19:20:24 -03:00
Filter_MARC_ViewPolicy.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Fines.t Bug 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02:00
FrameworkPlugin.t Bug 28769: Remove tabloop from cataloguing plugins 2021-10-18 11:28:40 +02:00
Heading.t Bug 33557: Add LinkerConsiderThesaurus system preference 2023-05-10 15:26:26 -03:00
Heading_MARC21.t Bug 33277: Do not search using thesaurus when linking non 6XX fields 2023-05-10 15:26:22 -03:00
Hold.t Bug 14783: (QA follow-up) Rename method and move tests 2022-10-17 15:43:22 -03:00
Holds.t Bug 31735: Avoid re-fetcing objects from database by passing them directly instead of ids to various subroutines 2023-05-12 12:40:21 -03:00
HoldsQueue.t Bug 31557: (QA follow-up) Make tests more robust 2023-05-12 11:22:48 -03:00
Holidays.t Bug 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02:00
ILSDI_Services.t Bug 29924: Update ILSDI to be aware of expired passwords 2022-05-06 10:33:09 -10:00
Illcomments.t Bug 26384: Fix executable flags 2020-09-11 09:56:56 +02:00
Illrequestattributes.t Bug 26384: Fix executable flags 2020-09-11 09:56:56 +02:00
Illrequests.t Bug 32548: Add tests 2023-05-09 11:46:58 -03:00
ImportBatch.t Bug 32804: (QA follow-up) Typo ahs and fix ImportBatch.t 2023-03-17 09:59:12 -03:00
ImportExportFramework.t Bug 13952: (follow-up) Tests 2022-04-04 16:23:45 +02:00
Installer.t Bug 26326: (follow-up) Add ability to check for existence of any primary key 2021-11-03 15:40:52 +01:00
Items.t Bug 32456: Unit tests 2022-12-27 10:42:19 -03:00
Koha.t Bug 30870: Don't skip tests if Test::Deep if not installed 2022-06-01 13:40:26 -03:00
Koha_Database.t Bug 26384: Fix executable flags 2020-09-11 09:56:56 +02:00
Koha_Elasticsearch.t Bug 26384: Fix executable flags 2020-09-11 09:56:56 +02:00
Koha_ExternalContent_OverDrive.t Bug 25527: Add logger to Koha::ExternalContent 2020-05-18 15:25:03 +01:00
Koha_ExternalContent_RecordedBooks.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Koha_MetadataRecord_Authority.t Bug 30756: Rename to Koha_MetadataRecord_Authority 2022-06-02 13:53:39 -03:00
Koha_Misc_Files.t Bug 22001: Remove the RaiseError occurrences from tests 2020-03-27 08:52:56 +00:00
Languages.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Letters.t Bug 33403: Fix Letters.t if number pattern with id=1 does not exist 2023-05-10 15:26:27 -03:00
LibraryGroups.t Bug 29844: Fix ->search occurrences 2022-02-09 15:36:23 -10:00
Linker_Default.t Bug 30280: Add Unit tests 2022-10-03 10:00:12 -03:00
Linker_FirstMatch.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Log.t Bug 32057: (QA follow-up) Add a simple test 2023-03-14 08:49:34 -03:00
MarcModificationTemplates.t Bug 31644: (QA follow-up) Add two missing shebang lines 2022-10-24 11:53:19 -03:00
Members.t Bug 32426: (follow-up) Fix for Members.t / Patrons.t 2023-03-28 14:54:03 +02:00
Message.t Bug 33192: (QA follow-up) Fix it-IT sample data and unit tests 2023-04-14 11:35:40 -03:00
MungeMarcPrice.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Overdues.t Bug 29844: Fix ->search occurrences 2022-02-09 15:36:23 -10:00
Passwordrecovery.t Bug 31739: Password recovery from staff fails if previous expired reset-entry exists. 2022-10-24 14:12:16 -03:00
PatronLists.t Bug 16446: Add ability to add patrons to list by borrowernumber 2021-10-21 12:24:04 +02:00
Patroncards.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Patrons.t Bug 12446: (QA follow-up) Rename canbeguarantee => can_be_guarantee 2022-06-23 13:34:05 -03:00
Record.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
RecordProcessor_EmbedSeeFromHeadings.t Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
Reports.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Reserves.t Bug 31735: Avoid re-fetcing objects from database by passing them directly instead of ids to various subroutines 2023-05-12 12:40:21 -03:00
RotatingCollections.t Bug 29144: Remove opac_info from a few tests 2022-09-16 09:55:20 -03:00
Search.t Bug 31471: Send multiple ISBN with 'OR' for FindDuplicate 2023-03-06 09:51:45 -03:00
Serials.t Bug 30718: Use flatpickr's altInput 2022-08-19 08:26:31 -03:00
Serials_2.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Service.t
…
ShelfBrowser.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Sitemapper.t Bug 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02:00
Stats.t Bug 30928: Add tests 2023-05-10 14:19:21 -03:00
StockRotationItems.t Bug 30518: Unit test 2022-04-19 21:25:50 -10:00
StockRotationRotas.t Bug 26384: Fix executable flags 2020-09-11 09:56:56 +02:00
StockRotationStages.t Bug 29809: Fix StockRotationStages.t 2022-01-31 21:55:40 -10:00
SuggestionEngine_ExplodedTerms.t Bug 31069: Remove ExplodedTerms dependency on templates 2022-07-18 12:37:35 -03:00
Suggestions.t Bug 23991: Move SearchSuggestion to Koha::Suggestions 2022-06-27 12:30:28 -03:00
TablesSettings.t Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
Tags.t Bug 31517: Remove unused get_tag function 2022-11-04 19:30:56 -03:00
Templates.t Bug 29695: Remove GetColumnDefs 2022-04-12 11:40:16 +02:00
TestBuilder.t Bug 32350: Add subtest for bad columns 2022-11-30 12:40:33 -03:00
Upload.t Bug 31598: Fix random failure on Jenkins for Upload.t 2022-09-22 08:07:01 -03:00
UsageStats.t Bug 28565: Refactor tests 2021-07-26 12:46:35 +02:00
Virtualshelves.t Bug 30933: (follow-up) Consolidate transfer checks 2022-07-20 09:04:07 -03:00
XISBN.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
XSLT.t Bug 33567: Empty NFL_statuses pref in unit test 2023-05-12 11:22:41 -03:00
check_kohastructure.t Bug 26384: Fix executable flags 2020-09-11 09:56:56 +02:00
check_sysprefs.t Bug 23895: Fix check_sysprefs.t 2020-10-14 15:52:29 +02:00
db_structure.t Bug 26384: Fix executable flags 2020-09-11 09:56:56 +02:00
rollingloans.t Bug 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02:00
sysprefs.t
…
yaml.t Bug 22824: Adjust tests to match final behaviours 2021-03-04 16:18:42 +01:00
zebra_config.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00