45 Commits

Author SHA1 Message Date
Florian Schlichting
0f14bcb73b gitlab-ci: install curl for davical build 2026-04-07 23:10:39 +02:00
Andrew Ruthven
a9ffb1e67c We need rst2pdf installed for testing
Looks like this has been removed as a dependency from a package.
2024-12-30 20:17:18 +13:00
Andrew Ruthven
4d06333f7e Drop the memcache only test, make the ldap+memcache test stage more comprehensive
The old memcache suite was gutted as it wasn't really much use and needed
LDAP to actually test auth caching correctly.
2024-05-27 09:46:12 +12:00
Andrew Ruthven
d686ea4c3f Allow tests to dynamically set the DAViCal configuration 2024-05-27 09:46:12 +12:00
Andrew Ruthven
521594bc3f Add testing for LDAP with memcache 2024-05-03 23:35:25 +12:00
Andrew Ruthven
bd6a47bee6 Add tests for memcache 2024-05-03 23:34:43 +12:00
Andrew Ruthven
bdc65cc777 iSchedule tests now work, test in CI 2024-04-01 18:58:33 +13:00
Andrew Ruthven
c2a054d28e Add initial tests for the web UI
Use Test::WWW::Mechanize to test the UI.

Closes #310
2024-02-29 00:43:47 +13:00
Andrew Ruthven
d7d7dd2ade Move the CI prep from repeated lines in the YML to a shell script
Oh, this is much easier to work with.

We can now detect the version of PostgreSQL installed and shouldn't
need to update CI just because PostgreSQL has been updated in Debian
Unstable.
2024-02-18 22:30:52 +13:00
Andrew Ruthven
e989e1cf97 Fix PROPFIND with Depth 1 if external bind is included
Previously something like this would be logged if debugging is enabled:

davical: LOG: Principal: Query: DBGQ: SELECT * FROM collection WHERE user_no= :user_no
davical: LOG: Principal: Query: DBGQ:  ":user_no" => ""
davical: BUG: :DAViCal Fatal Error: [42883] SQLSTATE[42883]: Undefined function: 7 ERROR:  operator does not exist: integer = boolean\nLINE 1: SELECT * FROM collection WHERE user_no= FALSE\n                                              ^\nHINT:  No operator matches the given name and argument types. You might need to add explicit type casts. at /home/puck/work/Calendar/awl/inc/AwlDatabase.php:94

And this would be returned as a response:

DAViCal Fatal Error

user_no doesn't get set when construction the Collection for the external
bind, so, just handle that instead of sending the empty string to the
database as a user_no.

Modify the tests from ccc7e182ba4cbfba66a4fe96e1c0620e46390b95 to tickle the
bug.

Closes #175.
2024-02-18 01:51:56 +13:00
Andrew Ruthven
30b05549d0 Remove tests related to memcache, add BPS to copyright
I re-used some of the test LDAP logic from the test suite of Request
Tracker by BPS.
2024-02-17 02:25:25 +00:00
Andrew Ruthven
353a2d1b13 Add testing for LDAP with memcache 2024-02-17 02:25:25 +00:00
Benedikt Spranger
c88c730236 Gitlab tests: Use postgres 16
Signed-off-by: Benedikt Spranger <b.spranger@linutronix.de>
2023-10-23 17:47:42 +13:00
Florian Schlichting
72b13cfc65 gitlab-ci.yml: add missing phpunit, awl to targets running debuild
we now require this for "make test"
2023-03-13 23:24:37 +01:00
Andrew Ruthven
ad1be4b640 Add CI for memcache 2023-01-18 00:11:57 +13:00
Andrew Ruthven
713f8dafdf Copy the log artifacts into unique directories per test 2023-01-08 12:46:29 +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
a9d438dc0f The PHP 8.2 container has deflate enabled in Apache2, disable it.
This is causing a test to fail because we're being sent a gzip compressed
result. My reading of the curl manpage says that it should be decompressed
by curl, but it isn't. Let's just disable the deflate module. Here is what
we're getting:

