|
- <?php
-
- namespace Tests\Feature;
-
- use App\Codes\SMSSendPurpose;
- use App\Models\ColumnName;
- use App\Models\Contract;
- use App\Models\ContractHistory;
- use App\Models\ReceiptIssuingOrder;
- use App\Models\SMSProvider;
- use App\Models\SMSSendOrder;
- use App\Models\User;
- use App\Util\DBUtil;
- use Database\Factories\UserFactory;
- use Illuminate\Foundation\Testing\RefreshDatabase;
- use Illuminate\Foundation\Testing\WithFaker;
- use Illuminate\Support\Facades\DB;
- use Tests\TestCase;
-
- class ModelTest extends TestCase
- {
- use RefreshDatabase;
-
- /**
- * A basic feature test example.
- */
- public function test_example(): void
- {
- $contract = Contract::factory()->create();
-
- $receipt = new ReceiptIssuingOrder();
- $receipt->setContract($contract)->save();
-
- $provider = SMSProvider::factory()->create();
-
- $order = SMSSendOrder::newModelInstance()->setContract($contract)
- ->setReceiptIssuingOrder($receipt)
- ->setSMSProvider($provider);
-
- $order->purpose = SMSSendPurpose::SEND_RECEIPT_ISSUING_ORDER_FORM;
-
- $order->save();
-
-
- $ret = SMSSendOrder::first();
-
- $this->assertNotNull($ret);
-
- $this->assertEquals(SMSSendPurpose::SEND_RECEIPT_ISSUING_ORDER_FORM, $ret->purpose);
- }
-
- public function test_factory()
- {
-
- $contract = Contract::factory()->create();
- $user = User::factory()->for($contract)->create();
-
-
- if ($user instanceof User && $contract instanceof Contract) {
- $this->assertNotNull($user->contract_id);
-
- $this->assertEquals($contract->id, $user->contract_id);
- } else {
- $this->assertInstanceOf(Contract::class, $contract);
- $this->assertInstanceOf(User::class, $user);
- }
- }
- }
|