3743 Commits

Author SHA1 Message Date
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
1e5c1fd1f3 Disable the debug mode, leave extra debugging output available 2021-09-18 23:22:57 +12:00
Andrew Ruthven
19e69060b9 Enable more debugging so I can see timezone differences in CI 2021-09-18 22:15:27 +12:00
Andrew Ruthven
9d520ab56d Don't check for magic quotes on PHP 8 or newer - functions removed.
This fix removes complaints about trying to call non-existant functions
as they have been removed from PHP 8. This closes #234.
2021-09-18 21:50:07 +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
23831686bb Don't escape HTML characters in the password.
We allow them when users set their passwords, and no doubt allowed
from LDAP and other external sources. We should allow them to be
entered. Closes #229.
2021-08-11 21:42:01 +12:00
Florian Schlichting
9da21ad116 release davical 1.1.10 r1.1.10 2021-03-01 21:24:48 +08:00
Andrew Ruthven
7ecd0bc6d0 Add a regression test for new invalid user result from FreeBusy 2021-03-02 00:33:10 +13:00
Andrew Ruthven
bda3db6da8 Return a nicer error message if no user is found for Free/Busy via email
Previously a stack trace would be returned as the call to dav_name failed,
for example:

Exception [0] Can't calculate dav_name for unknown username
At line 382 of /usr/share/davical/inc/Principal.php
================= Stack Trace ===================
/usr/share/davical/htdocs/freebusy.php[49] Principal->dav_name()
2021-03-02 00:26:49 +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
e92e981542 Listing External Calendars is part of the Administration menu and should be restricted to admins
this could be made configurable, or lumped in with
$c->restrict_setup_to_admin, but non-admins only get here by manually
entering the URL...
2021-02-09 01:54:32 +08:00
Florian Schlichting
202e2edd5a tighten $c->list_everyone to look for DAV::read privilege and actually block access to principals and collections
Groups really only exist in the davical web interface, CALDAV clients
discover principals and collections based on GRANTs such as the
DAV::read privilege, so use that for the web interface as well.

Also, not listing users is nice, actually blocking access to those users
(which can be enumerated with the id GET parameter) is a lot better.
2021-02-09 01:54:32 +08:00
Klaus M Pfeiffer
042ce5f076 add feature list_everyone (fixes #59) 2021-02-08 17:41:28 +00:00
Florian Schlichting
5c2cb6c34a CI: run interop tests from carddavclient by Michael Stilkerich <ms@mike2k.de> 2021-02-08 19:08:28 +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
8d7c8bafd1 CI: Compress the Apache log files 2021-02-06 21:51:31 +13:00
Andrew Ruthven
b8ce995ffa CI: Ensure DAViCal can write to log files
This appears to be causing PHP 8 to bomb out.
2021-02-06 21:09:33 +13:00
Andrew Ruthven
48fcc1f7b5 CI: Turn on debug logging for all the test runs 2021-02-06 20:49:59 +13:00
Andrew Ruthven
ccedbd1be9 Include the UID of the card which caused us to hit the RRULE limit
This will helpfully assist tracking down issues with recurrence rules.
2021-02-06 20:19:03 +13:00
Andrew Ruthven
dca1eb75da Enable debug logging in CI 2021-02-06 19:58:51 +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
f476675b10 CI: do not clobber apache logs
and include "latestphp" in the test names
2021-02-05 11:34:25 +08: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
Florian Schlichting
ec234cda64 correct test results after AWL merges of mstilkerich/awl-fix_abookquery_paramnotdef and mstilkerich/awl-fix_support_anyof_propfilter 2021-02-05 02:01:09 +08:00
Florian Schlichting
b863c99601 add two more reports testing an allof prop-filter and an anyof text-match prop-filter
BUG: both results are incorrect as explained in the tests. I thought I
should nevertheless commit them to illustrate the fix.
2021-02-05 02:01:09 +08:00
Florian Schlichting
b4f8f5a6c1 cardquery: ensure restriction to target collection remains in force even when we find that we need a post_filter step and thus throw away the SQL
this ensures a sane (but still wrong) result for
carddav/2051-REPORT-carddavclient-ParamNotDefinedSome
2021-02-05 02:01:09 +08:00
Florian Schlichting
6e87a1443c add a REPORT for a property with multiple values, not all of which match the is-not-defined filter (carddavclient's ParamNotDefinedSome test)
BUG: as explained in the test, this should not match Jonny2; and it
should most certainly not match those other VCARDs from a different
user's collections!
2021-02-05 02:01:09 +08:00
Florian Schlichting
57f0bc6e41 add 4 VCARDs from carddavclient AddressbookQueryTest
we will run these tests in user5's addresses
2021-02-05 02:00:42 +08:00
Andrew Ruthven
f94b000cc1 Correctly exclude cards where TYPE is not set on TEL records.
Commit f1bc3b0dc00d42bb6c3053559230690ae1a6745b in AWL fixed this behaviour.
2021-02-04 23:14:49 +13:00
Andrew Ruthven
963772a0f0 Fix the test result and hopefully make the description clearer 2021-02-04 23:08:05 +13:00
Andrew Ruthven
7c37035201 I always get whitespace changes 2021-02-04 22:20:19 +13:00
Andrew Ruthven
55fde81b50 Add a bit more info about various suites, and how to time timezone 2021-02-04 22:15:10 +13:00
Andrew Ruthven
b00fc5d5e6 Merge remote-tracking branch 'origin/master' 2021-02-04 22:09:18 +13:00
Florian Schlichting
75f62a81f6 fix PHP8 deprecation warnings: "Required parameter X follows optional parameter Y"
Deprecated: Required parameter $username follows optional parameter $attributes in inc/drivers_ldap.php on line 190
Deprecated: Required parameter $passwd follows optional parameter $attributes in inc/drivers_ldap.php on line 190
Deprecated: Required parameter $ua_string follows optional parameter $min_age in inc/external-fetch.php on line 42

As explained in https://www.php.net/manual/en/migration80.deprecated.php,
    If a parameter with a default value is followed by a required
    parameter, the default value has no effect. This is deprecated as of
    PHP 8.0.0 and can generally be resolved by dropping the default
    value, without a change in functionality
2021-02-03 23:25:51 +08:00
Jan Hicken
6cdbfcf226 Add default value for errcontext variable in error handler function
This variable is no longer passed in PHP 8.0.

It cannot be removed however, because it would not be backwards
compatible.
2021-02-03 14:57:57 +00:00
Jan Hicken
f376be164e Use brackets instead of curly braces for string offset access
Curly braces have been deprecated in PHP 7.4 and unsupported in PHP 8.0.
2021-02-03 14:57:57 +00:00
Florian Schlichting
39bfe88887 CI: add build_buster_latestphp
this helps to identify issues with new PHP versions before they appear
in Debian

note: debuild sanitizes PATH, needs --prepend-path=/usr/local/bin so
that the (non-Debian) php cli can be found
2021-02-03 22:39:18 +08:00