領収証発行サービス
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

69 行
1.7KB

  1. <?php
  2. namespace Tests\Feature;
  3. use App\Codes\SMSSendPurpose;
  4. use App\Models\ColumnName;
  5. use App\Models\Contract;
  6. use App\Models\ContractHistory;
  7. use App\Models\ReceiptIssuingOrder;
  8. use App\Models\SMSProvider;
  9. use App\Models\SMSSendOrder;
  10. use App\Models\User;
  11. use App\Util\DBUtil;
  12. use Database\Factories\UserFactory;
  13. use Illuminate\Foundation\Testing\RefreshDatabase;
  14. use Illuminate\Foundation\Testing\WithFaker;
  15. use Illuminate\Support\Facades\DB;
  16. use Tests\TestCase;
  17. class ModelTest extends TestCase
  18. {
  19. use RefreshDatabase;
  20. /**
  21. * A basic feature test example.
  22. */
  23. public function test_example(): void
  24. {
  25. $contract = Contract::factory()->create();
  26. $receipt = new ReceiptIssuingOrder();
  27. $receipt->setContract($contract)->save();
  28. $provider = SMSProvider::factory()->create();
  29. $order = SMSSendOrder::newModelInstance()->setContract($contract)
  30. ->setReceiptIssuingOrder($receipt)
  31. ->setSMSProvider($provider);
  32. $order->purpose = SMSSendPurpose::SEND_RECEIPT_ISSUING_ORDER_FORM;
  33. $order->save();
  34. $ret = SMSSendOrder::first();
  35. $this->assertNotNull($ret);
  36. $this->assertEquals(SMSSendPurpose::SEND_RECEIPT_ISSUING_ORDER_FORM, $ret->purpose);
  37. }
  38. public function test_factory()
  39. {
  40. $contract = Contract::factory()->create();
  41. $user = User::factory()->for($contract)->create();
  42. if ($user instanceof User && $contract instanceof Contract) {
  43. $this->assertNotNull($user->contract_id);
  44. $this->assertEquals($contract->id, $user->contract_id);
  45. } else {
  46. $this->assertInstanceOf(Contract::class, $contract);
  47. $this->assertInstanceOf(User::class, $user);
  48. }
  49. }
  50. }