v5.0.0 update

This commit is contained in:
Mohit Panjwani
2021-11-30 18:58:19 +05:30
parent d332712c22
commit 082d5cacf2
1253 changed files with 88309 additions and 71741 deletions

View File

@ -0,0 +1,50 @@
<?php
use Crater\Http\Requests\CompaniesRequest;
test('companies request validation rules', function () {
$request = new CompaniesRequest();
$this->assertEquals(
[
'name' => [
'required',
'string'
],
'address.name' => [
'nullable',
],
'address.address_street_1' => [
'nullable',
],
'address.address_street_2' => [
'nullable',
],
'address.city' => [
'nullable',
],
'address.state' => [
'nullable',
],
'address.country_id' => [
'nullable',
],
'address.zip' => [
'nullable',
],
'address.phone' => [
'nullable',
],
'address.fax' => [
'nullable',
],
],
$request->rules()
);
});
test('companies request authorize', function () {
$request = new CompaniesRequest();
$this->assertTrue($request->authorize());
});

View File

@ -0,0 +1,25 @@
<?php
use Crater\Http\Requests\CompanyRequest;
test('company request validation rules', function () {
$request = new CompanyRequest();
$this->assertEquals(
[
'name' => [
'required',
],
'country_id' => [
'required',
],
],
$request->rules()
);
});
test('company request authorize', function () {
$request = new CompanyRequest();
$this->assertTrue($request->authorize());
});

View File

