From 7a6c25bf45ebb07a9440bb3230809c9e07d35f2f Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Wed, 26 Jul 2023 07:29:06 +0000 Subject: [PATCH] Bug 34415: Remove T::D::C from EdiTransport.t Signed-off-by: Marcel de Rooy Signed-off-by: Jonathan Druart --- t/EdiTransport.t | 57 +++++++++++++++++++++--------------------------- 1 file changed, 25 insertions(+), 32 deletions(-) diff --git a/t/EdiTransport.t b/t/EdiTransport.t index fb2442ea7e7..f800611bafc 100755 --- a/t/EdiTransport.t +++ b/t/EdiTransport.t @@ -2,40 +2,30 @@ use Modern::Perl; use FindBin qw( $Bin ); -use Test::More; -use Test::MockModule; -use Module::Load::Conditional qw/check_install/; - -BEGIN { - if ( check_install( module => 'Test::DBIx::Class' ) ) { - plan tests => 5; - } - else { - plan skip_all => 'Need Test::DBIx::Class'; - } - -} - -use Test::DBIx::Class; - -fixtures_ok [ - VendorEdiAccount => - [ [ 'id', 'description', 'transport' ], [ 1, 'test vendor', 'FILE' ], ], - EdifactMessage => [ - [ 'message_type', 'filename', 'raw_msg' ], - [ 'TEST', 'duplicate', 'message_contents' ], - ], - ], - 'add_fixtures'; +use Test::More tests => 5; +use Test::Warn; -my $filename = 'QUOTES_413514.CEQ'; +use t::lib::TestBuilder; + +use Koha::Database; + +my $schema = Koha::Database->new->schema; +my $builder = t::lib::TestBuilder->new; + +$schema->storage->txn_begin; -my $db = Test::MockModule->new('Koha::Database'); -$db->mock( _new_schema => sub { return Schema(); } ); +my $account = $builder->build({ source => 'VendorEdiAccount', value => { + description => 'test vendor', transport => 'FILE', +}}); +$builder->build({ source => 'EdifactMessage', value => { + message_type => 'TEST', filename => 'duplicate', raw_msg => 'message_contents' +}}); + +my $filename = 'QUOTES_413514.CEQ'; use_ok('Koha::Edifact::Transport'); -my $trans = Koha::Edifact::Transport->new(1); +my $trans = Koha::Edifact::Transport->new( $account->{id} ); isa_ok( $trans, 'Koha::Edifact::Transport' ); @@ -46,12 +36,15 @@ $mhash->{message_type} = 'TEST'; # set a bogus message type $trans->ingest( $mhash, $filename ); -my $cnt = ResultSet('EdifactMessage')->count(); +my $cnt = $schema->resultset('EdifactMessage')->count(); is( $cnt, 2, 'unique message name ingested' ); -$trans->ingest( $mhash, $filename ); # try a repeat ingest +# try a repeat ingest +warning_like {$trans->ingest( $mhash, $filename ) } qr/skipping ingest of QUOTES_413514.CEQ/, 'Warning on repeated ingest'; -my $cnt2 = ResultSet('EdifactMessage')->count(); +my $cnt2 = $schema->resultset('EdifactMessage')->count(); is( $cnt2, 2, 'duplicate message name not ingested' ); + +$schema->storage->txn_rollback; -- 2.25.1