Koha-clms/t/db_dependent
Alex Buckley bed1646444 Bug 22827: Add age dependency on other fields than dateaccessioned
A new agefield has been added to the 'Automatic item modifications by
age' tool. The options for the agefield are: replacementpricedate, datelastborrowed,
datelastseen, damaged_on, itemlost_on, withdrawn_on

If no option is selected then Koha will default to saving 'agefield' =
items.dateaccessioned

Similarly, if a Koha instance has an old item rule without 'agefield'
defined then Koha will default to using 'items.dateaccessioned'.
This is confirmed by the AutomaticItemModificationByAge.t unit test.

Test plan:

1. Go to: Tools > Catalog > Automatic item modifications by age
2. Observe there is a new 'Age field' dropdown in the rule form.
3. Create a rule, set the values:
- 'Age in days' = 20
- Leave 'Age field' = 'Choose an age field'
- 'Substitutions': 'items.barcode' = 'test'
- Save the rule
4. Confirm the 'List of rules' page displays 'items.dateaccessioned in the 'Age field' column
5. Add another rule:
- 'Age in days' = 2
- 'Age field' = 'items.datelastseen'
- 'Substitutions': 'items.barcode' = 'test2'
- Save the rule
6. Confirm the 'List of rules' page displays 'items.datelastseen' in
the 'Age field' column for that second rule
7. Add some more rules and confirm you can delete them
8. Edit a record:
- Make the items.dateaccessioned = 3 day ago (so rule 1 is false)
- Make the items.datelastseen = 3 days ago (so rule 2 is true)
9. Run the automatic_items_modification_by_age.pl:
- sudo koha-shell <instance>
- cd misc/cronjobs
- ./automatic_item_modification_by_age.pl -v -c
10. Confirm the item has it's barcode set to 'test2'
11. Run unit tests:
- sudo koha-shell <instance>
- prove t/db_dependent/Items/AutomaticItemModificationByAge.t -v

