| Lines 17-23
          
      
      
        Link Here | 
        
          | 17 |  | 17 |  | 
        
          | 18 | use Modern::Perl; | 18 | use Modern::Perl; | 
        
          | 19 |  | 19 |  | 
          
            
              | 20 | use Test::More tests => 12; | 20 | use Test::More tests => 22; | 
        
          | 21 | use Test::Mojo; | 21 | use Test::Mojo; | 
        
          | 22 | use t::lib::TestBuilder; | 22 | use t::lib::TestBuilder; | 
        
          | 23 |  | 23 |  | 
  
    | Lines 25-30
          use C4::Auth;
      
      
        Link Here | 
        
          | 25 | use C4::Context; | 25 | use C4::Context; | 
        
          | 26 |  | 26 |  | 
        
          | 27 | use Koha::Database; | 27 | use Koha::Database; | 
            
              |  |  | 28 | use Koha::Account::Line; | 
        
          | 28 |  | 29 |  | 
        
          | 29 | my $builder = t::lib::TestBuilder->new(); | 30 | my $builder = t::lib::TestBuilder->new(); | 
        
          | 30 |  | 31 |  | 
  
    | Lines 41-46
          my $branchcode = $builder->build({ source => 'Branch' })->{ branchcode };
      
      
        Link Here | 
        
          | 41 | $t->get_ok('/api/v1/accountlines') | 42 | $t->get_ok('/api/v1/accountlines') | 
        
          | 42 |   ->status_is(401); | 43 |   ->status_is(401); | 
        
          | 43 |  | 44 |  | 
            
              |  |  | 45 | $t->put_ok("/api/v1/accountlines/11224409" => json => {'amount' => -5}) | 
            
              | 46 |     ->status_is(401); | 
            
              | 47 |  | 
        
          | 44 | my $loggedinuser = $builder->build({ | 48 | my $loggedinuser = $builder->build({ | 
        
          | 45 |     source => 'Borrower', | 49 |     source => 'Borrower', | 
        
          | 46 |     value => { | 50 |     value => { | 
  
    | Lines 115-118
          $json = $t->tx->res->json;
      
      
        Link Here | 
        
          | 115 | ok(ref $json eq 'ARRAY', 'response is a JSON array'); | 119 | ok(ref $json eq 'ARRAY', 'response is a JSON array'); | 
        
          | 116 | ok(scalar @$json == 4, 'response array contains 3 elements'); | 120 | ok(scalar @$json == 4, 'response array contains 3 elements'); | 
        
          | 117 |  | 121 |  | 
            
              |  |  | 122 | # Editing accountlines tests | 
            
              | 123 | my $put_data = { | 
            
              | 124 |     'amount' => -19, | 
            
              | 125 |     'amountoutstanding' => -19 | 
            
              | 126 | }; | 
            
              | 127 |  | 
            
              | 128 | $tx = $t->ua->build_tx( | 
            
              | 129 |     PUT => "/api/v1/accountlines/11224409" | 
            
              | 130 |         => {Accept => '*/*'} | 
            
              | 131 |         => json => $put_data); | 
            
              | 132 | $tx->req->cookies({name => 'CGISESSID', value => $session->id}); | 
            
              | 133 | $tx->req->env({REMOTE_ADDR => '127.0.0.1'}); | 
            
              | 134 | $t->request_ok($tx) | 
            
              | 135 |     ->status_is(404); | 
            
              | 136 |  | 
            
              | 137 | my $accountline_to_edit = Koha::Account::Lines->search({'borrowernumber' => $borrowernumber2})->unblessed()->[0]; | 
            
              | 138 |  | 
            
              | 139 | $tx = $t->ua->build_tx(PUT => "/api/v1/accountlines/$accountline_to_edit->{accountlines_id}" => json => $put_data); | 
            
              | 140 | $tx->req->cookies({name => 'CGISESSID', value => $borrowersession->id}); | 
            
              | 141 | $tx->req->env({REMOTE_ADDR => '127.0.0.1'}); | 
            
              | 142 | $t->request_ok($tx) | 
            
              | 143 |   ->status_is(403); | 
            
              | 144 |  | 
            
              | 145 | $tx = $t->ua->build_tx( | 
            
              | 146 |     PUT => "/api/v1/accountlines/$accountline_to_edit->{accountlines_id}" | 
            
              | 147 |         => {Accept => '*/*'} | 
            
              | 148 |         => json => $put_data); | 
            
              | 149 | $tx->req->cookies({name => 'CGISESSID', value => $session->id}); | 
            
              | 150 | $tx->req->env({REMOTE_ADDR => '127.0.0.1'}); | 
            
              | 151 | $t->request_ok($tx) | 
            
              | 152 |     ->status_is(200); | 
            
              | 153 |  | 
            
              | 154 | my $accountline_edited = Koha::Account::Lines->search({'borrowernumber' => $borrowernumber2})->unblessed()->[0]; | 
            
              | 155 |  | 
            
              | 156 | is($accountline_edited->{amount}, '-19.000000'); | 
            
              | 157 | is($accountline_edited->{amountoutstanding}, '-19.000000'); | 
            
              | 158 |  | 
            
              | 159 |  | 
            
              | 160 | # Payment tests | 
            
              | 161 |  | 
        
          | 118 | $dbh->rollback; | 162 | $dbh->rollback; | 
            
              | 119 | -  |  |  |