Volltext-Suche Auftrag: auch in Wiedevorlagen suchen
[kivitendo-erp.git] / t / helper / shipped_qty.t
index f9fc4f9..ae97ccb 100644 (file)
@@ -75,6 +75,7 @@ my $purchase_order = create_purchase_order(
 Rose::DB::Object::Helpers::forget_related($purchase_order, 'orderitems');
 $purchase_order->orderitems;
 
+local $::instance_conf->data->{shipped_qty_require_stock_out} = 1;
 SL::Helper::ShippedQty
   ->new(require_stock_out => 1)  # should make no difference while there is no delivery order
   ->calculate($purchase_order)
@@ -88,6 +89,7 @@ my $purchase_orderitem_part1 = SL::DB::Manager::OrderItem->find_by( parts_id =>
 is($purchase_orderitem_part1->shipped_qty, 0, "OrderItem shipped_qty method ok");
 
 is($purchase_order->closed,     0, 'purchase order is open');
+# set delivered only if the do is also stocked in
 ok(!$purchase_order->delivered,    'purchase order is not delivered');
 
 note('converting purchase order to delivery order');
@@ -258,56 +260,6 @@ ok($sales_order_opt->{delivered},                          "require_stock_out =>
 
 clear_up();
 
-{
-#  legacy unlinked scenario:
-#
-#  order with two positions of the same part, qtys: 5, 3.
-#  3 linked delivery orders, with positions:
-#    1:  3 unlinked
-#    2:  1 linked to 1, 3 linked to 2
-#    3:  1 linked to 1
-#
-#  should be resolved under fill_up as 5/3, but gets resolved as 4/4
-  my $part = new_part()->save;
-  my $order = create_sales_order(
-    orderitems => [
-      create_order_item(part => $part, qty => 5),
-      create_order_item(part => $part, qty => 3),
-    ],
-  )->save;
-  my $do1 = create_sales_delivery_order(
-    orderitems => [
-      create_delivery_order_item(part => $part, qty => 3),
-    ],
-  );
-  my $do2 = create_sales_delivery_order(
-    orderitems => [
-      create_delivery_order_item(part => $part, qty => 1),
-      create_delivery_order_item(part => $part, qty => 3),
-    ],
-  );
-  my $do3 = create_sales_delivery_order(
-    orderitems => [
-      create_delivery_order_item(part => $part, qty => 1),
-    ],
-  );
-  $order->link_to_record($do1);
-  $order->link_to_record($do2);
-  $order->items_sorted->[0]->link_to_record($do2->items_sorted->[0]);
-  $order->items_sorted->[1]->link_to_record($do2->items_sorted->[1]);
-  $order->link_to_record($do3);
-  $order->items_sorted->[0]->link_to_record($do3->items->[0]);
-
-  SL::Helper::ShippedQty
-    ->new(fill_up => 1, require_stock_out => 0)
-    ->calculate($order)
-    ->write_to_objects;
-
-  is $order->items_sorted->[0]->{shipped_qty}, 5, 'unlinked legacy position test 1';
-  is $order->items_sorted->[1]->{shipped_qty}, 3, 'unlinked legacy position test 2';
-
-}
-
 {
 # edge case:
 #
@@ -330,7 +282,7 @@ clear_up();
   $delivery_order->save;
 
   SL::Helper::ShippedQty
-    ->new(fill_up => 0, require_stock_out => 0)
+    ->new(require_stock_out => 0)
     ->calculate($sales_order)
     ->write_to_objects;