GetByWmsOrdersTest.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. <?php
  2. namespace Tests\Services\OrderService;
  3. use App\OracleDOCOrderHeader;
  4. use App\Order;
  5. use App\Services\OrderService;
  6. use Illuminate\Foundation\Testing\RefreshDatabase;
  7. use Illuminate\Foundation\Testing\WithFaker;
  8. use Tests\TestCase;
  9. class GetByWmsOrdersTest extends TestCase
  10. {
  11. /**
  12. * @var OrderService $service
  13. */
  14. private $service;
  15. private $data = [];
  16. protected function setUp(): void
  17. {
  18. parent::setUp(); // TODO: Change the autogenerated
  19. $this->service = app('OrderService');
  20. $orders = factory(Order::class)->times(1)->create();
  21. $orderHeaders = collect();
  22. foreach ($orders as $order) {
  23. $orderHeader = factory(OracleDOCOrderHeader::class)->make(['orderno'=>$order->code]);
  24. $orderHeaders->push($orderHeader);
  25. }
  26. $this->data =[
  27. 'orders' => $orders,
  28. 'orderHeaders' => $orderHeaders
  29. ];
  30. }
  31. /**
  32. * @test
  33. */
  34. public function getByWmsOrders()
  35. {
  36. $orders = $this->service->getByWmsOrders($this->data['orderHeaders']);
  37. $this->assertNotEmpty($orders);
  38. $this->assertEquals(count($this->data['orders']),$orders->count());
  39. }
  40. protected function tearDown(): void
  41. {
  42. Order::query()->whereIn('id',data_get($this->data['orders'],'*.id'))->delete();
  43. parent::tearDown(); // TODO: Change the autogenerated stub
  44. }
  45. }