X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/8aea132fabed254fd0f47d58a1a4b136308bc1d4..98b64fe1e380c232428d63cea0eb5f44b1d1a2c3:/t/part/assembly.t diff --git a/t/part/assembly.t b/t/part/assembly.t index 302cffd6c..28654b74d 100644 --- a/t/part/assembly.t +++ b/t/part/assembly.t @@ -13,12 +13,21 @@ Support::TestSetup::login(); clear_up(); reset_state(); -is( SL::DB::Manager::Part->get_all_count(), 3, "total number of parts created is 2"); +is( SL::DB::Manager::Part->get_all_count(), 3, "total number of parts created is 3"); -my $assembly = SL::DB::Manager::Part->find_by( partnumber => 'as1' ); +my $assembly_part = SL::DB::Manager::Part->find_by( partnumber => 'as1' ); +my $assembly_item_part = SL::DB::Manager::Part->find_by( partnumber => '19000' ); -is($assembly->type, 'assembly', 'assembly has correct type'); -is( scalar @{$assembly->assemblies}, 2, 'assembly consists of two parts' ); +is($assembly_part->inventory_accno_id, undef, "assembly doesn't have an inventory accno id"); + +is($assembly_part->part_type, 'assembly', 'assembly has correct type'); +is( scalar @{$assembly_part->assemblies}, 2, 'assembly consists of two parts' ); + +# fetch assembly item corresponding to partnumber 19000 +my $assembly_items = $assembly_part->find_assemblies( { parts_id => $assembly_item_part->id } ) || die "can't find assembly_item"; +my $assembly_item = $assembly_items->[0]; +is($assembly_item->part->partnumber, '19000', 'assembly part part relation works'); +is($assembly_item->assembly_part->partnumber, 'as1', 'assembly part assembly part relation works'); clear_up(); done_testing; @@ -33,21 +42,22 @@ sub reset_state { # create an assembly that consists of two parts my ($part1, $part2, $unit, $assembly_part, $assembly_1, $assembly_2); - my $unit = SL::DB::Manager::Unit->find_by(name => 'Stck') || die "Can't find unit 'Stck'"; + $unit = SL::DB::Manager::Unit->find_by(name => 'Stck') || die "Can't find unit 'Stck'"; $part1 = SL::DB::Part->new_part(partnumber => '19000', unit => $unit->name, + part_type => 'part', )->save; $part2 = $part1->clone_and_reset($part1); $part2->partnumber($part1->partnumber + 1); $part2->save; - my $assembly_part = SL::DB::Part->new_assembly(partnumber => 'as1', - description => 'assembly', - unit => $unit->name, + $assembly_part = SL::DB::Part->new_assembly(partnumber => 'as1', + description => 'assembly', + unit => $unit->name, ); - my $assembly_1 = SL::DB::Assembly->new(parts_id => $part2->id, qty => 3, bom => 1); - my $assembly_2 = SL::DB::Assembly->new(parts_id => $part2->id, qty => 3, bom => 1); + $assembly_1 = SL::DB::Assembly->new(parts_id => $part1->id, qty => 3, bom => 1); + $assembly_2 = SL::DB::Assembly->new(parts_id => $part2->id, qty => 3, bom => 1); $assembly_part->add_assemblies($assembly_1, $assembly_2); $assembly_part->save; };