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

(-)a/Koha/Object.pm (-4 / +6 lines)
Lines 179-194 my $value = Koha::Object->_method_cache($method_name, @args); Link Here
179
sub _method_cache {
179
sub _method_cache {
180
    my ($self, $method_name, @args) = @_;
180
    my ($self, $method_name, @args) = @_;
181
181
182
    # Don't include in cache key. Must also be unset in
183
    # possible uncached call to $method_name below
184
    if (@args) {
185
        delete $args[0]->{cache};
186
    }
187
182
    my $cache_key = $self->_method_cache_key($method_name, @args);
188
    my $cache_key = $self->_method_cache_key($method_name, @args);
183
    my $value = $self->_instance_cache_get($cache_key);
189
    my $value = $self->_instance_cache_get($cache_key);
184
190
185
    return $value if defined $value;
191
    return $value if defined $value;
186
192
187
    if (@args) {
188
        delete $args[0]->{cache};
189
    }
190
    $value = $self->$method_name(@args);
193
    $value = $self->$method_name(@args);
191
192
    $self->_instance_cache_set($cache_key, $value);
194
    $self->_instance_cache_set($cache_key, $value);
193
195
194
    return $value;
196
    return $value;
(-)a/t/db_dependent/Circulation.t (-1 / +6 lines)
Lines 797-802 subtest "CanBookBeRenewed tests" => sub { Link Here
797
    is( $renewokay, 1, '(Bug 8236), Can renew, this item is overdue but not pref does not block');
797
    is( $renewokay, 1, '(Bug 8236), Can renew, this item is overdue but not pref does not block');
798
798
799
    t::lib::Mocks::mock_preference('OverduesBlockRenewing','block');
799
    t::lib::Mocks::mock_preference('OverduesBlockRenewing','block');
800
    # Clear cache after changing preference affecting has_overdues evaluation
801
    $renewing_borrower_obj->_method_cache_clear('has_overdues');
802
800
    ( $renewokay, $error ) = CanBookBeRenewed($renewing_borrower_obj, $issue_6);
803
    ( $renewokay, $error ) = CanBookBeRenewed($renewing_borrower_obj, $issue_6);
801
    is( $renewokay, 0, '(Bug 8236), Cannot renew, this item is not overdue but patron has overdues');
804
    is( $renewokay, 0, '(Bug 8236), Cannot renew, this item is not overdue but patron has overdues');
802
    is( $error, 'overdue', "Correct error returned");
805
    is( $error, 'overdue', "Correct error returned");
Lines 805-810 subtest "CanBookBeRenewed tests" => sub { Link Here
805
    is( $error, 'overdue', "Correct error returned");
808
    is( $error, 'overdue', "Correct error returned");
806
809
807
    t::lib::Mocks::mock_preference('OverduesBlockRenewing','blockitem');
810
    t::lib::Mocks::mock_preference('OverduesBlockRenewing','blockitem');
811
    # Clear cache after changing preference affecting has_overdues evaluation
812
    $renewing_borrower_obj->_method_cache_clear('has_overdues');
813
808
    ( $renewokay, $error ) = CanBookBeRenewed($renewing_borrower_obj, $issue_6);
814
    ( $renewokay, $error ) = CanBookBeRenewed($renewing_borrower_obj, $issue_6);
809
    is( $renewokay, 1, '(Bug 8236), Can renew, this item is not overdue');
815
    is( $renewokay, 1, '(Bug 8236), Can renew, this item is not overdue');
810
    ( $renewokay, $error ) = CanBookBeRenewed($renewing_borrower_obj, $issue_7);
816
    ( $renewokay, $error ) = CanBookBeRenewed($renewing_borrower_obj, $issue_7);
811
- 

Return to bug 32476