Lines 12-18
use Koha::ERM::License;
Link Here
|
12 |
use C4::Context; |
12 |
use C4::Context; |
13 |
|
13 |
|
14 |
my $builder = t::lib::TestBuilder->new; |
14 |
my $builder = t::lib::TestBuilder->new; |
15 |
my $schema = Koha::Database->schema; |
15 |
my $schema = Koha::Database->schema; |
16 |
|
16 |
|
17 |
subtest 'set_additional_fields with marcfield_mode = "get"' => sub { |
17 |
subtest 'set_additional_fields with marcfield_mode = "get"' => sub { |
18 |
plan tests => 1; |
18 |
plan tests => 1; |
Lines 22-30
subtest 'set_additional_fields with marcfield_mode = "get"' => sub {
Link Here
|
22 |
my $biblio = $builder->build_sample_biblio(); |
22 |
my $biblio = $builder->build_sample_biblio(); |
23 |
my $record = $biblio->record; |
23 |
my $record = $biblio->record; |
24 |
$record->append_fields( |
24 |
$record->append_fields( |
25 |
MARC::Field->new('998', '', '', 'Z' => 'some value'), |
25 |
MARC::Field->new( '998', '', '', 'Z' => 'some value' ), |
26 |
); |
26 |
); |
27 |
$biblio->metadata->metadata($record->as_xml_record(C4::Context->preference('marcflavour'))); |
27 |
$biblio->metadata->metadata( $record->as_xml_record( C4::Context->preference('marcflavour') ) ); |
28 |
$biblio->metadata->store()->discard_changes(); |
28 |
$biblio->metadata->store()->discard_changes(); |
29 |
my $subscription = Koha::Subscription->new( |
29 |
my $subscription = Koha::Subscription->new( |
30 |
{ |
30 |
{ |
Lines 35-43
subtest 'set_additional_fields with marcfield_mode = "get"' => sub {
Link Here
|
35 |
|
35 |
|
36 |
my $field = Koha::AdditionalField->new( |
36 |
my $field = Koha::AdditionalField->new( |
37 |
{ |
37 |
{ |
38 |
tablename => 'subscription', |
38 |
tablename => 'subscription', |
39 |
name => random_string('c' x 100), |
39 |
name => random_string( 'c' x 100 ), |
40 |
marcfield => '998$Z', |
40 |
marcfield => '998$Z', |
41 |
marcfield_mode => 'get', |
41 |
marcfield_mode => 'get', |
42 |
} |
42 |
} |
43 |
); |
43 |
); |
Lines 50-56
subtest 'set_additional_fields with marcfield_mode = "get"' => sub {
Link Here
|
50 |
|
50 |
|
51 |
my $values = $subscription->additional_field_values()->as_list(); |
51 |
my $values = $subscription->additional_field_values()->as_list(); |
52 |
|
52 |
|
53 |
is($values->[0]->value, 'some value', 'value was copied from the biblio record to the field'); |
53 |
is( $values->[0]->value, 'some value', 'value was copied from the biblio record to the field' ); |
54 |
|
54 |
|
55 |
$schema->txn_rollback; |
55 |
$schema->txn_rollback; |
56 |
}; |
56 |
}; |
Lines 60-66
subtest 'set_additional_fields with marcfield_mode = "set"' => sub {
Link Here
|
60 |
|
60 |
|
61 |
$schema->txn_begin; |
61 |
$schema->txn_begin; |
62 |
|
62 |
|
63 |
my $biblio = $builder->build_sample_biblio(); |
63 |
my $biblio = $builder->build_sample_biblio(); |
64 |
my $subscription = Koha::Subscription->new( |
64 |
my $subscription = Koha::Subscription->new( |
65 |
{ |
65 |
{ |
66 |
biblionumber => $biblio->biblionumber, |
66 |
biblionumber => $biblio->biblionumber, |
Lines 70-78
subtest 'set_additional_fields with marcfield_mode = "set"' => sub {
Link Here
|
70 |
|
70 |
|
71 |
my $field = Koha::AdditionalField->new( |
71 |
my $field = Koha::AdditionalField->new( |
72 |
{ |
72 |
{ |
73 |
tablename => 'subscription', |
73 |
tablename => 'subscription', |
74 |
name => random_string('c' x 100), |
74 |
name => random_string( 'c' x 100 ), |
75 |
marcfield => '999$Z', |
75 |
marcfield => '999$Z', |
76 |
marcfield_mode => 'set', |
76 |
marcfield_mode => 'set', |
77 |
} |
77 |
} |
78 |
); |
78 |
); |
Lines 80-93
subtest 'set_additional_fields with marcfield_mode = "set"' => sub {
Link Here
|
80 |
$subscription->set_additional_fields( |
80 |
$subscription->set_additional_fields( |
81 |
[ |
81 |
[ |
82 |
{ |
82 |
{ |
83 |
id => $field->id, |
83 |
id => $field->id, |
84 |
value => 'some value', |
84 |
value => 'some value', |
85 |
}, |
85 |
}, |
86 |
] |
86 |
] |
87 |
); |
87 |
); |
88 |
|
88 |
|
89 |
my $record = $biblio->record; |
89 |
my $record = $biblio->record; |
90 |
is($record->subfield('999', 'Z'), 'some value', 'value was copied from the field to the biblio record'); |
90 |
is( $record->subfield( '999', 'Z' ), 'some value', 'value was copied from the field to the biblio record' ); |
91 |
|
91 |
|
92 |
$schema->txn_rollback; |
92 |
$schema->txn_rollback; |
93 |
}; |
93 |
}; |
Lines 107-122
subtest 'get_additional_field_values_for_template' => sub {
Link Here
|
107 |
|
107 |
|
108 |
my $field = Koha::AdditionalField->new( |
108 |
my $field = Koha::AdditionalField->new( |
109 |
{ |
109 |
{ |
110 |
tablename => 'subscription', |
110 |
tablename => 'subscription', |
111 |
name => random_string( 'c' x 100 ) |
111 |
name => random_string( 'c' x 100 ) |
112 |
} |
112 |
} |
113 |
); |
113 |
); |
114 |
$field->store()->discard_changes(); |
114 |
$field->store()->discard_changes(); |
115 |
|
115 |
|
116 |
my $field2 = Koha::AdditionalField->new( |
116 |
my $field2 = Koha::AdditionalField->new( |
117 |
{ |
117 |
{ |
118 |
tablename => 'subscription', |
118 |
tablename => 'subscription', |
119 |
name => random_string( 'c' x 100 ) |
119 |
name => random_string( 'c' x 100 ) |
120 |
} |
120 |
} |
121 |
); |
121 |
); |
122 |
$field2->store()->discard_changes(); |
122 |
$field2->store()->discard_changes(); |
Lines 201-217
subtest 'add_additional_fields' => sub {
Link Here
|
201 |
|
201 |
|
202 |
$subscription->add_additional_fields( |
202 |
$subscription->add_additional_fields( |
203 |
{ |
203 |
{ |
204 |
$field2->id => [ |
204 |
$field2->id => ['second field'], |
205 |
'second field' |
|
|
206 |
], |
207 |
}, |
205 |
}, |
208 |
'subscription' |
206 |
'subscription' |
209 |
); |
207 |
); |
210 |
|
208 |
|
211 |
my $template_additional_field_values = $subscription->get_additional_field_values_for_template; |
209 |
my $template_additional_field_values = $subscription->get_additional_field_values_for_template; |
212 |
|
210 |
|
213 |
|
|
|
214 |
|
215 |
is_deeply( |
211 |
is_deeply( |
216 |
$template_additional_field_values, |
212 |
$template_additional_field_values, |
217 |
{ $field->id => [ $value . ' 1', $value . ' 2' ], $field2->id => ['second field'] }, |
213 |
{ $field->id => [ $value . ' 1', $value . ' 2' ], $field2->id => ['second field'] }, |
Lines 274-286
subtest 'strings_map() tests' => sub {
Link Here
|
274 |
'erm_licenses' |
270 |
'erm_licenses' |
275 |
); |
271 |
); |
276 |
|
272 |
|
277 |
|
273 |
my $av_category = Koha::AuthorisedValueCategory->new( { category_name => "AV_CAT_NAME" } ); |
278 |
my $av_category = Koha::AuthorisedValueCategory->new( { category_name => "AV_CAT_NAME" } ); |
|
|
279 |
$av_category->store()->discard_changes(); |
274 |
$av_category->store()->discard_changes(); |
280 |
|
275 |
|
281 |
my $av_value = Koha::AuthorisedValue->new( |
276 |
my $av_value = Koha::AuthorisedValue->new( |
282 |
{ |
277 |
{ |
283 |
category => $av_category->category_name, |
278 |
category => $av_category->category_name, |
284 |
authorised_value => 'BOB', |
279 |
authorised_value => 'BOB', |
285 |
lib => "Robert" |
280 |
lib => "Robert" |
286 |
} |
281 |
} |
Lines 295-305
subtest 'strings_map() tests' => sub {
Link Here
|
295 |
); |
290 |
); |
296 |
$av_field->store()->discard_changes(); |
291 |
$av_field->store()->discard_changes(); |
297 |
|
292 |
|
298 |
|
|
|
299 |
|
300 |
$license->add_additional_fields( |
293 |
$license->add_additional_fields( |
301 |
{ |
294 |
{ |
302 |
$av_field->id => [$av_value->authorised_value], |
295 |
$av_field->id => [ $av_value->authorised_value ], |
303 |
}, |
296 |
}, |
304 |
'erm_licenses' |
297 |
'erm_licenses' |
305 |
); |
298 |
); |
306 |
- |
|
|