756 Commits

Author SHA1 Message Date
Andrew Ruthven
6819d6d7d1 Add a primary_key to the addressbook_addresses_* tables
This is part of the fix for #276.
2023-02-15 07:42:34 +00:00
Andrew Ruthven
c3970f3be2 Fix RRULE for BYHOUR, BYMINUTE and BYSECOND
Closes #283.
2023-02-15 07:28:35 +00:00
Andrew Ruthven
be60ec1778 Improve on SQL syntax fix to keep logging working, and add regression test.
Closes #279.
2023-02-04 03:09:40 +00:00
Andrew Ruthven
ad1be4b640 Add CI for memcache 2023-01-18 00:11:57 +13:00
Andrew Ruthven
c9ac75173b Allow the tester to hit N or n to continue 2023-01-08 12:13:32 +13:00
Andrew Ruthven
a323ba8dae Don't change the day of the month to 28, if it is > 28
Gosh. The logic was saying, if the modified date has a day of the
month > 28, change it to 28. Which is rather odd. Don't do that.

This closes #248. It also fixes a bug with FREQ=MONTHLY;BYMONTHDAY=-1
as it turns out.
2022-12-18 13:52:48 +13:00
Andrew Ruthven
7d0e2f2435 Test Free/Busy results for MONTHLY with BYMONTHDAY
Tests https://gitlab.com/davical-project/davical/-/issues/248
2022-12-18 13:52:48 +13:00
Andrew Ruthven
64f47fd9e6 Tests for MONTHLY recurrence where DTSTART is on the 29th of Feb
Each of the recurring events should also be on the 29th. Currently
these tests fail as the generated events are on the 28th. Oops.
2022-12-18 13:52:48 +13:00
Andrew Ruthven
7b2fa34f73 Reenable N being a default 2022-12-17 22:01:03 +13:00
Andrew Ruthven
45c74a628b Improvements to run_regressions.sh options
* Add q to quit
* Loop if an invalid command is entered, instead of continuing

As part of this I converted the large if/elif/elif/.../fi to a case
statement, a bit easier to read.
2022-12-17 15:40:06 +13:00
Andrew Ruthven
80102c2700 initial tests for issue 268 2022-12-15 20:50:44 +00:00
Andrew Ruthven
0750dd27a1 Another test result to update 2022-12-15 15:09:17 +13:00
Andrew Ruthven
3c1d39ff85 Ensure the test suite exists before operating on it.
I kept on making typos, so ended up with random directories, this should
stop that from happening in future.
2022-12-14 23:58:49 +13:00
Andrew Ruthven
fc09febad2 Update tests now that we don't inherit the DB from previous directory 2022-12-14 09:52:35 +13:00
Andrew Ruthven
692c20eec6 Don't inherit DB from previous test set 2022-12-14 08:53:32 +13:00
Andrew Ruthven
7d2bbeb37c Update regression tests that hit index.php for new CSP 2022-12-13 12:57:41 +13:00
Andrew Ruthven
ffe5ed24ad Add Content-Security-Policy header to sample Apache2 config files
We now support running with a strict self CSP, let's provide that!
2022-12-13 12:57:41 +13:00
Andrew Ruthven
aab8ddfd30 Ensure that all fields are defined, not added dynamically.
PHP 8.2 deprecates dynmically adding properties. See:
  https://php.watch/versions/8.2/dynamic-properties-deprecated
