View | Details | Raw Unified | Return to bug 34887
Collapse All | Expand All

(-)a/t/Patron.t (-313 lines)
Lines 1-313 Link Here
1
#!/usr/bin/perl
2
3
# This file is part of Koha.
4
#
5
# Koha is free software; you can redistribute it and/or modify it
6
# under the terms of the GNU General Public License as published by
7
# the Free Software Foundation; either version 3 of the License, or
8
# (at your option) any later version.
9
#
10
# Koha is distributed in the hope that it will be useful, but
11
# WITHOUT ANY WARRANTY; without even the implied warranty of
12
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
# GNU General Public License for more details.
14
#
15
# You should have received a copy of the GNU General Public License
16
# along with Koha; if not, see <http://www.gnu.org/licenses>.
17
18
use Modern::Perl;
19
20
use Test::More tests => 3;
21
use Test::Warn;
22
use t::lib::Mocks;
23
use t::lib::TestBuilder;
24
25
use_ok('Koha::Object');
26
use_ok('Koha::Patron');
27
28
use Koha::Database;
29
30
my $schema  = Koha::Database->new->schema;
31
my $builder = t::lib::TestBuilder->new;
32
33
subtest 'Accessor tests' => sub {
34
    plan tests => 9;
35
    $schema->storage->txn_begin;
36
37
    my $object = Koha::Patron->new( { surname => 'Test Patron' } );
38
    is( $object->surname(), 'Test Patron', "Accessor returns correct value" );
39
    $object->surname('Test Patron Surname');
40
    is( $object->surname(), 'Test Patron Surname', "Accessor returns correct value after set" );
41
42
    my $object2 = Koha::Patron->new( { surname => 'Test Patron 2' } );
43
    is( $object2->surname(), 'Test Patron 2', "Accessor returns correct value" );
44
    $object2->surname('Test Patron Surname 2');
45
    is( $object2->surname(), 'Test Patron Surname 2', "Accessor returns correct value after set" );
46
47
    my $ret;
48
    $ret = $object2->set( { surname => "Test Patron Surname 3", firstname => "Test Firstname" } );
49
    ok( ref($ret) eq 'Koha::Patron', "Set returns object on success" );
50
    is( $object2->surname(),   "Test Patron Surname 3", "Set sets first field correctly" );
51
    is( $object2->firstname(), "Test Firstname",          "Set sets second field correctly" );
52
53
    our $patron = Koha::Patron->new(
54
        {
55
            borrowernumber      => '12345',
56
            cardnumber          => '1234567890',
57
            surname             => 'mySurname',
58
            firstname           => 'myFirstname',
59
            title               => 'Mr.',
60
            othernames          => 'myOthernames',
61
            initials            => 'MM',
62
            streetnumber        => '100',
63
            streettype          => 'Blvd',
64
            address             => 'my personnal address',
65
            address2            => 'my adress2',
66
            city                => 'Marseille',
67
            state               => 'mystate',
68
            zipcode             => '13006',
69
            country             => 'France',
70
            email               => 'mySurname.myFirstname@email.com',
71
            phone               => '0402872934',
72
            mobile              => '0627884632',
73
            fax                 => '0402872935',
74
            emailpro            => 'myEmailPro@email.com',
75
            phonepro            => '0402873334',
76
            B_streetnumber      => '101',
77
            B_streettype        => 'myB_streettype',
78
            B_address           => 'myB_address',
79
            B_address2          => 'myB_address2',
80
            B_city              => 'myB_city',
81
            B_state             => 'myB_state',
82
            B_zipcode           => '23456',
83
            B_country           => 'myB_country',
84
            B_email             => 'myB_email',
85
            B_phone             => '0678353935',
86
            dateofbirth         => '1990-07-16',
87
            branchcode          => 'myBranCode',
88
            categorycode        => 'myCatCode',
89
            dateenrolled        => '2015-03-19',
90
            dateexpiry          => '2016-03-19',
91
            gonenoaddress       => '0',
92
            lost                => '0',
93
            debarred            => '2015-04-19',
94
            debarredcomment     => 'You are debarred',
95
            borrowernotes       => 'borrowernotes',
96
            sex                 => 'M',
97
            password            => 'hfkurhfe976634èj!',
98
            flags               => '55555',
99
            userid              => '87987',
100
            opacnote            => 'myOpacnote',
101
            contactnote         => 'myContactnote',
102
            sort1               => 'mySort1',
103
            sort2               => 'mySort2',
104
            altcontactfirstname => 'myAltcontactfirstname',
105
            altcontactsurname   => 'myAltcontactsurname',
106
            altcontactaddress1  => 'myAltcontactaddress1',
107
            altcontactaddress2  => 'myAltcontactaddress2',
108
            altcontactaddress3  => 'myAltcontactaddress3',
109
            altcontactstate     => 'myAltcontactstate',
110
            altcontactzipcode   => '465843',
111
            altcontactcountry   => 'myOtherCountry',
112
            altcontactphone     => 'myOtherphone',
113
            smsalertnumber      => '0683027346',
114
            privacy             => '667788',
115
        }
116
    );
117
118
    subtest 'Accessor tests after new' => sub {
119
        plan tests => 60;
120
        is( $patron->borrowernumber, '12345',                           'borrowernumber accessor returns correct value' );
121
        is( $patron->cardnumber,     '1234567890',                      'cardnumber accessor returns correct value' );
122
        is( $patron->surname,        'mySurname',                       'surname accessor returns correct value' );
123
        is( $patron->firstname,      'myFirstname',                     'firstname accessor returns correct value' );
124
        is( $patron->title,          'Mr.',                             'title accessor returns correct value' );
125
        is( $patron->othernames,     'myOthernames',                    'othernames accessor returns correct value' );
126
        is( $patron->initials,       'MM',                              'initials accessor returns correct value' );
127
        is( $patron->streetnumber,   '100',                             'streetnumber accessor returns correct value' );
128
        is( $patron->streettype,     'Blvd',                            'streettype accessor returns correct value' );
129
        is( $patron->address,        'my personnal address',            'address accessor returns correct value' );
130
        is( $patron->address2,       'my adress2',                      'address2 accessor returns correct value' );
131
        is( $patron->city,           'Marseille',                       'city accessor returns correct value' );
132
        is( $patron->state,          'mystate',                         'state accessor returns correct value' );
133
        is( $patron->zipcode,        '13006',                           'zipcode accessor returns correct value' );
134
        is( $patron->country,        'France',                          'country accessor returns correct value' );
135
        is( $patron->email,          'mySurname.myFirstname@email.com', 'email accessor returns correct value' );
136
        is( $patron->phone,          '0402872934',                      'phone accessor returns correct value' );
137
        is( $patron->mobile,         '0627884632',                      'mobile accessor returns correct value' );
138
        is( $patron->fax,            '0402872935',                      'fax accessor returns correct value' );
139
        is( $patron->emailpro,       'myEmailPro@email.com',            'emailpro accessor returns correct value' );
140
        is( $patron->phonepro,       '0402873334',                      'phonepro accessor returns correct value' );
141
        is( $patron->B_streetnumber, '101',                             'B_streetnumber accessor returns correct value' );
142
        is( $patron->B_streettype,   'myB_streettype',                  'B_streettype accessor returns correct value' );
143
        is( $patron->B_address,      'myB_address',                     'B_address accessor returns correct value' );
144
        is( $patron->B_address2,     'myB_address2',                    'B_address2 accessor returns correct value' );
145
        is( $patron->B_city,         'myB_city',                        'B_city accessor returns correct value' );
146
        is( $patron->B_state,        'myB_state',                       'B_state accessor returns correct value' );
147
        is( $patron->B_zipcode,      '23456',                           'B_zipcode accessor returns correct value' );
148
        is( $patron->B_country,      'myB_country',                     'B_country accessor returns correct value' );
149
        is( $patron->B_email,        'myB_email',                       'B_email accessor returns correct value' );
150
        is( $patron->B_phone,        '0678353935',                      'B_phone accessor returns correct value' );
151
        is( $patron->dateofbirth,    '1990-07-16',                      'dateofbirth accessor returns correct value' );
152
        is( $patron->branchcode,     'myBranCode',                      'branchcode accessor returns correct value' );
153
        is( $patron->categorycode,   'myCatCode',                       'categorycode accessor returns correct value' );
154
        is( $patron->dateenrolled,   '2015-03-19',                      'dateenrolled accessor returns correct value' );
155
        is( $patron->dateexpiry,     '2016-03-19',                      'dateexpiry accessor returns correct value' );
156
        is( $patron->gonenoaddress,  '0',                               'gonenoaddress accessor returns correct value' );
157
        is( $patron->lost,           '0',                               'lost accessor returns correct value' );
158
        is( $patron->debarred,       '2015-04-19',                      'debarred accessor returns correct value' );
159
        is( $patron->debarredcomment,     'You are debarred',      'debarredcomment accessor returns correct value' );
160
        is( $patron->borrowernotes,       'borrowernotes',         'borrowernotes accessor returns correct value' );
161
        is( $patron->sex,                 'M',                     'sex accessor returns correct value' );
162
        is( $patron->password,            'hfkurhfe976634èj!',    'password accessor returns correct value' );
163
        is( $patron->flags,               '55555',                 'flags accessor returns correct value' );
164
        is( $patron->userid,              '87987',                 'userid accessor returns correct value' );
165
        is( $patron->opacnote,            'myOpacnote',            'opacnote accessor returns correct value' );
166
        is( $patron->contactnote,         'myContactnote',         'contactnote accessor returns correct value' );
167
        is( $patron->sort1,               'mySort1',               'sort1 accessor returns correct value' );
168
        is( $patron->sort2,               'mySort2',               'sort2 accessor returns correct value' );
169
        is( $patron->altcontactfirstname, 'myAltcontactfirstname', 'altcontactfirstname accessor returns correct value' );
170
        is( $patron->altcontactsurname,   'myAltcontactsurname',   'altcontactsurname accessor returns correct value' );
171
        is( $patron->altcontactaddress1,  'myAltcontactaddress1',  'altcontactaddress1 accessor returns correct value' );
172
        is( $patron->altcontactaddress2,  'myAltcontactaddress2',  'altcontactaddress2 accessor returns correct value' );
173
        is( $patron->altcontactaddress3,  'myAltcontactaddress3',  'altcontactaddress3 accessor returns correct value' );
174
        is( $patron->altcontactstate,     'myAltcontactstate',     'altcontactstate accessor returns correct value' );
175
        is( $patron->altcontactzipcode,   '465843',                'altcontactzipcode accessor returns correct value' );
176
        is( $patron->altcontactcountry,   'myOtherCountry',        'altcontactcountry accessor returns correct value' );
177
        is( $patron->altcontactphone,     'myOtherphone',          'altcontactphone accessor returns correct value' );
178
        is( $patron->smsalertnumber,      '0683027346',            'smsalertnumber accessor returns correct value' );
179
        is( $patron->privacy,             '667788',                'privacy accessor returns correct value' );
180
    };
181
    
182
    subtest 'Accessor tests after set' => sub {
183
        plan tests => 60;
184
    
185
        $patron->set(
186
            {
187
                borrowernumber      => '12346',
188
                cardnumber          => '1234567891',
189
                surname             => 'SmySurname',
190
                firstname           => 'SmyFirstname',
191
                title               => 'Mme.',
192
                othernames          => 'SmyOthernames',
193
                initials            => 'SS',
194
                streetnumber        => '200',
195
                streettype          => 'Rue',
196
                address             => 'Smy personnal address',
197
                address2            => 'Smy adress2',
198
                city                => 'Lyon',
199
                state               => 'Smystate',
200
                zipcode             => '69000',
201
                country             => 'France',
202
                email               => 'SmySurname.myFirstname@email.com',
203
                phone               => '0402872935',
204
                mobile              => '0627884633',
205
                fax                 => '0402872936',
206
                emailpro            => 'SmyEmailPro@email.com',
207
                phonepro            => '0402873335',
208
                B_streetnumber      => '102',
209
                B_streettype        => 'SmyB_streettype',
210
                B_address           => 'SmyB_address',
211
                B_address2          => 'SmyB_address2',
212
                B_city              => 'SmyB_city',
213
                B_state             => 'SmyB_state',
214
                B_zipcode           => '12333',
215
                B_country           => 'SmyB_country',
216
                B_email             => 'SmyB_email',
217
                B_phone             => '0678353936',
218
                dateofbirth         => '1991-07-16',
219
                branchcode          => 'SmyBranCode',
220
                categorycode        => 'SmyCatCode',
221
                dateenrolled        => '2014-03-19',
222
                dateexpiry          => '2017-03-19',
223
                gonenoaddress       => '1',
224
                lost                => '1',
225
                debarred            => '2016-04-19',
226
                debarredcomment     => 'You are still debarred',
227
                borrowernotes       => 'Sborrowernotes',
228
                sex                 => 'F',
229
                password            => 'zerzerzer#',
230
                flags               => '666666',
231
                userid              => '98233',
232
                opacnote            => 'SmyOpacnote',
233
                contactnote         => 'SmyContactnote',
234
                sort1               => 'SmySort1',
235
                sort2               => 'SmySort2',
236
                altcontactfirstname => 'SmyAltcontactfirstname',
237
                altcontactsurname   => 'SmyAltcontactsurname',
238
                altcontactaddress1  => 'SmyAltcontactaddress1',
239
                altcontactaddress2  => 'SmyAltcontactaddress2',
240
                altcontactaddress3  => 'SmyAltcontactaddress3',
241
                altcontactstate     => 'SmyAltcontactstate',
242
                altcontactzipcode   => '565843',
243
                altcontactcountry   => 'SmyOtherCountry',
244
                altcontactphone     => 'SmyOtherphone',
245
                smsalertnumber      => '0683027347',
246
                privacy             => '667789'
247
            }
248
        );
249
    
250
        is( $patron->borrowernumber,      '12346',                            'borrowernumber field set ok' );
251
        is( $patron->cardnumber,          '1234567891',                       'cardnumber field set ok' );
252
        is( $patron->surname,             'SmySurname',                       'surname field set ok' );
253
        is( $patron->firstname,           'SmyFirstname',                     'firstname field set ok' );
254
        is( $patron->title,               'Mme.',                             'title field set ok' );
255
        is( $patron->othernames,          'SmyOthernames',                    'othernames field set ok' );
256
        is( $patron->initials,            'SS',                               'initials field set ok' );
257
        is( $patron->streetnumber,        '200',                              'streetnumber field set ok' );
258
        is( $patron->streettype,          'Rue',                              'streettype field set ok' );
259
        is( $patron->address,             'Smy personnal address',            'address field set ok' );
260
        is( $patron->address2,            'Smy adress2',                      'address2 field set ok' );
261
        is( $patron->city,                'Lyon',                             'city field set ok' );
262
        is( $patron->state,               'Smystate',                         'state field set ok' );
263
        is( $patron->zipcode,             '69000',                            'zipcode field set ok' );
264
        is( $patron->country,             'France',                           'country field set ok' );
265
        is( $patron->email,               'SmySurname.myFirstname@email.com', 'email field set ok' );
266
        is( $patron->phone,               '0402872935',                       'phone field set ok' );
267
        is( $patron->mobile,              '0627884633',                       'mobile field set ok' );
268
        is( $patron->fax,                 '0402872936',                       'fax field set ok' );
269
        is( $patron->emailpro,            'SmyEmailPro@email.com',            'emailpro field set ok' );
270
        is( $patron->phonepro,            '0402873335',                       'phonepro field set ok' );
271
        is( $patron->B_streetnumber,      '102',                              'B_streetnumber field set ok' );
272
        is( $patron->B_streettype,        'SmyB_streettype',                  'B_streettype field set ok' );
273
        is( $patron->B_address,           'SmyB_address',                     'B_address field set ok' );
274
        is( $patron->B_address2,          'SmyB_address2',                    'B_address2 field set ok' );
275
        is( $patron->B_city,              'SmyB_city',                        'B_city field set ok' );
276
        is( $patron->B_state,             'SmyB_state',                       'B_state field set ok' );
277
        is( $patron->B_zipcode,           '12333',                            'B_zipcode field set ok' );
278
        is( $patron->B_country,           'SmyB_country',                     'B_country field set ok' );
279
        is( $patron->B_email,             'SmyB_email',                       'B_email field set ok' );
280
        is( $patron->B_phone,             '0678353936',                       'B_phone field set ok' );
281
        is( $patron->dateofbirth,         '1991-07-16',                       'dateofbirth field set ok' );
282
        is( $patron->branchcode,          'SmyBranCode',                      'branchcode field set ok' );
283
        is( $patron->categorycode,        'SmyCatCode',                       'categorycode field set ok' );
284
        is( $patron->dateenrolled,        '2014-03-19',                       'dateenrolled field set ok' );
285
        is( $patron->dateexpiry,          '2017-03-19',                       'dateexpiry field set ok' );
286
        is( $patron->gonenoaddress,       '1',                                'gonenoaddress field set ok' );
287
        is( $patron->lost,                '1',                                'lost field set ok' );
288
        is( $patron->debarred,            '2016-04-19',                       'debarred field set ok' );
289
        is( $patron->debarredcomment,     'You are still debarred',           'debarredcomment field set ok' );
290
        is( $patron->borrowernotes,       'Sborrowernotes',                   'borrowernotes field set ok' );
291
        is( $patron->sex,                 'F',                                'sex field set ok' );
292
        is( $patron->password,            'zerzerzer#',                       'password field set ok' );
293
        is( $patron->flags,               '666666',                           'flags field set ok' );
294
        is( $patron->userid,              '98233',                            'userid field set ok' );
295
        is( $patron->opacnote,            'SmyOpacnote',                      'opacnote field set ok' );
296
        is( $patron->contactnote,         'SmyContactnote',                   'contactnote field set ok' );
297
        is( $patron->sort1,               'SmySort1',                         'sort1 field set ok' );
298
        is( $patron->sort2,               'SmySort2',                         'sort2 field set ok' );
299
        is( $patron->altcontactfirstname, 'SmyAltcontactfirstname',           'altcontactfirstname field set ok' );
300
        is( $patron->altcontactsurname,   'SmyAltcontactsurname',             'altcontactsurname field set ok' );
301
        is( $patron->altcontactaddress1,  'SmyAltcontactaddress1',            'altcontactaddress1 field set ok' );
302
        is( $patron->altcontactaddress2,  'SmyAltcontactaddress2',            'altcontactaddress2 field set ok' );
303
        is( $patron->altcontactaddress3,  'SmyAltcontactaddress3',            'altcontactaddress3 field set ok' );
304
        is( $patron->altcontactstate,     'SmyAltcontactstate',               'altcontactstate field set ok' );
305
        is( $patron->altcontactzipcode,   '565843',                           'altcontactzipcode field set ok' );
306
        is( $patron->altcontactcountry,   'SmyOtherCountry',                  'altcontactcountry field set ok' );
307
        is( $patron->altcontactphone,     'SmyOtherphone',                    'altcontactphone field set ok' );
308
        is( $patron->smsalertnumber,      '0683027347',                       'smsalertnumber field set ok' );
309
        is( $patron->privacy,             '667789',                           'privacy field set ok' );
310
    };
311
312
    $schema->storage->txn_rollback;
313
};
(-)a/t/db_dependent/Koha/Patron.t (-2 / +286 lines)
Lines 19-25 Link Here
19
19
20
use Modern::Perl;
20
use Modern::Perl;
21
21
22
use Test::More tests => 25;
22
use Test::More tests => 26;
23
use Test::Exception;
23
use Test::Exception;
24
use Test::Warn;
24
use Test::Warn;
25
25
Lines 37-42 use t::lib::Mocks; Link Here
37
my $schema  = Koha::Database->new->schema;
37
my $schema  = Koha::Database->new->schema;
38
my $builder = t::lib::TestBuilder->new;
38
my $builder = t::lib::TestBuilder->new;
39
39
40
subtest 'Accessor tests' => sub {
41
    plan tests => 9;
42
    $schema->storage->txn_begin;
43
44
    my $object = Koha::Patron->new( { surname => 'Test Patron' } );
45
    is( $object->surname(), 'Test Patron', "Accessor returns correct value" );
46
    $object->surname('Test Patron Surname');
47
    is( $object->surname(), 'Test Patron Surname', "Accessor returns correct value after set" );
48
49
    my $object2 = Koha::Patron->new( { surname => 'Test Patron 2' } );
50
    is( $object2->surname(), 'Test Patron 2', "Accessor returns correct value" );
51
    $object2->surname('Test Patron Surname 2');
52
    is( $object2->surname(), 'Test Patron Surname 2', "Accessor returns correct value after set" );
53
54
    my $ret;
55
    $ret = $object2->set( { surname => "Test Patron Surname 3", firstname => "Test Firstname" } );
56
    ok( ref($ret) eq 'Koha::Patron', "Set returns object on success" );
57
    is( $object2->surname(),   "Test Patron Surname 3", "Set sets first field correctly" );
58
    is( $object2->firstname(), "Test Firstname",        "Set sets second field correctly" );
59
60
    our $patron = Koha::Patron->new(
61
        {
62
            borrowernumber      => '12345',
63
            cardnumber          => '1234567890',
64
            surname             => 'mySurname',
65
            firstname           => 'myFirstname',
66
            title               => 'Mr.',
67
            othernames          => 'myOthernames',
68
            initials            => 'MM',
69
            streetnumber        => '100',
70
            streettype          => 'Blvd',
71
            address             => 'my personal address',
72
            address2            => 'my adress2',
73
            city                => 'Marseille',
74
            state               => 'mystate',
75
            zipcode             => '13006',
76
            country             => 'France',
77
            email               => 'mySurname.myFirstname@email.com',
78
            phone               => '0402872934',
79
            mobile              => '0627884632',
80
            fax                 => '0402872935',
81
            emailpro            => 'myEmailPro@email.com',
82
            phonepro            => '0402873334',
83
            B_streetnumber      => '101',
84
            B_streettype        => 'myB_streettype',
85
            B_address           => 'myB_address',
86
            B_address2          => 'myB_address2',
87
            B_city              => 'myB_city',
88
            B_state             => 'myB_state',
89
            B_zipcode           => '23456',
90
            B_country           => 'myB_country',
91
            B_email             => 'myB_email',
92
            B_phone             => '0678353935',
93
            dateofbirth         => '1990-07-16',
94
            branchcode          => 'myBranCode',
95
            categorycode        => 'myCatCode',
96
            dateenrolled        => '2015-03-19',
97
            dateexpiry          => '2016-03-19',
98
            gonenoaddress       => '0',
99
            lost                => '0',
100
            debarred            => '2015-04-19',
101
            debarredcomment     => 'You are debarred',
102
            borrowernotes       => 'borrowernotes',
103
            sex                 => 'M',
104
            password            => 'hfkurhfe976634èj!',
105
            flags               => '55555',
106
            userid              => '87987',
107
            opacnote            => 'myOpacnote',
108
            contactnote         => 'myContactnote',
109
            sort1               => 'mySort1',
110
            sort2               => 'mySort2',
111
            altcontactfirstname => 'myAltcontactfirstname',
112
            altcontactsurname   => 'myAltcontactsurname',
113
            altcontactaddress1  => 'myAltcontactaddress1',
114
            altcontactaddress2  => 'myAltcontactaddress2',
115
            altcontactaddress3  => 'myAltcontactaddress3',
116
            altcontactstate     => 'myAltcontactstate',
117
            altcontactzipcode   => '465843',
118
            altcontactcountry   => 'myOtherCountry',
119
            altcontactphone     => 'myOtherphone',
120
            smsalertnumber      => '0683027346',
121
            privacy             => '667788',
122
        }
123
    );
124
125
    subtest 'Accessor tests after new' => sub {
126
        plan tests => 60;
127
        is( $patron->borrowernumber, '12345',               'borrowernumber accessor returns correct value' );
128
        is( $patron->cardnumber,     '1234567890',          'cardnumber accessor returns correct value' );
129
        is( $patron->surname,        'mySurname',           'surname accessor returns correct value' );
130
        is( $patron->firstname,      'myFirstname',         'firstname accessor returns correct value' );
131
        is( $patron->title,          'Mr.',                 'title accessor returns correct value' );
132
        is( $patron->othernames,     'myOthernames',        'othernames accessor returns correct value' );
133
        is( $patron->initials,       'MM',                  'initials accessor returns correct value' );
134
        is( $patron->streetnumber,   '100',                 'streetnumber accessor returns correct value' );
135
        is( $patron->streettype,     'Blvd',                'streettype accessor returns correct value' );
136
        is( $patron->address,        'my personal address', 'address accessor returns correct value' );
137
        is( $patron->address2,       'my adress2',          'address2 accessor returns correct value' );
138
        is( $patron->city,           'Marseille',           'city accessor returns correct value' );
139
        is( $patron->state,          'mystate',             'state accessor returns correct value' );
140
        is( $patron->zipcode,        '13006',               'zipcode accessor returns correct value' );
141
        is( $patron->country,        'France',              'country accessor returns correct value' );
142
        is( $patron->email,    'mySurname.myFirstname@email.com', 'email accessor returns correct value' );
143
        is( $patron->phone,    '0402872934',                      'phone accessor returns correct value' );
144
        is( $patron->mobile,   '0627884632',                      'mobile accessor returns correct value' );
145
        is( $patron->fax,      '0402872935',                      'fax accessor returns correct value' );
146
        is( $patron->emailpro, 'myEmailPro@email.com',            'emailpro accessor returns correct value' );
147
        is( $patron->phonepro, '0402873334',                      'phonepro accessor returns correct value' );
148
        is( $patron->B_streetnumber,  '101',               'B_streetnumber accessor returns correct value' );
149
        is( $patron->B_streettype,    'myB_streettype',    'B_streettype accessor returns correct value' );
150
        is( $patron->B_address,       'myB_address',       'B_address accessor returns correct value' );
151
        is( $patron->B_address2,      'myB_address2',      'B_address2 accessor returns correct value' );
152
        is( $patron->B_city,          'myB_city',          'B_city accessor returns correct value' );
153
        is( $patron->B_state,         'myB_state',         'B_state accessor returns correct value' );
154
        is( $patron->B_zipcode,       '23456',             'B_zipcode accessor returns correct value' );
155
        is( $patron->B_country,       'myB_country',       'B_country accessor returns correct value' );
156
        is( $patron->B_email,         'myB_email',         'B_email accessor returns correct value' );
157
        is( $patron->B_phone,         '0678353935',        'B_phone accessor returns correct value' );
158
        is( $patron->dateofbirth,     '1990-07-16',        'dateofbirth accessor returns correct value' );
159
        is( $patron->branchcode,      'myBranCode',        'branchcode accessor returns correct value' );
160
        is( $patron->categorycode,    'myCatCode',         'categorycode accessor returns correct value' );
161
        is( $patron->dateenrolled,    '2015-03-19',        'dateenrolled accessor returns correct value' );
162
        is( $patron->dateexpiry,      '2016-03-19',        'dateexpiry accessor returns correct value' );
163
        is( $patron->gonenoaddress,   '0',                 'gonenoaddress accessor returns correct value' );
164
        is( $patron->lost,            '0',                 'lost accessor returns correct value' );
165
        is( $patron->debarred,        '2015-04-19',        'debarred accessor returns correct value' );
166
        is( $patron->debarredcomment, 'You are debarred',  'debarredcomment accessor returns correct value' );
167
        is( $patron->borrowernotes,   'borrowernotes',     'borrowernotes accessor returns correct value' );
168
        is( $patron->sex,             'M',                 'sex accessor returns correct value' );
169
        is( $patron->password,        'hfkurhfe976634èj!', 'password accessor returns correct value' );
170
        is( $patron->flags,           '55555',             'flags accessor returns correct value' );
171
        is( $patron->userid,          '87987',             'userid accessor returns correct value' );
172
        is( $patron->opacnote,        'myOpacnote',        'opacnote accessor returns correct value' );
173
        is( $patron->contactnote,     'myContactnote',     'contactnote accessor returns correct value' );
174
        is( $patron->sort1,           'mySort1',           'sort1 accessor returns correct value' );
175
        is( $patron->sort2,           'mySort2',           'sort2 accessor returns correct value' );
176
        is(
177
            $patron->altcontactfirstname, 'myAltcontactfirstname',
178
            'altcontactfirstname accessor returns correct value'
179
        );
180
        is( $patron->altcontactsurname,  'myAltcontactsurname',  'altcontactsurname accessor returns correct value' );
181
        is( $patron->altcontactaddress1, 'myAltcontactaddress1', 'altcontactaddress1 accessor returns correct value' );
182
        is( $patron->altcontactaddress2, 'myAltcontactaddress2', 'altcontactaddress2 accessor returns correct value' );
183
        is( $patron->altcontactaddress3, 'myAltcontactaddress3', 'altcontactaddress3 accessor returns correct value' );
184
        is( $patron->altcontactstate,    'myAltcontactstate',    'altcontactstate accessor returns correct value' );
185
        is( $patron->altcontactzipcode,  '465843',               'altcontactzipcode accessor returns correct value' );
186
        is( $patron->altcontactcountry,  'myOtherCountry',       'altcontactcountry accessor returns correct value' );
187
        is( $patron->altcontactphone,    'myOtherphone',         'altcontactphone accessor returns correct value' );
188
        is( $patron->smsalertnumber,     '0683027346',           'smsalertnumber accessor returns correct value' );
189
        is( $patron->privacy,            '667788',               'privacy accessor returns correct value' );
190
    };
191
192
    subtest 'Accessor tests after set' => sub {
193
        plan tests => 60;
194
195
        $patron->set(
196
            {
197
                borrowernumber      => '12346',
198
                cardnumber          => '1234567891',
199
                surname             => 'SmySurname',
200
                firstname           => 'SmyFirstname',
201
                title               => 'Mme.',
202
                othernames          => 'SmyOthernames',
203
                initials            => 'SS',
204
                streetnumber        => '200',
205
                streettype          => 'Rue',
206
                address             => 'Smy personal address',
207
                address2            => 'Smy adress2',
208
                city                => 'Lyon',
209
                state               => 'Smystate',
210
                zipcode             => '69000',
211
                country             => 'France',
212
                email               => 'SmySurname.myFirstname@email.com',
213
                phone               => '0402872935',
214
                mobile              => '0627884633',
215
                fax                 => '0402872936',
216
                emailpro            => 'SmyEmailPro@email.com',
217
                phonepro            => '0402873335',
218
                B_streetnumber      => '102',
219
                B_streettype        => 'SmyB_streettype',
220
                B_address           => 'SmyB_address',
221
                B_address2          => 'SmyB_address2',
222
                B_city              => 'SmyB_city',
223
                B_state             => 'SmyB_state',
224
                B_zipcode           => '12333',
225
                B_country           => 'SmyB_country',
226
                B_email             => 'SmyB_email',
227
                B_phone             => '0678353936',
228
                dateofbirth         => '1991-07-16',
229
                branchcode          => 'SmyBranCode',
230
                categorycode        => 'SmyCatCode',
231
                dateenrolled        => '2014-03-19',
232
                dateexpiry          => '2017-03-19',
233
                gonenoaddress       => '1',
234
                lost                => '1',
235
                debarred            => '2016-04-19',
236
                debarredcomment     => 'You are still debarred',
237
                borrowernotes       => 'Sborrowernotes',
238
                sex                 => 'F',
239
                password            => 'zerzerzer#',
240
                flags               => '666666',
241
                userid              => '98233',
242
                opacnote            => 'SmyOpacnote',
243
                contactnote         => 'SmyContactnote',
244
                sort1               => 'SmySort1',
245
                sort2               => 'SmySort2',
246
                altcontactfirstname => 'SmyAltcontactfirstname',
247
                altcontactsurname   => 'SmyAltcontactsurname',
248
                altcontactaddress1  => 'SmyAltcontactaddress1',
249
                altcontactaddress2  => 'SmyAltcontactaddress2',
250
                altcontactaddress3  => 'SmyAltcontactaddress3',
251
                altcontactstate     => 'SmyAltcontactstate',
252
                altcontactzipcode   => '565843',
253
                altcontactcountry   => 'SmyOtherCountry',
254
                altcontactphone     => 'SmyOtherphone',
255
                smsalertnumber      => '0683027347',
256
                privacy             => '667789'
257
            }
258
        );
259
260
        is( $patron->borrowernumber,      '12346',                            'borrowernumber field set ok' );
261
        is( $patron->cardnumber,          '1234567891',                       'cardnumber field set ok' );
262
        is( $patron->surname,             'SmySurname',                       'surname field set ok' );
263
        is( $patron->firstname,           'SmyFirstname',                     'firstname field set ok' );
264
        is( $patron->title,               'Mme.',                             'title field set ok' );
265
        is( $patron->othernames,          'SmyOthernames',                    'othernames field set ok' );
266
        is( $patron->initials,            'SS',                               'initials field set ok' );
267
        is( $patron->streetnumber,        '200',                              'streetnumber field set ok' );
268
        is( $patron->streettype,          'Rue',                              'streettype field set ok' );
269
        is( $patron->address,             'Smy personal address',             'address field set ok' );
270
        is( $patron->address2,            'Smy adress2',                      'address2 field set ok' );
271
        is( $patron->city,                'Lyon',                             'city field set ok' );
272
        is( $patron->state,               'Smystate',                         'state field set ok' );
273
        is( $patron->zipcode,             '69000',                            'zipcode field set ok' );
274
        is( $patron->country,             'France',                           'country field set ok' );
275
        is( $patron->email,               'SmySurname.myFirstname@email.com', 'email field set ok' );
276
        is( $patron->phone,               '0402872935',                       'phone field set ok' );
277
        is( $patron->mobile,              '0627884633',                       'mobile field set ok' );
278
        is( $patron->fax,                 '0402872936',                       'fax field set ok' );
279
        is( $patron->emailpro,            'SmyEmailPro@email.com',            'emailpro field set ok' );
280
        is( $patron->phonepro,            '0402873335',                       'phonepro field set ok' );
281
        is( $patron->B_streetnumber,      '102',                              'B_streetnumber field set ok' );
282
        is( $patron->B_streettype,        'SmyB_streettype',                  'B_streettype field set ok' );
283
        is( $patron->B_address,           'SmyB_address',                     'B_address field set ok' );
284
        is( $patron->B_address2,          'SmyB_address2',                    'B_address2 field set ok' );
285
        is( $patron->B_city,              'SmyB_city',                        'B_city field set ok' );
286
        is( $patron->B_state,             'SmyB_state',                       'B_state field set ok' );
287
        is( $patron->B_zipcode,           '12333',                            'B_zipcode field set ok' );
288
        is( $patron->B_country,           'SmyB_country',                     'B_country field set ok' );
289
        is( $patron->B_email,             'SmyB_email',                       'B_email field set ok' );
290
        is( $patron->B_phone,             '0678353936',                       'B_phone field set ok' );
291
        is( $patron->dateofbirth,         '1991-07-16',                       'dateofbirth field set ok' );
292
        is( $patron->branchcode,          'SmyBranCode',                      'branchcode field set ok' );
293
        is( $patron->categorycode,        'SmyCatCode',                       'categorycode field set ok' );
294
        is( $patron->dateenrolled,        '2014-03-19',                       'dateenrolled field set ok' );
295
        is( $patron->dateexpiry,          '2017-03-19',                       'dateexpiry field set ok' );
296
        is( $patron->gonenoaddress,       '1',                                'gonenoaddress field set ok' );
297
        is( $patron->lost,                '1',                                'lost field set ok' );
298
        is( $patron->debarred,            '2016-04-19',                       'debarred field set ok' );
299
        is( $patron->debarredcomment,     'You are still debarred',           'debarredcomment field set ok' );
300
        is( $patron->borrowernotes,       'Sborrowernotes',                   'borrowernotes field set ok' );
301
        is( $patron->sex,                 'F',                                'sex field set ok' );
302
        is( $patron->password,            'zerzerzer#',                       'password field set ok' );
303
        is( $patron->flags,               '666666',                           'flags field set ok' );
304
        is( $patron->userid,              '98233',                            'userid field set ok' );
305
        is( $patron->opacnote,            'SmyOpacnote',                      'opacnote field set ok' );
306
        is( $patron->contactnote,         'SmyContactnote',                   'contactnote field set ok' );
307
        is( $patron->sort1,               'SmySort1',                         'sort1 field set ok' );
308
        is( $patron->sort2,               'SmySort2',                         'sort2 field set ok' );
309
        is( $patron->altcontactfirstname, 'SmyAltcontactfirstname',           'altcontactfirstname field set ok' );
310
        is( $patron->altcontactsurname,   'SmyAltcontactsurname',             'altcontactsurname field set ok' );
311
        is( $patron->altcontactaddress1,  'SmyAltcontactaddress1',            'altcontactaddress1 field set ok' );
312
        is( $patron->altcontactaddress2,  'SmyAltcontactaddress2',            'altcontactaddress2 field set ok' );
313
        is( $patron->altcontactaddress3,  'SmyAltcontactaddress3',            'altcontactaddress3 field set ok' );
314
        is( $patron->altcontactstate,     'SmyAltcontactstate',               'altcontactstate field set ok' );
315
        is( $patron->altcontactzipcode,   '565843',                           'altcontactzipcode field set ok' );
316
        is( $patron->altcontactcountry,   'SmyOtherCountry',                  'altcontactcountry field set ok' );
317
        is( $patron->altcontactphone,     'SmyOtherphone',                    'altcontactphone field set ok' );
318
        is( $patron->smsalertnumber,      '0683027347',                       'smsalertnumber field set ok' );
319
        is( $patron->privacy,             '667789',                           'privacy field set ok' );
320
    };
321
322
    $schema->storage->txn_rollback;
323
};
324
40
subtest 'add_guarantor() tests' => sub {
325
subtest 'add_guarantor() tests' => sub {
41
326
42
    plan tests => 6;
327
    plan tests => 6;
43
- 

Return to bug 34887