The name is inbuxa, lowercase, like the wordmark; INBUXA reads as an acronym. The admin and webmail already changed. Here that's everything the server shows people: the brand macro behind the protocol greetings, the HTTP and SCIM realms, the startup banner and the calendar and contact PRODID; the first-party OAuth client descriptions; the legacy-protocol refusals; the default calendar and address book names and the SMTP greeting default, in the code and the schema served to the admin (checksum regenerated); startup and shutdown events; the User-Agent; the sign-in and RSVP pages; the service units; the OpenAPI realm; the crate descriptions and the README, where it's set in bold. Identifiers that are uppercase for their own reasons stay: INBUXA_* settings, SUBSPACE_INBUXA. So do code comments and the AGPL 5(a) notice lines. Tests follow: the IMAP ID name, the default collection names, the PRODID in the iTIP fixtures and the CalDAV free-busy expectations, and the e2e legacy-protocol refusals. The webdav, imap and jmap suites pass, so do the unit tests of every crate touched, and 73 of 75 SMTP tests; of the other two, antispam fails on main too, and queue_retry is a timing flake that passes on its own.
139 lines
3.6 KiB
Plaintext
139 lines
3.6 KiB
Plaintext
# iTIP tests
|
|
|
|
# Recipient is not organizer or attendee
|
|
> itip [email protected] [email protected]
|
|
BEGIN:VCALENDAR
|
|
PRODID:-//Example/ExampleCalendarClient//EN
|
|
METHOD:REQUEST
|
|
VERSION:2.0
|
|
BEGIN:VEVENT
|
|
ORGANIZER:mailto:[email protected]
|
|
ATTENDEE;ROLE=CHAIR;PARTSTAT=ACCEPTED;CN=A:mailto:[email protected]
|
|
ATTENDEE;RSVP=TRUE;CUTYPE=INDIVIDUAL;CN=B:mailto:[email protected]
|
|
ATTENDEE;RSVP=TRUE;CUTYPE=INDIVIDUAL;CN=C:mailto:[email protected]
|
|
ATTENDEE;RSVP=TRUE;CUTYPE=INDIVIDUAL;CN=Hal:mailto:[email protected]
|
|
ATTENDEE;RSVP=FALSE;CUTYPE=ROOM:[email protected]
|
|
ATTENDEE;ROLE=NON-PARTICIPANT;RSVP=FALSE:mailto:[email protected]
|
|
DTSTAMP:19970611T190000Z
|
|
DTSTART:19970701T200000Z
|
|
DTEND:19970701T2100000Z
|
|
SUMMARY:Conference
|
|
UID:[email protected]
|
|
SEQUENCE:0
|
|
STATUS:CONFIRMED
|
|
END:VEVENT
|
|
END:VCALENDAR
|
|
|
|
> send
|
|
NotOrganizerNorAttendee
|
|
|
|
> reset
|
|
|
|
# Refreshing an event (1)
|
|
> put [email protected] [email protected]
|
|
BEGIN:VCALENDAR
|
|
METHOD:REQUEST
|
|
PRODID:-//Example/ExampleCalendarClient//EN
|
|
VERSION:2.0
|
|
BEGIN:VEVENT
|
|
UID:[email protected]
|
|
SEQUENCE:0
|
|
RDATE:19980304T180000Z
|
|
RDATE:19980311T180000Z
|
|
RDATE:19980318T180000Z
|
|
ORGANIZER:mailto:[email protected]
|
|
ATTENDEE;ROLE=CHAIR;PARTSTAT=ACCEPTED:mailto:[email protected]
|
|
ATTENDEE;RSVP=TRUE:mailto:[email protected]
|
|
SUMMARY:Review Accounts
|
|
DTSTART:19980304T180000Z
|
|
DTEND:19980304T200000Z
|
|
DTSTAMP:19980303T193000Z
|
|
LOCATION:Conference Room A
|
|
STATUS:CONFIRMED
|
|
END:VEVENT
|
|
END:VCALENDAR
|
|
|
|
# Refreshing an event (2)
|
|
> expect
|
|
from: [email protected]
|
|
to: [email protected]
|
|
summary: invite
|
|
summary.attendee: Participants([ItipParticipant { email: "[email protected]", name: None, is_organizer: true }, ItipParticipant { email: "[email protected]", name: None, is_organizer: false }])
|
|
summary.dtstart: Time(ItipTime { start: 889034400, tz_id: 32768 })
|
|
summary.location: Text("Conference Room A")
|
|
summary.summary: Text("Review Accounts")
|
|
BEGIN:VCALENDAR
|
|
METHOD:REQUEST
|
|
PRODID:-//inbuxa//inbuxa Server//EN
|
|
VERSION:2.0
|
|
BEGIN:VEVENT
|
|
LOCATION:Conference Room A
|
|
STATUS:CONFIRMED
|
|
SUMMARY:Review Accounts
|
|
DTEND:19980304T200000Z
|
|
DTSTART:19980304T180000Z
|
|
ATTENDEE;ROLE=CHAIR;PARTSTAT=ACCEPTED:mailto:[email protected]
|
|
ATTENDEE;RSVP=TRUE;PARTSTAT=NEEDS-ACTION:mailto:[email protected]
|
|
ORGANIZER:mailto:[email protected]
|
|
UID:[email protected]
|
|
RDATE:19980304T180000Z
|
|
RDATE:19980311T180000Z
|
|
RDATE:19980318T180000Z
|
|
DTSTAMP:0
|
|
SEQUENCE:0
|
|
END:VEVENT
|
|
END:VCALENDAR
|
|
|
|
# Refreshing an event (3)
|
|
> send
|
|
|
|
# Refreshing an event (4)
|
|
> itip [email protected] [email protected]
|
|
BEGIN:VCALENDAR
|
|
METHOD:REFRESH
|
|
PRODID:-//Example/ExampleCalendarClient//EN
|
|
VERSION:2.0
|
|
BEGIN:VEVENT
|
|
UID:[email protected]
|
|
SEQUENCE:0
|
|
ORGANIZER:mailto:[email protected]
|
|
ATTENDEE;ROLE=CHAIR;PARTSTAT=ACCEPTED:mailto:[email protected]
|
|
ATTENDEE;RSVP=TRUE:mailto:[email protected]
|
|
DTSTART:19980304T180000Z
|
|
END:VEVENT
|
|
END:VCALENDAR
|
|
|
|
# Refreshing an event (5)
|
|
> send
|
|
from: [email protected]
|
|
to: [email protected]
|
|
summary: invite
|
|
summary.attendee: Participants([ItipParticipant { email: "[email protected]", name: None, is_organizer: true }, ItipParticipant { email: "[email protected]", name: None, is_organizer: false }])
|
|
summary.dtstart: Time(ItipTime { start: 889034400, tz_id: 32768 })
|
|
summary.location: Text("Conference Room A")
|
|
summary.summary: Text("Review Accounts")
|
|
BEGIN:VCALENDAR
|
|
METHOD:REQUEST
|
|
PRODID:-//inbuxa//inbuxa Server//EN
|
|
VERSION:2.0
|
|
BEGIN:VEVENT
|
|
LOCATION:Conference Room A
|
|
STATUS:CONFIRMED
|
|
SUMMARY:Review Accounts
|
|
DTEND:19980304T200000Z
|
|
DTSTART:19980304T180000Z
|
|
ATTENDEE;ROLE=CHAIR;PARTSTAT=ACCEPTED:mailto:[email protected]
|
|
ATTENDEE;RSVP=TRUE;PARTSTAT=NEEDS-ACTION:mailto:[email protected]
|
|
ORGANIZER:mailto:[email protected]
|
|
UID:[email protected]
|
|
RDATE:19980304T180000Z
|
|
RDATE:19980311T180000Z
|
|
RDATE:19980318T180000Z
|
|
DTSTAMP:0
|
|
SEQUENCE:0
|
|
END:VEVENT
|
|
END:VCALENDAR
|
|
|
|
|
|
|