@ -2,53 +2,97 @@
use Crater\Http\Requests\CustomerRequest;
test('customer request post validation rules', function () {
test('customer request validation rules', function () {
$request = new CustomerRequest();
$request->setMethod('POST');
$this->assertEquals(
[
'name' => [
'required',
],
'addresses.*.address_street_1' => [
'max:255',
],
'addresses.*.address_street_2' => [
'max:255',
],
'email' => [
'email',
'nullable',
'unique:users,email',
'unique:customers,email',
],
],
$request->rules()
);
});
test('customer request put validation rules', function () {
$request = new CustomerRequest();
$request->setMethod('PUT');
$this->assertEquals(
[
'name' => [
'required',
],
'addresses.*.address_street_1' => [
'max:255',
],
'addresses.*.address_street_2' => [
'max:255',
],
'email' => [
'email',
'password' => [
'nullable',
'unique:users,email',
],
'phone' => [
'nullable',
],
'company_name' => [
'nullable',
],
'contact_name' => [
'nullable',
],
'website' => [
'nullable',
],
'prefix' => [
'nullable',
],
'enable_portal' => [
'nullable',
],
'currency_id' => [
'nullable',
],
'billing.name' => [
'nullable',
],
'billing.address_street_1' => [
'nullable',
],
'billing.address_street_2' => [
'nullable',
],
'billing.city' => [
'nullable',
],
'billing.state' => [
'nullable',
],
'billing.country_id' => [
'nullable',
],
'billing.zip' => [
'nullable',
],
'billing.phone' => [
'nullable',
],
'billing.fax' => [
'nullable',
],
'shipping.name' => [
'nullable',
],
'shipping.address_street_1' => [
'nullable',
],
'shipping.address_street_2' => [
'nullable',
],
'shipping.city' => [
'nullable',
],
'shipping.state' => [
'nullable',
],
'shipping.country_id' => [
'nullable',
],
'shipping.zip' => [
'nullable',
],
'shipping.phone' => [
'nullable',
],
'shipping.fax' => [
'nullable',
]
],
$request->rules()
);

View File

@ -1,8 +1,7 @@
<?php
use Crater\Http\Requests\EstimatesRequest;
use Crater\Models\Estimate;
use Crater\Rules\UniqueNumber;
use Illuminate\Validation\Rule;
test('estimate request validation rules', function () {
$request = new EstimatesRequest();
@ -13,10 +12,14 @@ test('estimate request validation rules', function () {
'required',
],
'expiry_date' => [
'nullable',
],
'customer_id' => [
'required',
],
'user_id' => [
'estimate_number' => [
'required',
Rule::unique('estimates')->where('company_id', null)
],
'discount' => [
'required',
@ -41,7 +44,7 @@ test('estimate request validation rules', function () {
'array',
],
'items.*.description' => [
'max:255',
'nullable',
],
'items.*' => [
'required',
@ -56,10 +59,6 @@ test('estimate request validation rules', function () {
'items.*.price' => [
'required',
],
'estimate_number' => [
'required',
new UniqueNumber(Estimate::class),
],
],
$request->rules()
);

View File

@ -16,7 +16,7 @@ test('expense request validation rules', function () {
'amount' => [
'required',
],
'user_id' => [
'customer_id' => [
'nullable',
],
'notes' => [

View File

@ -1,8 +1,7 @@
<?php
use Crater\Http\Requests\InvoicesRequest;
use Crater\Models\Invoice;
use Crater\Rules\UniqueNumber;
use Illuminate\Validation\Rule;
test('invoice request validation rules', function () {
$request = new InvoicesRequest();
@ -13,10 +12,14 @@ test('invoice request validation rules', function () {
'required',
],
'due_date' => [
'nullable',
],
'customer_id' => [
'required',
],
'user_id' => [
'invoice_number' => [
'required',
Rule::unique('invoices')->where('company_id', null)
],
'discount' => [
'required',
@ -45,7 +48,7 @@ test('invoice request validation rules', function () {
'max:255',
],
'items.*.description' => [
'max:255',
'nullable',
],
'items.*.name' => [
'required',
@ -56,10 +59,6 @@ test('invoice request validation rules', function () {
'items.*.price' => [
'required',
],
'invoice_number' => [
'required',
new UniqueNumber(Invoice::class),
],
],
$request->rules()
);

View File

@ -1,6 +1,7 @@
<?php
use Crater\Http\Requests\PaymentMethodRequest;
use Illuminate\Validation\Rule;
test('payment method request validation rules', function () {
$request = new PaymentMethodRequest();
@ -9,7 +10,8 @@ test('payment method request validation rules', function () {
[
'name' => [
'required',
'unique:payment_methods,name',
Rule::unique('units')
->where('payment_methods', $request->header('company')),
],
],
$request->rules()

View File

@ -1,8 +1,7 @@
<?php
use Crater\Http\Requests\PaymentRequest;
use Crater\Models\Payment;
use Crater\Rules\UniqueNumber;
use Illuminate\Validation\Rule;
test('payment request validation rules', function () {
$request = new PaymentRequest();
@ -12,7 +11,7 @@ test('payment request validation rules', function () {
'payment_date' => [
'required',
],
'user_id' => [
'customer_id' => [
'required',
],
'amount' => [
@ -20,7 +19,7 @@ test('payment request validation rules', function () {
],
'payment_number' => [
'required',
new UniqueNumber(Payment::class),
Rule::unique('payments')->where('company_id', null)
],
'invoice_id' => [
'nullable',

View File

@ -0,0 +1,68 @@
<?php
use Crater\Http\Requests\RecurringInvoiceRequest;
test('recurring invoice request validation rules', function () {
$request = new RecurringInvoiceRequest();
$this->assertEquals(
[
'starts_at' => [
'required'
],
'send_automatically' => [
'required',
'boolean'
],
'customer_id' => [
'required'
],
'discount' => [
'required',
],
'discount_val' => [
'required',
],
'sub_total' => [
'required',
],
'total' => [
'required',
],
'tax' => [
'required',
],
'status' => [
'required'
],
'exchange_rate' => [
'nullable'
],
'frequency' => [
'required'
],
'limit_by' => [
'required'
],
'limit_count' => [
'required_if:limit_by,COUNT',
],
'limit_date' => [
'required_if:limit_by,DATE',
],
'items' => [
'required'
],
'items.*' => [
'required'
]
],
$request->rules()
);
});
test('recurring invoice request authorize', function () {
$request = new RecurringInvoiceRequest();
$this->assertTrue($request->authorize());
});

View File

@ -1,6 +1,7 @@
<?php
use Crater\Http\Requests\UnitRequest;
use Illuminate\Validation\Rule;
test('unit request validation rules', function () {
$request = new UnitRequest();
@ -9,7 +10,8 @@ test('unit request validation rules', function () {
[
'name' => [
'required',
'unique:units,name',
Rule::unique('units')
->where('company_id', $request->header('company')),
],
],
$request->rules()

View File

@ -10,9 +10,6 @@ test('update settings request rules', function () {
'settings' => [
'required',
],
'settings.*' => [
'required',
],
],
$request->rules()
);