Sponsored-By: Catalyst IT

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2022-04-08 15:49:16 +02:00
..
Acquisition Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02: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 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Biblio Bug 24674: (follow-up) Simpler regex 2021-11-05 12:17:08 +01:00
Circulation Bug 30114: Add Unit Tests 2022-04-04 16:23:45 +02:00
CourseReserves Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Creators Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Exporter Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Holds Bug 29976: (Bug 21729 follow-up) fix holds unit tests 2022-02-01 21:39:39 -10:00
Illrequest
…
Items Bug 22827: Add age dependency on other fields than dateaccessioned 2022-04-08 15:49:16 +02:00
Koha Bug 30345: Regression tests 2022-04-04 16:23:46 +02:00
LDAP
…
Labels Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Letters Bug 29759: (follow-up) Fix TemplateToolkit.t 2022-02-02 09:48:33 -10:00
Members Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
OAI Bug 29484: Regression tests 2021-12-10 21:14:59 -10:00
Patron Bug 29847: Make Koha::Patron::HouseboundProfile->housebound_visits return a resultset 2022-02-09 15:36:23 -10:00
Record Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Reports Bug 26669: Last Run if report not always updated 2022-04-04 16:23:46 +02:00
Reserves Bug 29976: (Bug 21729 follow-up) fix holds unit tests 2022-02-01 21:39:39 -10:00
SIP Bug 30110: Fix concatenation during assignements 2022-03-24 14:22:10 -10: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 29826: Manage call of Template Plugin Branches GetName() with null or empty branchcode 2022-03-03 16:11:50 -10:00
Utils Bug 30063: Remove occurrences of C4::Utils::DataTables::Members 2022-04-04 09:47:01 +02:00
api/v1 Bug 30394: Unit tests 2022-04-04 16:23:46 +02:00
cronjobs Bug 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02:00
data Bug 13952: (follow-up) Tests 2022-04-04 16:23:45 +02:00
misc/translator Bug 25067: Adjust paths in tests 2020-11-06 16:59:40 +01:00
selenium Bug 30063: Add selenium tests 2022-04-04 09:47:01 +02:00
www Bug 29368: Correctly mock Zebra index from tests 2021-10-29 15:45:53 +02: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
…
Accounts.t Bug 22435: (follow-up) Set CREATE offset for credits to positive 2021-08-04 14:06:43 +02:00
Acquisition.t Bug 29844: Some more uncaught cases 2022-02-09 15:36:23 -10: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 29915: Prevent bad cookie from corrupted session 2022-03-24 14:22:09 -10:00
AuthUtils.t
…
Auth_with_cas.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Auth_with_ldap.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
AuthorisedValues.t Bug 29844: Fix ->search occurrences 2022-02-09 15:36:23 -10:00
AuthoritiesMarc.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02: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 29486: Fix tests 2022-03-22 10:17:34 -10:00
Breeding.t Bug 29437: (QA follow-up) Update TODO in Breeding.t 2021-11-19 15:23:27 +01:00
Budgets.t Bug 29844: Fix ->search occurrences 2022-02-09 15:36:23 -10: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 19532: Make recalls.status an ENUM 2022-03-14 22:45:52 -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 28606: Remove $DEBUG and $ENV{DEBUG} 2021-06-24 11:53:44 +02: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 29562: Fix DecreaseLoanHighHolds.t 2022-01-31 21:55:40 -10: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 26852: Fix Heading.t 2021-08-11 17:01:51 +02:00
Heading_MARC21.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Hold.t Bug 21652: Simplify code 2022-01-28 21:52:54 -10:00
Holds.t Bug 19532: (QA follow-up) Fixing unit tests 2022-03-14 22:45:51 -10:00
HoldsQueue.t Bug 29015: Unit tests 2021-11-03 15:40:52 +01:00
Holidays.t Bug 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02:00
ILSDI_Services.t Bug 28238: Add tests 2022-01-28 11:09:07 -10:00
Illcomments.t
…
Illrequestattributes.t
…
Illrequests.t Bug 28932: Regression tests 2022-01-17 14:55:56 -10:00
ImportBatch.t Bug 29838: Fix string interpolation in ImportBatch.t 2022-01-21 21:34:51 -10: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 17748: (follow-up) Stronger unit tests 2022-03-24 14:22:10 -10:00
Koha.t Bug 29844: Fix ->search occurrences 2022-02-09 15:36:23 -10:00
Koha_Authority.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Koha_Database.t
…
Koha_Elasticsearch.t
…
Koha_ExternalContent_OverDrive.t
…
Koha_ExternalContent_RecordedBooks.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Koha_Misc_Files.t
…
Languages.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Letters.t Bug 28803: (follow-up) Error details improvement 2021-09-28 10:22:36 +02:00
LibraryGroups.t Bug 29844: Fix ->search occurrences 2022-02-09 15:36:23 -10:00
Linker_Default.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Linker_FirstMatch.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Log.t Bug 28692: (follow-up) Add tests 2021-11-16 14:00:21 +01:00
MarcModificationTemplates.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Members.t Bug 28962: Add del-unv-selfreg to crontab 2022-01-21 21:34:51 -10:00
Message.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02: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 28931: Use EXPORT_OK from Koha::DateUtils 2021-10-07 11:01:05 +02: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 29844: Fix ->search occurrences 2022-02-09 15:36:23 -10: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 29844: Fix ->search occurrences 2022-02-09 15:36:23 -10:00
RotatingCollections.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Search.t Bug 30153: (QA follow-up) Fix unit tests 2022-03-01 22:47:47 -10:00
Serials.t Bug 30035: Fix failing test 2022-03-04 09:33:00 -10: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 19532: Other objects used in recalls feature 2022-03-14 22:45:51 -10:00
StockRotationItems.t Bug 29809: (follow-up) Update tests and rename variable 2022-01-31 21:55:40 -10:00
StockRotationRotas.t
…
StockRotationStages.t Bug 29809: Fix StockRotationStages.t 2022-01-31 21:55:40 -10:00
SuggestionEngine_ExplodedTerms.t Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
Suggestions.t Bug 28855: (follow-up) adapt specific test 2021-12-15 12:14:53 -10:00
TablesSettings.t Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
Tags.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
Templates.t Bug 28303: Add unit test for badtemplatecheck 2021-10-05 10:58:13 +02:00
TestBuilder.t Bug 29862: Add missing txn begin/rollback in TestBuilder.t 2022-01-31 21:55:40 -10:00
Upload.t Bug 29844: Fix ->search occurrences 2022-02-09 15:36:23 -10:00
UsageStats.t Bug 28565: Refactor tests 2021-07-26 12:46:35 +02:00
Virtualshelves.t Bug 28959: Add virtualshelves.public as a boolean 2021-10-28 17:47:38 +02:00
XISBN.t Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
XSLT.t Bug 29802: Unit tests 2022-03-23 10:50:51 -10:00
check_kohastructure.t
…
check_sysprefs.t Bug 23895: Fix check_sysprefs.t 2020-10-14 15:52:29 +02:00
db_structure.t
…
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