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

(-)a/Koha/Items.pm (+4 lines)
Lines 260-265 sub filter_by_in_transit { Link Here
260
    my ( $self, $params ) = @_;
260
    my ( $self, $params ) = @_;
261
261
262
    $params //= {};
262
    $params //= {};
263
    $params->{datesent}      = { '!=' => undef };
264
    $params->{datearrived}   = undef;
265
    $params->{datecancelled} = undef;
266
263
    my $transfers = Koha::Item::Transfers->search(
267
    my $transfers = Koha::Item::Transfers->search(
264
        { %$params, 'me.itemnumber' => [ $self->get_column('itemnumber') ], },
268
        { %$params, 'me.itemnumber' => [ $self->get_column('itemnumber') ], },
265
        {
269
        {
(-)a/t/db_dependent/Koha/Items.t (-19 / +41 lines)
Lines 155-164 subtest 'search' => sub { Link Here
155
        }
155
        }
156
    );
156
    );
157
157
158
    ok( $lost_items->count == 1,       "Filtered to 1 lost item" );
158
    is( $lost_items->count,       1, "Filtered to 1 lost item" );
159
    ok( $damaged_items->count == 1,    "Filtered to 1 damaged item" );
159
    is( $damaged_items->count,    1, "Filtered to 1 damaged item" );
160
    ok( $withdrawn_items->count == 1,  "Filtered to 1 withdrawn item" );
160
    is( $withdrawn_items->count,  1, "Filtered to 1 withdrawn item" );
161
    ok( $notforloan_items->count == 1, "Filtered to 1 notforloan item" );
161
    is( $notforloan_items->count, 1, "Filtered to 1 notforloan item" );
162
162
163
    C4::Circulation::AddIssue( $patron, $item_1->barcode );
163
    C4::Circulation::AddIssue( $patron, $item_1->barcode );
164
164
Lines 169-183 subtest 'search' => sub { Link Here
169
        }
169
        }
170
    );
170
    );
171
171
172
    ok( $checked_out_items->count == 1, "Filtered to 1 checked out item" );
172
    is( $checked_out_items->count, 1, "Filtered to 1 checked out item" );
173
173
174
    my $transfer_1 = $builder->build_object(
174
    my $transfer_1 = $builder->build_object(
175
        {
175
        {
176
            class => 'Koha::Item::Transfers',
176
            class => 'Koha::Item::Transfers',
177
            value => {
177
            value => {
178
                itemnumber => $item_2->itemnumber,
178
                itemnumber    => $item_2->itemnumber,
179
                frombranch => $library_1->{branchcode},
179
                frombranch    => $library_1->{branchcode},
180
                tobranch   => $library_2->{branchcode},
180
                tobranch      => $library_2->{branchcode},
181
                datesent      => \'NOW()',
182
                datearrived   => undef,
183
                datecancelled => undef,
184
                daterequested => \'NOW()',
181
            }
185
            }
182
        }
186
        }
183
    );
187
    );
Lines 189-195 subtest 'search' => sub { Link Here
189
        }
193
        }
190
    );
194
    );
191
195
192
    ok( $in_transit_items->count == 1, "Filtered to 1 in transit item" );
196
    is( $in_transit_items->count, 1, "Filtered to 1 in transit item" );
193
197
194
    my $item_7 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, } );
198
    my $item_7 = $builder->build_sample_item( { biblionumber => $biblio->biblionumber, } );
195
199
Lines 209-215 subtest 'search' => sub { Link Here
209
        }
213
        }
210
    );
214
    );
211
215
212
    ok( $on_hold_items->count == 1, "Filtered to 1 on hold item" );
216
    is( $on_hold_items->count, 1, "Filtered to 1 on hold item" );
213
217
214
    my $item_8 = $builder->build_sample_item(
218
    my $item_8 = $builder->build_sample_item(
215
        {
219
        {
Lines 225-231 subtest 'search' => sub { Link Here
225
        }
229
        }
226
    );
230
    );
227
231
228
    ok( $restricted_items->count == 1, "Filtered to 1 restricted item" );
232
    is( $restricted_items->count, 1, "Filtered to 1 restricted item" );
229
233
230
    $schema->storage->txn_rollback;
234
    $schema->storage->txn_rollback;
231
};
235
};
Lines 2616-2622 subtest 'filter_by_checked_out' => sub { Link Here
2616
};
2620
};
2617
2621
2618
subtest 'filter_by_in_transit' => sub {
2622
subtest 'filter_by_in_transit' => sub {
2619
    plan tests => 3;
2623
    plan tests => 5;
2620
2624
2621
    $schema->storage->txn_begin;
2625
    $schema->storage->txn_begin;
2622
2626
Lines 2636-2644 subtest 'filter_by_in_transit' => sub { Link Here
2636
        {
2640
        {
2637
            class => 'Koha::Item::Transfers',
2641
            class => 'Koha::Item::Transfers',
2638
            value => {
2642
            value => {
2639
                itemnumber => $item_1->itemnumber,
2643
                itemnumber    => $item_1->itemnumber,
2640
                frombranch => $library_1->{branchcode},
2644
                frombranch    => $library_1->{branchcode},
2641
                tobranch   => $library_2->{branchcode},
2645
                tobranch      => $library_2->{branchcode},
2646
                datesent      => \'NOW()',
2647
                datearrived   => undef,
2648
                datecancelled => undef,
2649
                daterequested => \'NOW()',
2642
            }
2650
            }
2643
        }
2651
        }
2644
    );
2652
    );
Lines 2649-2663 subtest 'filter_by_in_transit' => sub { Link Here
2649
        {
2657
        {
2650
            class => 'Koha::Item::Transfers',
2658
            class => 'Koha::Item::Transfers',
2651
            value => {
2659
            value => {
2652
                itemnumber => $item_2->itemnumber,
2660
                itemnumber    => $item_2->itemnumber,
2653
                frombranch => $library_2->{branchcode},
2661
                frombranch    => $library_2->{branchcode},
2654
                tobranch   => $library_1->{branchcode},
2662
                tobranch      => $library_1->{branchcode},
2663
                datesent      => \'NOW()',
2664
                datearrived   => undef,
2665
                datecancelled => undef,
2666
                daterequested => \'NOW()',
2655
            }
2667
            }
2656
        }
2668
        }
2657
    );
2669
    );
2658
2670
2659
    is( $biblio->items->filter_by_in_transit->count, 2, "Filtered 2 in transit items" );
2671
    is( $biblio->items->filter_by_in_transit->count, 2, "Filtered 2 in transit items" );
2660
2672
2673
    $item_1->get_transfer->receive;
2674
2675
    is_deeply(
2676
        [ $biblio->items->filter_by_in_transit->get_column('itemnumber') ], [ $item_2->itemnumber ],
2677
        "First item has been received"
2678
    );
2679
2680
    $item_2->get_transfer->cancel( { reason => "Manual", force => 1 } );
2681
2682
    is( $biblio->items->filter_by_in_transit->count, 0, "Second item's transfer has been cancelled" );
2683
2661
    $schema->storage->txn_rollback;
2684
    $schema->storage->txn_rollback;
2662
2685
2663
};
2686
};
2664
- 

Return to bug 41298