1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
#!/usr/bin/perl
use warnings;
use strict;
use RT::Test nodata => 1, tests => 13;
my $q = RT::Queue->new(RT->SystemUser);
ok( $q->Create( Name => 'DateCFTest' . $$ ), 'create queue' );
my $cf = RT::CustomField->new(RT->SystemUser);
ok(
$cf->Create(
Name => 'date-' . $$,
Type => 'Date',
MaxValues => 1,
LookupType => RT::Ticket->CustomFieldLookupType,
),
'create cf date'
);
ok( $cf->AddToObject($q), 'date cf apply to queue' );
my $ticket = RT::Ticket->new(RT->SystemUser);
ok(
$ticket->Create(
Queue => $q->id,
Subject => 'Test',
'CustomField-' . $cf->id => '2010-05-04',
),
'create ticket with cf set to 2010-05-04'
);
is( $ticket->CustomFieldValues->First->Content, '2010-05-04', 'date in db is' );
{
my $tickets = RT::Tickets->new(RT->SystemUser);
$tickets->LimitCustomField(
CUSTOMFIELD => $cf->id,
OPERATOR => '=',
VALUE => '2010-05-04',
);
is( $tickets->Count, 1, 'found the ticket with exact date: 2010-05-04' );
}
{
my $tickets = RT::Tickets->new(RT->SystemUser);
$tickets->LimitCustomField(
CUSTOMFIELD => $cf->id,
OPERATOR => '>',
VALUE => '2010-05-03',
);
is( $tickets->Count, 1, 'found ticket with > 2010-05-03' );
}
{
my $tickets = RT::Tickets->new(RT->SystemUser);
$tickets->LimitCustomField(
CUSTOMFIELD => $cf->id,
OPERATOR => '<',
VALUE => '2010-05-05',
);
is( $tickets->Count, 1, 'found ticket with < 2010-05-05' );
}
{
my $tickets = RT::Tickets->new(RT->SystemUser);
$tickets->LimitCustomField(
CUSTOMFIELD => $cf->id,
OPERATOR => '=',
VALUE => '2010-05-05',
);
is( $tickets->Count, 0, 'did not find the ticket with = 2010-05-05' );
}
{
my $tickets = RT::Tickets->new(RT->SystemUser);
$tickets->LimitCustomField(
CUSTOMFIELD => $cf->id,
OPERATOR => '<',
VALUE => '2010-05-03',
);
is( $tickets->Count, 0, 'did not find the ticket with < 2010-05-03' );
}
{
my $tickets = RT::Tickets->new(RT->SystemUser);
$tickets->LimitCustomField(
CUSTOMFIELD => $cf->id,
OPERATOR => '>',
VALUE => '2010-05-05',
);
is( $tickets->Count, 0, 'did not find the ticket with > 2010-05-05' );
}
$ticket = RT::Ticket->new(RT->SystemUser);
ok(
$ticket->Create(
Queue => $q->id,
Subject => 'Test',
'CustomField-' . $cf->id => '2010-05-04 11:34:56',
),
'create ticket with cf set to 2010-05-04 11:34:56'
);
is( $ticket->CustomFieldValues->First->Content,
'2010-05-04', 'date in db only has date' );
|