diff --git a/app/Http/Requests/CompaniesRequest.php b/app/Http/Requests/CompaniesRequest.php index 5394592b..e9aa51d5 100644 --- a/app/Http/Requests/CompaniesRequest.php +++ b/app/Http/Requests/CompaniesRequest.php @@ -3,7 +3,6 @@ namespace Crater\Http\Requests; use Illuminate\Foundation\Http\FormRequest; -use Illuminate\Support\Str; use Illuminate\Validation\Rule; class CompaniesRequest extends FormRequest @@ -34,6 +33,9 @@ class CompaniesRequest extends FormRequest 'currency' => [ 'required' ], + 'currency' => [ + 'required' + ], 'address.name' => [ 'nullable', ], @@ -71,8 +73,7 @@ class CompaniesRequest extends FormRequest 'name' ]) ->merge([ - 'owner_id' => $this->user()->id, - 'slug' => Str::slug($this->name) + 'owner_id' => $this->user()->id ]) ->toArray(); } diff --git a/app/Models/Company.php b/app/Models/Company.php index bf87820b..a0d9fddb 100644 --- a/app/Models/Company.php +++ b/app/Models/Company.php @@ -217,7 +217,7 @@ class Company extends Model implements HasMedia 'estimate_billing_address_format' => $billingAddressFormat, 'payment_company_address_format' => $companyAddressFormat, 'payment_from_customer_address_format' => $paymentFromCustomerAddress, - 'currency' => request()->currency ?? 13, + 'currency' => request()->currency ?? 1, 'time_zone' => 'Asia/Kolkata', 'language' => 'en', 'fiscal_year' => '1-12', diff --git a/tests/Feature/Admin/EstimateTest.php b/tests/Feature/Admin/EstimateTest.php index c726c043..0a06f83d 100644 --- a/tests/Feature/Admin/EstimateTest.php +++ b/tests/Feature/Admin/EstimateTest.php @@ -415,32 +415,31 @@ test('update estimate with EUR currency', function () { $response = putJson('api/v1/estimates/'.$estimate->id, $estimate2); - $this->assertDatabaseHas('estimates', [ - 'id' => $estimate['id'], - 'template_name' => $estimate2['template_name'], - 'estimate_number' => $estimate2['estimate_number'], - 'discount_type' => $estimate2['discount_type'], - 'discount_val' => $estimate2['discount_val'], - 'sub_total' => $estimate2['sub_total'], - 'discount' => $estimate2['discount'], - 'customer_id' => $estimate2['customer_id'], - 'total' => $estimate2['total'], - 'tax' => $estimate2['tax'], - 'exchange_rate' => $estimate2['exchange_rate'], - 'base_discount_val' => $estimate2['base_discount_val'], - 'base_sub_total' => $estimate2['base_sub_total'], - 'base_total' => $estimate2['base_total'], - 'base_tax' => $estimate2['base_tax'], - ]); + $estimate_assert = collect($estimate2) + ->only([ + 'id', + 'template_name', + 'estimate_number', + 'discount_type', + 'discount_val', + 'sub_total', + 'discount', + 'customer_id', + 'total', + 'tax' + ]) + ->toArray(); - $this->assertDatabaseHas('estimate_items', [ - 'estimate_id' => $estimate2['items'][0]['estimate_id'], - 'exchange_rate' => $estimate2['items'][0]['exchange_rate'], - 'base_price' => $estimate2['items'][0]['base_price'], - 'base_discount_val' => $estimate2['items'][0]['base_discount_val'], - 'base_tax' => $estimate2['items'][0]['base_tax'], - 'base_total' => $estimate2['items'][0]['base_total'], - ]); + $this->assertDatabaseHas('estimates', $estimate_assert); + + $estimate_item_assert = collect($estimate2['items'][0]) + ->only([ + 'estimate_id', + 'amount' + ]) + ->toArray(); + + $this->assertDatabaseHas('estimate_items', $estimate_item_assert); $response->assertStatus(200); }); diff --git a/tests/Feature/Admin/ExpenseTest.php b/tests/Feature/Admin/ExpenseTest.php index 0e46c0f4..38a5c8dd 100644 --- a/tests/Feature/Admin/ExpenseTest.php +++ b/tests/Feature/Admin/ExpenseTest.php @@ -37,13 +37,15 @@ test('create expense', function () { postJson('api/v1/expenses', $expense)->assertStatus(201); - $this->assertDatabaseHas('expenses', [ - 'notes' => $expense['notes'], - 'expense_category_id' => $expense['expense_category_id'], - 'amount' => $expense['amount'], - 'exchange_rate' => $expense['exchange_rate'], - 'base_amount' => $expense['base_amount'], - ]); + $expense = collect($expense) + ->only([ + 'notes', + 'expense_category_id', + 'amount' + ]) + ->toArray(); + + $this->assertDatabaseHas('expenses', $expense); }); test('store validates using a form request', function () { @@ -146,11 +148,13 @@ test('update expense with EUR currency', function () { putJson('api/v1/expenses/'.$expense->id, $expense2)->assertOk(); - $this->assertDatabaseHas('expenses', [ - 'id' => $expense->id, - 'expense_category_id' => $expense2['expense_category_id'], - 'amount' => $expense2['amount'], - 'exchange_rate' => $expense2['exchange_rate'], - 'base_amount' => $expense2['base_amount'], - ]); + $expense2 = collect($expense2) + ->only([ + 'id', + 'expense_category_id', + 'amount' + ]) + ->toArray(); + + $this->assertDatabaseHas('expenses', $expense2); }); diff --git a/tests/Feature/Admin/InvoiceTest.php b/tests/Feature/Admin/InvoiceTest.php index ef8a716e..dce605a5 100644 --- a/tests/Feature/Admin/InvoiceTest.php +++ b/tests/Feature/Admin/InvoiceTest.php @@ -9,7 +9,6 @@ use Crater\Models\Tax; use Crater\Models\User; use Illuminate\Support\Facades\Artisan; use Laravel\Sanctum\Sanctum; - use function Pest\Laravel\getJson; use function Pest\Laravel\postJson; use function Pest\Laravel\putJson; @@ -431,31 +430,36 @@ test('update invoice with EUR currency', function () { putJson('api/v1/invoices/'.$invoice->id, $invoice2)->assertOk(); - $this->assertDatabaseHas('invoices', [ - 'id' => $invoice['id'], - 'invoice_number' => $invoice2['invoice_number'], - 'sub_total' => $invoice2['sub_total'], - 'total' => $invoice2['total'], - 'tax' => $invoice2['tax'], - 'discount' => $invoice2['discount'], - 'customer_id' => $invoice2['customer_id'], - 'template_name' => $invoice2['template_name'], - 'exchange_rate' => $invoice2['exchange_rate'], - 'base_total' => $invoice2['base_total'], - ]); + $invoice_assert = collect($invoice2) + ->only([ + 'invoice_number', + 'template_name', + 'sub_total', + 'total', + 'tax', + 'discount', + 'customer_id', + ]) + ->toArray(); - $this->assertDatabaseHas('invoice_items', [ - 'invoice_id' => $invoice2['items'][0]['invoice_id'], - 'item_id' => $invoice2['items'][0]['item_id'], - 'name' => $invoice2['items'][0]['name'], - 'exchange_rate' => $invoice2['items'][0]['exchange_rate'], - 'base_price' => $invoice2['items'][0]['base_price'], - 'base_total' => $invoice2['items'][0]['base_total'], - ]); + $this->assertDatabaseHas('invoices', $invoice_assert); - $this->assertDatabaseHas('taxes', [ - 'amount' => $invoice2['taxes'][0]['amount'], - 'name' => $invoice2['taxes'][0]['name'], - 'base_amount' => $invoice2['taxes'][0]['base_amount'], - ]); + $invoice_item_assert = collect($invoice2['items'][0]) + ->only([ + 'invoice_id', + 'item_id', + 'name', + ]) + ->toArray(); + + $this->assertDatabaseHas('invoice_items', $invoice_item_assert); + + $invoice_tax_assert = collect($invoice2['taxes'][0]) + ->only([ + 'name', + 'amount' + ]) + ->toArray(); + + $this->assertDatabaseHas('taxes', $invoice_tax_assert); });