| 
      
            Lines 17-23
          
      
      
        Link Here
      
     | 
  
        
          | 17 | 
           | 
          17 | 
           | 
        
        
          | 18 | 
          use Modern::Perl;  | 
          18 | 
          use Modern::Perl;  | 
        
        
          | 19 | 
           | 
          19 | 
           | 
        
          
            
              | 20 | 
              use Test::More tests => 2;  | 
              20 | 
              use Test::More tests => 3;  | 
            
            
               | 
               | 
              21 | 
               | 
            
            
              | 22 | 
              use Test::MockModule;  | 
            
        
          | 21 | 
          use Test::Exception;  | 
          23 | 
          use Test::Exception;  | 
        
        
          | 22 | 
           | 
          24 | 
           | 
        
        
          | 23 | 
          use t::lib::Mocks;  | 
          25 | 
          use t::lib::Mocks;  | 
        
  
    | 
      
            Lines 175-177
          subtest 'create() tests' => sub {
      
      
        Link Here
      
     | 
  
        
          | 175 | 
                  is( "$@", q{Invalid 'bcc' parameter: not_an_email}, 'Exception message correct' ); | 
          177 | 
                  is( "$@", q{Invalid 'bcc' parameter: not_an_email}, 'Exception message correct' ); | 
        
        
          | 176 | 
              };  | 
          178 | 
              };  | 
        
        
          | 177 | 
          };  | 
          179 | 
          };  | 
        
          
            
              | 178 | 
              -   | 
              180 | 
               | 
            
            
               | 
               | 
              181 | 
              subtest 'send_or_die() tests' => sub { | 
            
            
              | 182 | 
               | 
            
            
              | 183 | 
                  plan tests => 4;  | 
            
            
              | 184 | 
               | 
            
            
              | 185 | 
                  my $email;  | 
            
            
              | 186 | 
                  my $args;  | 
            
            
              | 187 | 
               | 
            
            
              | 188 | 
                  my $transport = "Hi there!";  | 
            
            
              | 189 | 
               | 
            
            
              | 190 | 
                  my $mocked_email_simple = Test::MockModule->new('Email::Sender::Simple'); | 
            
            
              | 191 | 
                  $mocked_email_simple->mock(  | 
            
            
              | 192 | 
                      'send',  | 
            
            
              | 193 | 
                      sub { | 
            
            
              | 194 | 
                          my @params = @_;  | 
            
            
              | 195 | 
                          $email = $params[1];  | 
            
            
              | 196 | 
                          $args  = $params[2];  | 
            
            
              | 197 | 
                          return;  | 
            
            
              | 198 | 
                      }  | 
            
            
              | 199 | 
                  );  | 
            
            
              | 200 | 
               | 
            
            
              | 201 | 
                  my $html_body = '<h1>Title</h1><p>Message</p>';  | 
            
            
              | 202 | 
                  my $THE_email = Koha::Email->create(  | 
            
            
              | 203 | 
                      { | 
            
            
              | 204 | 
                          from      => 'from@example.com',  | 
            
            
              | 205 | 
                          to        => 'to@example.com',  | 
            
            
              | 206 | 
                          cc        => 'cc@example.com',  | 
            
            
              | 207 | 
                          reply_to  => 'reply_to@example.com',  | 
            
            
              | 208 | 
                          sender    => 'sender@example.com',  | 
            
            
              | 209 | 
                          html_body => $html_body  | 
            
            
              | 210 | 
                      }  | 
            
            
              | 211 | 
                  );  | 
            
            
              | 212 | 
               | 
            
            
              | 213 | 
                  my @bcc = ( 'bcc_1@example.com', 'bcc_2@example.com' );  | 
            
            
              | 214 | 
               | 
            
            
              | 215 | 
                  $THE_email->bcc(@bcc);  | 
            
            
              | 216 | 
               | 
            
            
              | 217 | 
                  is(  | 
            
            
              | 218 | 
                      $THE_email->email->header_str('Bcc'), | 
            
            
              | 219 | 
                      join( ', ', @bcc ),  | 
            
            
              | 220 | 
                      'Bcc header set correctly'  | 
            
            
              | 221 | 
                  );  | 
            
            
              | 222 | 
               | 
            
            
              | 223 | 
                  $THE_email->send_or_die(  | 
            
            
              | 224 | 
                      { transport => $transport, to => ['tomasito@mail.com'] } ); | 
            
            
              | 225 | 
                  is_deeply( $args->{to}, ['tomasito@mail.com'], | 
            
            
              | 226 | 
                      'If explicitly passed, "to" is preserved' );  | 
            
            
              | 227 | 
               | 
            
            
              | 228 | 
                  $THE_email->send_or_die( { transport => $transport } ); | 
            
            
              | 229 | 
                  is_deeply(  | 
            
            
              | 230 | 
                      $args->{to}, | 
            
            
              | 231 | 
                      [  | 
            
            
              | 232 | 
                          'to@example.com',    'cc@example.com',  | 
            
            
              | 233 | 
                          'bcc_1@example.com', 'bcc_2@example.com'  | 
            
            
              | 234 | 
                      ],  | 
            
            
              | 235 | 
                      'If explicitly passed, "to" is preserved'  | 
            
            
              | 236 | 
                  );  | 
            
            
              | 237 | 
                  is( $email->header_str('Bcc'), undef, 'The Bcc header is unset' ); | 
            
            
              | 238 | 
              };  |