Displaying diff for test 0548-iCal-PROPFIND
=======================================
--- tests/regression-suite/0548-iCal-PROPFIND.result	2022-12-10 00:43:52.898403110 +0000
+++ tests/regression-suite/results/0548-iCal-PROPFIND	2022-12-10 00:45:11.378242838 +0000
@@ -1,1233 +1,12 @@
-HTTP/1.1 207 Multi-Status
+HTTP/1.1 200 OK
 Date: Dow, 01 Jan 2000 00:00:00 GMT
 DAV: 1, 2, 3, access-control, calendar-access, calendar-schedule
 DAV: extended-mkcol, bind, addressbook, calendar-auto-schedule, calendar-proxy
-ETag: "ae8aac5229a8a5d9ee7c86100322162d"
-Content-Length: 28703
-Content-Type: text/xml; charset="utf-8"
+Content-Encoding: gzip
+Content-Length: 2042
+Content-Type: text/html; charset=UTF-8
2022-12-10 15:37:43 +13:00
Andrew Ruthven
042237b05d PHP 8.2 seems to set the timezone to UTC, always set Pacific/Auckland for testcases
Previously the logic only set Pacific/Auckland if the date.timezone setting
on the PHP ini files wasn't set. Let's just always set it if we're processing
the test suite.
2022-12-10 15:37:43 +13:00
Andrew Ruthven
c904ef5551 Debian Unstable no longer has bzip2 by default, use xz instead 2022-12-09 23:48:07 +13:00
Andrew Ruthven
547c78c48f Debian Unstable has PostgreSQL 15 now 2022-12-09 23:48:07 +13:00
Florian Schlichting
5b41b49f35 test_bullseye_carddavclientinterop: user3 description is empty 2022-10-04 12:39:50 +02:00
Florian Schlichting
8b71f09e32 test_bullseye_carddavclientinterop: Interop is now capitalized 2022-10-04 11:22:37 +02:00
Andrew Ruthven
9fb6be6f9c Debian Bullseye has PostgreSQL 13. 2022-02-06 13:57:07 +13:00
Andrew Ruthven
d304f47d10 Debian Unstable now has PostgreSQL 14. 2022-02-06 13:56:47 +13:00
Andrew Ruthven
0cf9cfc73a Switch testing to Bullseye, drop Stretch 2022-02-05 16:35:25 +13: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
Florian Schlichting
5c2cb6c34a CI: run interop tests from carddavclient by Michael Stilkerich <ms@mike2k.de> 2021-02-08 19:08:28 +08: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
dca1eb75da Enable debug logging in CI 2021-02-06 19:58:51 +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
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
Florian Schlichting
d6c1c87fc6 CI: build and test on Debian unstable, then several stable releases relevant to our users
stable releases currently include bullseye + buster + stretch; would be
nice if we could add Fedora or Gentoo or Arch ...
2021-02-03 01:18:16 +08:00
Florian Schlichting
3e8e7f21ab gitlab-ci: use latest Debian stable (fixes #221) 2020-04-14 17:56:34 +02:00
Andrew Ruthven
ace5cfe855 Sure bet to ensure we use a higher version number than Debian 2019-01-30 23:00:22 +13:00
Andrew Ruthven
7b55b7b1f2 meh, I give up on php for now 2019-01-05 00:31:37 +13:00
Andrew Ruthven
93f290e44d The pipeline showed 7.3 as being available, ah well. 2019-01-05 00:29:16 +13:00
Andrew Ruthven
f813fa3b0e Specific PHP version... 2019-01-05 00:27:40 +13:00
Andrew Ruthven
4c930a41d2 Package build wants dot for graphs, and to run php 2019-01-05 00:26:22 +13:00
Jamie McClymont
28c78023b5 Keep Apache logs as CI artifacts for debugging failures 2019-01-03 16:04:28 +13:00
Florian Schlichting
7330eaf995 checkpoint scheduling test results and add them to CI runner (fixes: #170)
I think these remaining changes are due to AWLs vCalendar->GetItip()
creating a "minimal iTIP version" of events, and Jan Mate's "various
scheduling related fixes" in 31af435c and 92f48f38
2018-12-31 03:34:37 +01:00
Jamie McClymont
a4c9718bb2 Add Gitlab CI
Signed-off-by: Jamie McClymont <jamiemcclymont@catalyst.net.nz>
2018-11-30 15:59:04 +13:00