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

(-)a/t/db_dependent/Suggestions.t (-24 / +29 lines)
Lines 611-618 subtest 'EmailPurchaseSuggestions' => sub { Link Here
611
611
612
    # EmailPurchaseSuggestions set to disabled
612
    # EmailPurchaseSuggestions set to disabled
613
    t::lib::Mocks::mock_preference( "EmailPurchaseSuggestions", "0" );
613
    t::lib::Mocks::mock_preference( "EmailPurchaseSuggestions", "0" );
614
    $dbh->do(q|DELETE FROM message_queue|);
614
    Koha::Suggestion->new($my_suggestion)->store;
615
    Koha::Suggestion->new($my_suggestion)->store;
615
    my $newsuggestions_messages = C4::Letters::GetQueuedMessages( { borrowernumber => $borrowernumber } );
616
    my $newsuggestions_messages = C4::Letters::GetQueuedMessages();
616
    is(
617
    is(
617
        @$newsuggestions_messages, 0,
618
        @$newsuggestions_messages, 0,
618
        'New suggestion does not send an email when EmailPurchaseSuggestions disabled'
619
        'New suggestion does not send an email when EmailPurchaseSuggestions disabled'
Lines 623-661 subtest 'EmailPurchaseSuggestions' => sub { Link Here
623
    t::lib::Mocks::mock_preference( "ReplytoDefault",             "" );
624
    t::lib::Mocks::mock_preference( "ReplytoDefault",             "" );
624
    t::lib::Mocks::mock_preference( "EmailAddressForSuggestions", "" );
625
    t::lib::Mocks::mock_preference( "EmailAddressForSuggestions", "" );
625
    Koha::Libraries->find('CPL')->update( { branchemail => '', branchreplyto => '' } );
626
    Koha::Libraries->find('CPL')->update( { branchemail => '', branchreplyto => '' } );
627
    $dbh->do(q|DELETE FROM message_queue|);
626
    Koha::Suggestion->new($my_suggestion)->store;
628
    Koha::Suggestion->new($my_suggestion)->store;
629
    $newsuggestions_messages = C4::Letters::GetQueuedMessages();
630
    my $message1 = C4::Letters::GetMessage( $newsuggestions_messages->[0]->{message_id} );
627
631
628
    t::lib::Mocks::mock_preference( "ReplytoDefault", 'library@b.c' );
632
    t::lib::Mocks::mock_preference( "ReplytoDefault", 'library@b.c' );
633
    $dbh->do(q|DELETE FROM message_queue|);
629
    Koha::Suggestion->new($my_suggestion)->store;
634
    Koha::Suggestion->new($my_suggestion)->store;
635
    $newsuggestions_messages = C4::Letters::GetQueuedMessages();
636
    my $message2 = C4::Letters::GetMessage( $newsuggestions_messages->[0]->{message_id} );
630
637
631
    Koha::Libraries->find('CPL')->update( { branchemail => 'branchemail@hosting.com' } );
638
    Koha::Libraries->find('CPL')->update( { branchemail => 'branchemail@hosting.com' } );
639
    $dbh->do(q|DELETE FROM message_queue|);
632
    Koha::Suggestion->new($my_suggestion)->store;
640
    Koha::Suggestion->new($my_suggestion)->store;
641
    $newsuggestions_messages = C4::Letters::GetQueuedMessages();
642
    my $message3 = C4::Letters::GetMessage( $newsuggestions_messages->[0]->{message_id} );
633
643
634
    Koha::Libraries->find('CPL')->update( { branchreplyto => 'branchemail@b.c' } );
644
    Koha::Libraries->find('CPL')->update( { branchreplyto => 'branchemail@b.c' } );
645
    $dbh->do(q|DELETE FROM message_queue|);
635
    Koha::Suggestion->new($my_suggestion)->store;
646
    Koha::Suggestion->new($my_suggestion)->store;
647
    $newsuggestions_messages = C4::Letters::GetQueuedMessages();
648
    my $message4 = C4::Letters::GetMessage( $newsuggestions_messages->[0]->{message_id} );
636
649
637
    $newsuggestions_messages = C4::Letters::GetQueuedMessages( { borrowernumber => $borrowernumber } );
638
    isnt( @$newsuggestions_messages, 0, 'New suggestions sends an email wne EmailPurchaseSuggestions enabled' );
650
    isnt( @$newsuggestions_messages, 0, 'New suggestions sends an email wne EmailPurchaseSuggestions enabled' );
639
    my $message1 =
640
        C4::Letters::GetMessage( $newsuggestions_messages->[0]->{message_id} );
641
    is(
651
    is(
642
        $message1->{to_address}, 'noreply@hosting.com',
652
        $message1->{to_address}, 'noreply@hosting.com',
643
        'BranchEmailAddress falls back to KohaAdminEmailAddress if branchreplyto, branchemail and ReplytoDefault are not set'
653
        'BranchEmailAddress falls back to KohaAdminEmailAddress if branchreplyto, branchemail and ReplytoDefault are not set'
644
    );
654
    );
645
    my $message2 =
646
        C4::Letters::GetMessage( $newsuggestions_messages->[1]->{message_id} );
647
    is(
655
    is(
648
        $message2->{to_address}, 'library@b.c',
656
        $message2->{to_address}, 'library@b.c',
649
        'BranchEmailAddress falls back to ReplytoDefault if neither branchreplyto or branchemail are set'
657
        'BranchEmailAddress falls back to ReplytoDefault if neither branchreplyto or branchemail are set'
650
    );
658
    );
651
    my $message3 =
652
        C4::Letters::GetMessage( $newsuggestions_messages->[2]->{message_id} );
653
    is(
659
    is(
654
        $message3->{to_address}, 'branchemail@hosting.com',
660
        $message3->{to_address}, 'branchemail@hosting.com',
655
        'BranchEmailAddress uses branchemail if branch_replto is not set'
661
        'BranchEmailAddress uses branchemail if branch_replto is not set'
656
    );
662
    );
657
    my $message4 =
658
        C4::Letters::GetMessage( $newsuggestions_messages->[3]->{message_id} );
659
    is(
663
    is(
660
        $message4->{to_address}, 'branchemail@b.c',
664
        $message4->{to_address}, 'branchemail@b.c',
661
        'BranchEmailAddress uses branchreplyto in preference to branchemail when set'
665
        'BranchEmailAddress uses branchreplyto in preference to branchemail when set'
Lines 668-687 subtest 'EmailPurchaseSuggestions' => sub { Link Here
668
    );
672
    );
669
673
670
    t::lib::Mocks::mock_preference( "ReplytoDefault", undef );
674
    t::lib::Mocks::mock_preference( "ReplytoDefault", undef );
675
    $dbh->do(q|DELETE FROM message_queue|);
671
    Koha::Suggestion->new($my_suggestion)->store;
676
    Koha::Suggestion->new($my_suggestion)->store;
677
    $newsuggestions_messages = C4::Letters::GetQueuedMessages();
678
    my $message5 = C4::Letters::GetMessage( $newsuggestions_messages->[0]->{message_id} );
672
679
673
    t::lib::Mocks::mock_preference( "ReplytoDefault", 'library@b.c' );
680
    t::lib::Mocks::mock_preference( "ReplytoDefault", 'library@b.c' );
681
    $dbh->do(q|DELETE FROM message_queue|);
674
    Koha::Suggestion->new($my_suggestion)->store;
682
    Koha::Suggestion->new($my_suggestion)->store;
683
    $newsuggestions_messages = C4::Letters::GetQueuedMessages();
684
    my $message6 = C4::Letters::GetMessage( $newsuggestions_messages->[0]->{message_id} );
675
685
676
    $newsuggestions_messages = C4::Letters::GetQueuedMessages( { borrowernumber => $borrowernumber } );
677
    my $message5 =
678
        C4::Letters::GetMessage( $newsuggestions_messages->[4]->{message_id} );
679
    is(
686
    is(
680
        $message5->{to_address},
687
        $message5->{to_address},
681
        'noreply@hosting.com', 'KohaAdminEmailAddress uses KohaAdminEmailAddress when ReplytoDefault is not set'
688
        'noreply@hosting.com', 'KohaAdminEmailAddress uses KohaAdminEmailAddress when ReplytoDefault is not set'
682
    );
689
    );
683
    my $message6 =
684
        C4::Letters::GetMessage( $newsuggestions_messages->[5]->{message_id} );
685
    is(
690
    is(
686
        $message6->{to_address},
691
        $message6->{to_address},
687
        'library@b.c', 'KohaAdminEmailAddress uses ReplytoDefualt when ReplytoDefault is set'
692
        'library@b.c', 'KohaAdminEmailAddress uses ReplytoDefualt when ReplytoDefault is set'
Lines 694-734 subtest 'EmailPurchaseSuggestions' => sub { Link Here
694
    );
699
    );
695
700
696
    t::lib::Mocks::mock_preference( "ReplytoDefault", undef );
701
    t::lib::Mocks::mock_preference( "ReplytoDefault", undef );
702
    $dbh->do(q|DELETE FROM message_queue|);
697
    Koha::Suggestion->new($my_suggestion)->store;
703
    Koha::Suggestion->new($my_suggestion)->store;
704
    $newsuggestions_messages = C4::Letters::GetQueuedMessages();
705
    my $message7 = C4::Letters::GetMessage( $newsuggestions_messages->[0]->{message_id} );
698
706
699
    t::lib::Mocks::mock_preference( "ReplytoDefault", 'library@b.c' );
707
    t::lib::Mocks::mock_preference( "ReplytoDefault", 'library@b.c' );
708
    $dbh->do(q|DELETE FROM message_queue|);
700
    Koha::Suggestion->new($my_suggestion)->store;
709
    Koha::Suggestion->new($my_suggestion)->store;
710
    $newsuggestions_messages = C4::Letters::GetQueuedMessages();
711
    my $message8 = C4::Letters::GetMessage( $newsuggestions_messages->[0]->{message_id} );
701
712
702
    t::lib::Mocks::mock_preference(
713
    t::lib::Mocks::mock_preference(
703
        "EmailAddressForSuggestions",
714
        "EmailAddressForSuggestions",
704
        'suggestions@b.c'
715
        'suggestions@b.c'
705
    );
716
    );
717
    $dbh->do(q|DELETE FROM message_queue|);
706
    Koha::Suggestion->new($my_suggestion)->store;
718
    Koha::Suggestion->new($my_suggestion)->store;
719
    $newsuggestions_messages = C4::Letters::GetQueuedMessages();
720
    my $message9 = C4::Letters::GetMessage( $newsuggestions_messages->[0]->{message_id} );
707
721
708
    $newsuggestions_messages = C4::Letters::GetQueuedMessages( { borrowernumber => $borrowernumber } );
709
    my $message7 =
710
        C4::Letters::GetMessage( $newsuggestions_messages->[6]->{message_id} );
711
    is(
722
    is(
712
        $message7->{to_address},
723
        $message7->{to_address},
713
        'noreply@hosting.com',
724
        'noreply@hosting.com',
714
        'EmailAddressForSuggestions uses KohaAdminEmailAddress when neither EmailAddressForSuggestions or ReplytoDefault are set'
725
        'EmailAddressForSuggestions uses KohaAdminEmailAddress when neither EmailAddressForSuggestions or ReplytoDefault are set'
715
    );
726
    );
716
727
717
    my $message8 =
718
        C4::Letters::GetMessage( $newsuggestions_messages->[7]->{message_id} );
719
    is(
728
    is(
720
        $message8->{to_address},
729
        $message8->{to_address},
721
        'library@b.c', 'EmailAddressForSuggestions uses ReplytoDefault when EmailAddressForSuggestions is not set'
730
        'library@b.c', 'EmailAddressForSuggestions uses ReplytoDefault when EmailAddressForSuggestions is not set'
722
    );
731
    );
723
732
724
    my $message9 =
725
        C4::Letters::GetMessage( $newsuggestions_messages->[8]->{message_id} );
726
    is(
733
    is(
727
        $message9->{to_address},
734
        $message9->{to_address},
728
        'suggestions@b.c', 'EmailAddressForSuggestions uses EmailAddressForSuggestions when set'
735
        'suggestions@b.c', 'EmailAddressForSuggestions uses EmailAddressForSuggestions when set'
729
    );
736
    );
730
};
737
};
731
732
subtest 'ModSuggestion should work on suggestions without a suggester' => sub {
738
subtest 'ModSuggestion should work on suggestions without a suggester' => sub {
733
    plan tests => 2;
739
    plan tests => 2;
734
740
735
- 

Return to bug 39883