2022-12-10 14:37:31 +13:00
Andrew Ruthven
8162b9f850 Ensure that propfind for access is deterministic.
I noticed that the ordering of principals returned wasn't deterministic
for tests. Ensure it is.
2022-12-10 02:04:27 +13:00
Florian Schlichting
f44a996432 do not report VTODO in freebusy (fixes: #267)
RFC 4791 clearly states in 7.10:
    Only VEVENT components without a TRANSP property or with the TRANSP
    property set to OPAQUE, and VFREEBUSY components SHOULD be considered
    in generating the free busy time information.

Looking at fa67ef987e, this used to be VFREEBUSY until the refactoring, and
0886-REPORT-freebusy.test still had that.

Apparently we're not (yet) considering VAVAILABILITY (RFC 7953) here.
2022-10-04 08:47:53 +02:00
Andrew Ruthven
6cf8d5f81d Another attempt to make the results deterministic 2022-07-12 14:27:50 +12:00
Andrew Ruthven
b05a9b2cc0 Final result update?
This time I appear to have locally had the same result as on Gitlab.
I don't like this though, as the order keeps changing.
2022-06-29 00:08:16 +12:00
Andrew Ruthven
26b92a864d Try and be more deterministic. 2022-06-28 23:57:18 +12:00
Andrew Ruthven
d5cb124184 Report about dumping the database 2022-06-28 23:56:57 +12:00
Andrew Ruthven
d90d85d00e Make GET on a collection deterministic.
Turns out it was returning a sorted list based on a generated uuid, which
could be different in different regression environments. When I was
running tests locally I was always using the same initial.dbdump
file. The tests now pass even with a truely fresh regression DB.
2022-06-28 22:47:31 +12:00
Andrew Ruthven
6d61ed9f8d Update test results
This is now the ordering I consistently get, maybe this'll work on gitlab?
2022-06-28 20:28:21 +12:00
Andrew Ruthven
7cebd30eb5 Fix test result 2022-02-18 23:11:50 +13:00
Andrew Ruthven
5f71ccae8b Limit results for get_include_subcollections
Closes #231.
2022-02-18 23:11:50 +13:00
Andrew Ruthven
c5cbd75be4 The knock on effects of making a new event for testing...
Missed one.
2021-09-19 02:43:34 +12:00
Andrew Ruthven
fbb6b34508 The knock on effects of making a new event for testing... 2021-09-19 02:33:32 +12:00
Andrew Ruthven
4a9190462c Fix regression tests following Piotr's fix in 467a6bf8900bd0c37f30e74b4adeb6ef801d4eb5 2021-09-19 02:08:33 +12:00
Andrew Ruthven
f82929e6a2 Regression tests that tickle #247
Zero duration meeting should have a zero duration time in Free/Busy,
but doesn't, the times are whacky.
2021-09-19 02:04:50 +12:00
Andrew Ruthven
04f2da406e DTSTART and DTEND for Free/Busy is in UTC 2021-09-19 01:28:19 +12:00
Andrew Ruthven
255e8bf463 Add more details about time jump test 2021-09-19 00:39:52 +12:00
Andrew Ruthven
778f51ca28 Disabling raw gets rid of some of the garbage 2021-09-19 00:30:42 +12:00
Andrew Ruthven
c6e4189fa0 Strip off the space after the face as well 2021-09-19 00:14:59 +12:00
Andrew Ruthven
e47a6d4838 Re-add the headers from running via the webserver 2021-09-19 00:14:20 +12:00
Andrew Ruthven
029849c09b Test the time during a timezone change 2021-09-19 00:13:20 +12:00
Andrew Ruthven
efdbd77cad Add a time zone to a test to anchor it for consistent results 2021-09-19 00:02:53 +12:00
Andrew Ruthven
326afc8cfc Teach how to set timezone when running standalone
It is useful for debugging to run this command standalone, but in
that case it typically has to set the timezone for the database to
ensure that the times in the results are the same as the PHP times.
2021-09-19 00:01:01 +12:00
Andrew Ruthven
e4f48ddc1a For RRULE BYMONTHDAY skip expansions where the new day is not the day we expect.
This fixes one of the issues raised in #248.
2021-08-11 22:36:38 +12:00
Andrew Ruthven
7ecd0bc6d0 Add a regression test for new invalid user result from FreeBusy 2021-03-02 00:33:10 +13:00
Florian Schlichting
90bcfba683 Update carddav/2042-REPORT-addressbook-query together with df6ff3a in AWL 2021-03-01 13:55:15 +08:00
Florian Schlichting
5ee16172af Add tests for AWLs "Fix param-filter that checks if a parameter is defined" 2021-02-08 17:38:17 +08:00
Florian Schlichting
9d144cfe24 Add test for AWLs "Fix param-filter for multi-value parameters with TYPE=T1,T2 format" and update 2044 accordingly
2044 wants VCARDs with either TEL or EMAIL of TYPE=WORK. !20 correctly
splits the comma separated list of parameters so another two vCards
now correctly match (see also
https://gitlab.com/davical-project/awl/-/merge_requests/20#note_503183133)
2021-02-08 17:29:26 +08:00
Florian Schlichting
fd35aacb85 Add tests for AWLs "Fix GetProperties: Select properties with group prefix" 2021-02-08 17:29:26 +08:00
Florian Schlichting
56dc373a71 Add tests for AWLs "Fix: GetProperties must treat property names as case-insensitive" 2021-02-08 17:29:26 +08:00
Andrew Ruthven
a1395eae0f Only return the fields that we need for the test 2021-02-07 01:28:06 +13:00
Andrew Ruthven
d822cdf4d0 Only return what we're testing, makes it easier to understand regressions 2021-02-06 19:51:43 +13:00
Andrew Ruthven
31fbfe5d88 Add test for anyof 2021-02-06 19:46:35 +13:00