'Full Administrator', 'guard_name' => 'admin']); $admin = User::factory()->create(); $admin->assignRole('Full Administrator'); Schema::disableForeignKeyConstraints(); $customer = Customer::factory()->create(); $item = OrderItem::create(['order_id' => 1, 'product_id' => 1, 'billing_cycle' => 'monthly', 'months' => 1, 'quantity' => 1, 'price' => 100000]); $service = Service::create(['customer_id' => $customer->id, 'order_item_id' => $item->id, 'status' => 'active']); $url = "/api/v1/administrator/customers/{$customer->uuid}/services/{$service->id}"; $this->actingAs($admin, 'admin')->putJson($url, ['billing_cycle' => 'annually'])->assertOk(); $item->refresh(); $this->assertSame('annually', $item->billing_cycle); $this->assertSame(12, (int) $item->months); $this->actingAs($admin, 'admin')->putJson($url, ['billing_cycle' => 'onetime'])->assertStatus(422); } }