Florian Schlichting
effc004741
use "." to concatenate strings, not "+" ( fixes #288 )
...
Unsupported operand types: string + string at /usr/share/davical/inc/caldav-ACL.php:146
2023-03-23 22:17:23 +01:00
Andrew Ruthven
b40c96debb
If time-range is set, only return matching events.
...
Closes #280
2023-03-12 20:19:10 +01:00
Andrew Ruthven
15d01c8bed
Store DTSTART and DTEND from user in shadow columns
...
We want to store the calculated dtstart and dtend in the database so we can
use SQL to fetch records. However, we also need what the user sent us so we
can allow prop-filters to be used as well.
So we store what the user sends us in dtstart_orig and dtend_orig and only
use for relevant prop-filter reports.
2023-03-12 20:17:43 +01:00
Andrew Ruthven
5a73991496
DTSTART on VTODO is optional, don't force it to be set.
...
If we force setting DTSTART, then you can't use prop-filter to find VTODOs
with a DUE set and DTSTART unset. And, well, why should DTSTART be set to DUE?
This was introduced in 18150d702d91fa1a687801baa582d967e79fff8d .
2023-03-12 20:05:48 +01:00
Andrew Ruthven
badeca53c7
Update tests that check for CLASS in the database.
...
We no longer force CLASS to be PUBLIC in the database if it isn't set.
2023-03-12 20:05:48 +01:00
Andrew Ruthven
149ec3555f
CLASS is an optional field, don't set it to PUBLIC
...
As specified in RFC5545 the CLASS field is optional, and if it isn't present
is treated as PUBLIC. To allow a is-not-defined prop-filter to find
resources without CLASS set, we need to not store in the database. This
turns out to be okay, because to enforce privacy we always check to see if
it is PRIVATE or CONFIDENTIAL. We never check to see if it is PUBLIC.
Closes #284 .
2023-03-12 20:05:48 +01:00
Andrew Ruthven
4a380b12a2
Fixes to is-defined and is-not-defined prop-filter
...
Gosh, this was completely broken previously. A number of different scenarios now work.
I have used some of the state I've seen in a largish production database with the
presence of NULL and empty strings. I've assumed that empty string should be treated
as is-not-defined. Happy to be talked out of that.
Closes #281 .
2023-03-12 20:05:48 +01:00
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
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
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
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
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
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
Florian Schlichting
f37fa814b6
update 2038-REPORT-addressbook-query after AWL's param-filter: fix a typo / explode multivalue commit
...
this refers to 6395cd1 in AWL
the added results seem correct, as they all have a TEL;TYPE=WORK
property
2021-02-05 02:05:05 +08:00