ILIAS
release_5-4 Revision v5.4.26-12-gabc799a52e6
◀ ilDoc Overview
JCalTest.php
Go to the documentation of this file.
1
<?
php
2
3
namespace
Sabre\VObject
;
4
5
use
PHPUnit\Framework\TestCase
;
6
7
class
JCalTest
extends
TestCase {
8
9
function
testToJCal
() {
10
11
$cal =
new
Component\VCalendar();
12
13
$event = $cal->add(
'VEVENT'
, [
14
"UID"
=>
"foo"
,
15
"DTSTART"
=>
new
\
DateTime
(
"2013-05-26 18:10:00Z"
),
16
"DURATION"
=>
"P1D"
,
17
"CATEGORIES"
=> [
'home'
,
'testing'
],
18
"CREATED"
=>
new
\
DateTime
(
"2013-05-26 18:10:00Z"
),
19
20
"ATTENDEE"
=>
"mailto:armin@example.org"
,
21
"GEO"
=> [51.96668, 7.61876],
22
"SEQUENCE"
=> 5,
23
"FREEBUSY"
=> [
"20130526T210213Z/PT1H"
,
"20130626T120000Z/20130626T130000Z"
],
24
"URL"
=>
"http://example.org/"
,
25
"TZOFFSETFROM"
=>
"+0500"
,
26
"RRULE"
=> [
'FREQ'
=>
'WEEKLY'
,
'BYDAY'
=> [
'MO'
,
'TU'
]],
27
],
false
);
28
29
// Modifying DTSTART to be a date-only.
30
$event->dtstart[
'VALUE'
] =
'DATE'
;
31
$event->add(
"X-BOOL"
,
true
, [
'VALUE'
=>
'BOOLEAN'
]);
32
$event->add(
"X-TIME"
,
"08:00:00"
, [
'VALUE'
=>
'TIME'
]);
33
$event->add(
"ATTACH"
,
"attachment"
, [
'VALUE'
=>
'BINARY'
]);
34
$event->add(
"ATTENDEE"
,
"mailto:dominik@example.org"
, [
"CN"
=>
"Dominik"
,
"PARTSTAT"
=>
"DECLINED"
]);
35
36
$event->add(
'REQUEST-STATUS'
, [
"2.0"
,
"Success"
]);
37
$event->add(
'REQUEST-STATUS'
, [
"3.7"
,
"Invalid Calendar User"
,
"ATTENDEE:mailto:jsmith@example.org"
]);
38
39
$event->add(
'DTEND'
,
'20150108T133000'
);
40
41
$expected = [
42
"vcalendar"
,
43
[
44
[
45
"version"
,
46
new \StdClass(),
47
"text"
,
48
"2.0"
49
],
50
[
51
"prodid"
,
52
new \StdClass(),
53
"text"
,
54
"-//Sabre//Sabre VObject "
.
Version::VERSION
.
"//EN"
,
55
],
56
[
57
"calscale"
,
58
new \StdClass(),
59
"text"
,
60
"GREGORIAN"
61
],
62
],
63
[
64
[
"vevent"
,
65
[
66
[
67
"uid"
, new \StdClass(),
"text"
,
"foo"
,
68
],
69
[
70
"dtstart"
, new \StdClass(),
"date"
,
"2013-05-26"
,
71
],
72
[
73
"duration"
, new \StdClass(),
"duration"
,
"P1D"
,
74
],
75
[
76
"categories"
, new \StdClass(),
"text"
,
"home"
,
"testing"
,
77
],
78
[
79
"created"
, new \StdClass(),
"date-time"
,
"2013-05-26T18:10:00Z"
,
80
],
81
[
82
"attendee"
, new \StdClass(),
"cal-address"
,
"mailto:armin@example.org"
,
83
],
84
[
85
"attendee"
,
86
(object)[
87
"cn"
=>
"Dominik"
,
88
"partstat"
=>
"DECLINED"
,
89
],
90
"cal-address"
,
91
"mailto:dominik@example.org"
92
],
93
[
94
"geo"
,
new
\StdClass(),
"float"
, [51.96668, 7.61876],
95
],
96
[
97
"sequence"
, new \StdClass(),
"integer"
, 5
98
],
99
[
100
"freebusy"
, new \StdClass(),
"period"
, [
"2013-05-26T21:02:13"
,
"PT1H"
], [
"2013-06-26T12:00:00"
,
"2013-06-26T13:00:00"
],
101
],
102
[
103
"url"
, new \StdClass(),
"uri"
,
"http://example.org/"
,
104
],
105
[
106
"tzoffsetfrom"
, new \StdClass(),
"utc-offset"
,
"+05:00"
,
107
],
108
[
109
"rrule"
, new \StdClass(),
"recur"
, [
110
'freq'
=>
'WEEKLY'
,
111
'byday'
=> [
'MO'
,
'TU'
],
112
],
113
],
114
[
115
"x-bool"
, new \StdClass(),
"boolean"
, true
116
],
117
[
118
"x-time"
, new \StdClass(),
"time"
,
"08:00:00"
,
119
],
120
[
121
"attach"
, new \StdClass(),
"binary"
, base64_encode(
'attachment'
)
122
],
123
[
124
"request-status"
,
125
new \StdClass(),
126
"text"
,
127
[
"2.0"
,
"Success"
],
128
],
129
[
130
"request-status"
,
131
new \StdClass(),
132
"text"
,
133
[
"3.7"
,
"Invalid Calendar User"
,
"ATTENDEE:mailto:jsmith@example.org"
],
134
],
135
[
136
'dtend'
,
137
new \StdClass(),
138
"date-time"
,
139
"2015-01-08T13:30:00"
,
140
],
141
],
142
[],
143
]
144
],
145
];
146
147
$this->assertEquals($expected, $cal->jsonSerialize());
148
149
}
150
151
}
DateTime
Sabre\VObject
Definition:
mergeduplicates.php:4
Sabre\VObject\JCalTest
Definition:
JCalTest.php:7
Sabre\VObject\Version\VERSION
const VERSION
Full version number.
Definition:
Version.php:17
Sabre\VObject\JCalTest\testToJCal
testToJCal()
Definition:
JCalTest.php:9
php
TestCase
libs
composer
vendor
sabre
vobject
tests
VObject
JCalTest.php
Generated on Thu Feb 27 2025 19:01:31 for ILIAS by
1.8.13 (using
Doxyfile
)