From 0caa8ea8ce824f9e36a7a89db2d3b799e9aa260b Mon Sep 17 00:00:00 2001 From: David Bomba Date: Thu, 19 Jan 2023 11:52:07 +1100 Subject: [PATCH] Back fill test for filters --- app/Filters/ExpenseFilters.php | 10 +++++----- app/Filters/ProjectFilters.php | 7 ++----- app/Filters/PurchaseOrderFilters.php | 1 - app/Filters/RecurringExpenseFilters.php | 21 ++++++++------------- app/Filters/RecurringInvoiceFilters.php | 6 ++++-- app/Filters/RecurringQuoteFilters.php | 9 ++++----- app/Filters/SubscriptionFilters.php | 12 ++++-------- app/Filters/SystemLogFilters.php | 5 ++--- app/Filters/TaskFilters.php | 11 +++++------ app/Filters/TaskStatusFilters.php | 7 +++---- app/Filters/TaxRateFilters.php | 5 ++--- app/Filters/TokenFilters.php | 7 ++----- app/Filters/UserFilters.php | 1 - app/Filters/VendorFilters.php | 14 ++++---------- app/Filters/WebhookFilters.php | 14 +++++--------- tests/Feature/CompanyTokenApiTest.php | 13 +++++++++++++ tests/Feature/ProjectApiTest.php | 10 ++++++++++ tests/Feature/QuoteTest.php | 9 +++++++++ tests/Feature/RecurringExpenseApiTest.php | 10 ++++++++++ tests/Feature/RecurringInvoiceTest.php | 11 +++++++++++ tests/Feature/RecurringQuoteTest.php | 11 +++++++++++ tests/Feature/SubscriptionApiTest.php | 11 +++++++++++ tests/Feature/SystemLogApiTest.php | 12 ++++++++++++ tests/Feature/TaskApiTest.php | 11 +++++++++++ tests/Feature/TaskStatusApiTest.php | 10 ++++++++++ tests/Feature/TaxRateApiTest.php | 10 ++++++++++ tests/Feature/VendorApiTest.php | 10 ++++++++++ tests/Feature/WebhookAPITest.php | 10 ++++++++++ 28 files changed, 188 insertions(+), 80 deletions(-) diff --git a/app/Filters/ExpenseFilters.php b/app/Filters/ExpenseFilters.php index cc04fb6bda6e..5eb7b8c43999 100644 --- a/app/Filters/ExpenseFilters.php +++ b/app/Filters/ExpenseFilters.php @@ -32,11 +32,11 @@ class ExpenseFilters extends QueryFilters } return $this->builder->where(function ($query) use ($filter) { - $query->where('expenses.public_notes', 'like', '%'.$filter.'%') - ->orWhere('expenses.custom_value1', 'like', '%'.$filter.'%') - ->orWhere('expenses.custom_value2', 'like', '%'.$filter.'%') - ->orWhere('expenses.custom_value3', 'like', '%'.$filter.'%') - ->orWhere('expenses.custom_value4', 'like', '%'.$filter.'%'); + $query->where('public_notes', 'like', '%'.$filter.'%') + ->orWhere('custom_value1', 'like', '%'.$filter.'%') + ->orWhere('custom_value2', 'like', '%'.$filter.'%') + ->orWhere('custom_value3', 'like', '%'.$filter.'%') + ->orWhere('custom_value4', 'like', '%'.$filter.'%'); }); } diff --git a/app/Filters/ProjectFilters.php b/app/Filters/ProjectFilters.php index e489488b0cd1..030a7be215f3 100644 --- a/app/Filters/ProjectFilters.php +++ b/app/Filters/ProjectFilters.php @@ -11,11 +11,7 @@ namespace App\Filters; -use App\Models\Project; -use App\Models\User; use Illuminate\Database\Eloquent\Builder; -use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Gate; /** * ProjectFilters. @@ -52,7 +48,8 @@ class ProjectFilters extends QueryFilters { $sort_col = explode('|', $sort); - return $this->builder->orderBy($sort_col[0], $sort_col[1]); + if(is_array($sort_col)) + return $this->builder->orderBy($sort_col[0], $sort_col[1]); } /** diff --git a/app/Filters/PurchaseOrderFilters.php b/app/Filters/PurchaseOrderFilters.php index adb019ded898..5c21080da364 100644 --- a/app/Filters/PurchaseOrderFilters.php +++ b/app/Filters/PurchaseOrderFilters.php @@ -12,7 +12,6 @@ namespace App\Filters; use App\Models\PurchaseOrder; -use App\Models\User; use Illuminate\Database\Eloquent\Builder; class PurchaseOrderFilters extends QueryFilters diff --git a/app/Filters/RecurringExpenseFilters.php b/app/Filters/RecurringExpenseFilters.php index bf82facccc70..f7a0872720b3 100644 --- a/app/Filters/RecurringExpenseFilters.php +++ b/app/Filters/RecurringExpenseFilters.php @@ -11,11 +11,7 @@ namespace App\Filters; -use App\Models\RecurringExpense; -use App\Models\User; use Illuminate\Database\Eloquent\Builder; -use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Gate; /** * RecurringExpenseFilters. @@ -29,19 +25,18 @@ class RecurringExpenseFilters extends QueryFilters * @return Builder * @deprecated */ - public function filter(string $filter = '') : Builder + public function filter(string $filter = ''): Builder { if (strlen($filter) == 0) { return $this->builder; } - return $this->builder->where(function ($query) use ($filter) { - $query->where('recurring_expenses.name', 'like', '%'.$filter.'%') - ->orWhere('recurring_expenses.id_number', 'like', '%'.$filter.'%') - ->orWhere('recurring_expenses.custom_value1', 'like', '%'.$filter.'%') - ->orWhere('recurring_expenses.custom_value2', 'like', '%'.$filter.'%') - ->orWhere('recurring_expenses.custom_value3', 'like', '%'.$filter.'%') - ->orWhere('recurring_expenses.custom_value4', 'like', '%'.$filter.'%'); + return $this->builder->where(function ($query) use ($filter) { + $query->where('public_notes', 'like', '%'.$filter.'%') + ->orWhere('custom_value1', 'like', '%'.$filter.'%') + ->orWhere('custom_value2', 'like', '%'.$filter.'%') + ->orWhere('custom_value3', 'like', '%'.$filter.'%') + ->orWhere('custom_value4', 'like', '%'.$filter.'%'); }); } @@ -51,7 +46,7 @@ class RecurringExpenseFilters extends QueryFilters * @param string sort formatted as column|asc * @return Builder */ - public function sort(string $sort) : Builder + public function sort(string $sort): Builder { $sort_col = explode('|', $sort); diff --git a/app/Filters/RecurringInvoiceFilters.php b/app/Filters/RecurringInvoiceFilters.php index dfd0ee60e438..88a0f4ee3c41 100644 --- a/app/Filters/RecurringInvoiceFilters.php +++ b/app/Filters/RecurringInvoiceFilters.php @@ -12,7 +12,6 @@ namespace App\Filters; use App\Models\RecurringInvoice; -use App\Models\User; use Illuminate\Database\Eloquent\Builder; /** @@ -77,7 +76,10 @@ class RecurringInvoiceFilters extends QueryFilters if (in_array('completed', $status_parameters)) $recurring_filters[] = RecurringInvoice::STATUS_COMPLETED; - return $this->builder->whereIn('status_id', $recurring_filters); + if(count($recurring_filters) >= 1) + return $this->builder->whereIn('status_id', $recurring_filters); + + return $this->builder; } diff --git a/app/Filters/RecurringQuoteFilters.php b/app/Filters/RecurringQuoteFilters.php index 3a1879e9ed79..1229ee4c5ae7 100644 --- a/app/Filters/RecurringQuoteFilters.php +++ b/app/Filters/RecurringQuoteFilters.php @@ -11,7 +11,6 @@ namespace App\Filters; -use App\Models\User; use Illuminate\Database\Eloquent\Builder; /** @@ -26,7 +25,7 @@ class RecurringQuoteFilters extends QueryFilters * @return Builder * @deprecated */ - public function filter(string $filter = '') : Builder + public function filter(string $filter = ''): Builder { if (strlen($filter) == 0) { return $this->builder; @@ -46,7 +45,7 @@ class RecurringQuoteFilters extends QueryFilters * @param string sort formatted as column|asc * @return Builder */ - public function sort(string $sort) : Builder + public function sort(string $sort): Builder { $sort_col = explode('|', $sort); @@ -56,9 +55,9 @@ class RecurringQuoteFilters extends QueryFilters /** * Filters the query by the users company ID. * - * @return Illuminate\Database\Query\Builder + * @return Builder */ - public function entityFilter() + public function entityFilter(): Builder { return $this->builder->company(); } diff --git a/app/Filters/SubscriptionFilters.php b/app/Filters/SubscriptionFilters.php index 4ae2e1aec1fb..7c3775291119 100644 --- a/app/Filters/SubscriptionFilters.php +++ b/app/Filters/SubscriptionFilters.php @@ -11,11 +11,7 @@ namespace App\Filters; -use App\Models\User; -use App\Models\Webhook; use Illuminate\Database\Eloquent\Builder; -use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Gate; /** * SubscriptionFilters. @@ -29,7 +25,7 @@ class SubscriptionFilters extends QueryFilters * @return Builder * @deprecated */ - public function filter(string $filter = '') : Builder + public function filter(string $filter = ''): Builder { if (strlen($filter) == 0) { return $this->builder; @@ -46,7 +42,7 @@ class SubscriptionFilters extends QueryFilters * @param string sort formatted as column|asc * @return Builder */ - public function sort(string $sort) : Builder + public function sort(string $sort): Builder { $sort_col = explode('|', $sort); @@ -56,9 +52,9 @@ class SubscriptionFilters extends QueryFilters /** * Filters the query by the users company ID. * - * @return Illuminate\Database\Query\Builder + * @return Builder */ - public function entityFilter() + public function entityFilter(): Builder { return $this->builder->company(); } diff --git a/app/Filters/SystemLogFilters.php b/app/Filters/SystemLogFilters.php index 126c81209955..a7200d6b0911 100644 --- a/app/Filters/SystemLogFilters.php +++ b/app/Filters/SystemLogFilters.php @@ -11,7 +11,6 @@ namespace App\Filters; -use App\Models\User; use Illuminate\Database\Eloquent\Builder; /** @@ -66,9 +65,9 @@ class SystemLogFilters extends QueryFilters /** * Filters the query by the users company ID. * - * @return Illuminate\Database\Query\Builder + * @return Builder */ - public function entityFilter() + public function entityFilter(): Builder { return $this->builder->company(); } diff --git a/app/Filters/TaskFilters.php b/app/Filters/TaskFilters.php index f4a0fb519912..43e77faff141 100644 --- a/app/Filters/TaskFilters.php +++ b/app/Filters/TaskFilters.php @@ -11,7 +11,6 @@ namespace App\Filters; -use App\Models\User; use App\Utils\Traits\MakesHash; use Illuminate\Database\Eloquent\Builder; @@ -29,7 +28,7 @@ class TaskFilters extends QueryFilters * @return Builder * @deprecated */ - public function filter(string $filter = '') : Builder + public function filter(string $filter = ''): Builder { if (strlen($filter) == 0) { return $this->builder; @@ -55,7 +54,7 @@ class TaskFilters extends QueryFilters * @param string client_status The invoice status as seen by the client * @return Builder */ - public function client_status(string $value = '') :Builder + public function client_status(string $value = ''): Builder { if (strlen($value) == 0) { return $this->builder; @@ -90,7 +89,7 @@ class TaskFilters extends QueryFilters * @param string sort formatted as column|asc * @return Builder */ - public function sort(string $sort) : Builder + public function sort(string $sort): Builder { $sort_col = explode('|', $sort); @@ -100,9 +99,9 @@ class TaskFilters extends QueryFilters /** * Filters the query by the users company ID. * - * @return Illuminate\Database\Query\Builder + * @return Builder */ - public function entityFilter() + public function entityFilter(): Builder { return $this->builder->company(); } diff --git a/app/Filters/TaskStatusFilters.php b/app/Filters/TaskStatusFilters.php index d197b764603c..61ecf95b7b1f 100644 --- a/app/Filters/TaskStatusFilters.php +++ b/app/Filters/TaskStatusFilters.php @@ -11,7 +11,6 @@ namespace App\Filters; -use App\Models\User; use Illuminate\Database\Eloquent\Builder; /** @@ -26,7 +25,7 @@ class TaskStatusFilters extends QueryFilters * @return Builder * @deprecated */ - public function filter(string $filter = '') : Builder + public function filter(string $filter = ''): Builder { if (strlen($filter) == 0) { return $this->builder; @@ -53,9 +52,9 @@ class TaskStatusFilters extends QueryFilters /** * Filters the query by the users company ID. * - * @return Illuminate\Database\Query\Builder + * @return Builder */ - public function entityFilter() + public function entityFilter(): Builder { return $this->builder->company(); } diff --git a/app/Filters/TaxRateFilters.php b/app/Filters/TaxRateFilters.php index a161ccec7750..1e838b779ad6 100644 --- a/app/Filters/TaxRateFilters.php +++ b/app/Filters/TaxRateFilters.php @@ -11,7 +11,6 @@ namespace App\Filters; -use App\Models\User; use Illuminate\Database\Eloquent\Builder; /** @@ -53,9 +52,9 @@ class TaxRateFilters extends QueryFilters /** * Filters the query by the users company ID. * - * @return Illuminate\Database\Query\Builder + * @return Builder */ - public function entityFilter() + public function entityFilter(): Builder { return $this->builder->company(); } diff --git a/app/Filters/TokenFilters.php b/app/Filters/TokenFilters.php index ac9507fb4ad9..d4cd948bcb95 100644 --- a/app/Filters/TokenFilters.php +++ b/app/Filters/TokenFilters.php @@ -11,10 +11,7 @@ namespace App\Filters; -use App\Models\User; use Illuminate\Database\Eloquent\Builder; -use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Gate; /** * TokenFilters. @@ -55,9 +52,9 @@ class TokenFilters extends QueryFilters /** * Filters the query by the users company ID. * - * @return Illuminate\Database\Query\Builder + * @return Builder */ - public function entityFilter() + public function entityFilter(): Builder { return $this->builder->company(); } diff --git a/app/Filters/UserFilters.php b/app/Filters/UserFilters.php index 775103f1afa2..986748955228 100644 --- a/app/Filters/UserFilters.php +++ b/app/Filters/UserFilters.php @@ -11,7 +11,6 @@ namespace App\Filters; -use App\Models\User; use Illuminate\Database\Eloquent\Builder; /** diff --git a/app/Filters/VendorFilters.php b/app/Filters/VendorFilters.php index 914025ac0457..f723893cef76 100644 --- a/app/Filters/VendorFilters.php +++ b/app/Filters/VendorFilters.php @@ -11,11 +11,7 @@ namespace App\Filters; -use App\Models\User; -use App\Models\Vendor; use Illuminate\Database\Eloquent\Builder; -use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Gate; /** * VendorFilters. @@ -29,7 +25,7 @@ class VendorFilters extends QueryFilters * @return Builder * @deprecated */ - public function filter(string $filter = '') : Builder + public function filter(string $filter = ''): Builder { if (strlen($filter) == 0) { return $this->builder; @@ -56,7 +52,7 @@ class VendorFilters extends QueryFilters * @param string sort formatted as column|asc * @return Builder */ - public function sort(string $sort) : Builder + public function sort(string $sort): Builder { $sort_col = explode('|', $sort); @@ -66,12 +62,10 @@ class VendorFilters extends QueryFilters /** * Filters the query by the users company ID. * - * @return Illuminate\Database\Query\Builder + * @return Builder */ - public function entityFilter() + public function entityFilter(): Builder { - - //return $this->builder->whereCompanyId(auth()->user()->company()->id); return $this->builder->company(); } } diff --git a/app/Filters/WebhookFilters.php b/app/Filters/WebhookFilters.php index 056b1adf4818..0975efbb5ea7 100644 --- a/app/Filters/WebhookFilters.php +++ b/app/Filters/WebhookFilters.php @@ -11,11 +11,7 @@ namespace App\Filters; -use App\Models\User; -use App\Models\Webhook; use Illuminate\Database\Eloquent\Builder; -use Illuminate\Support\Facades\DB; -use Illuminate\Support\Facades\Gate; /** * TokenFilters. @@ -29,14 +25,14 @@ class WebhookFilters extends QueryFilters * @return Builder * @deprecated */ - public function filter(string $filter = '') : Builder + public function filter(string $filter = ''): Builder { if (strlen($filter) == 0) { return $this->builder; } return $this->builder->where(function ($query) use ($filter) { - $query->where('webhooks.target_url', 'like', '%'.$filter.'%'); + $query->where('target_url', 'like', '%'.$filter.'%'); }); } @@ -46,7 +42,7 @@ class WebhookFilters extends QueryFilters * @param string sort formatted as column|asc * @return Builder */ - public function sort(string $sort) : Builder + public function sort(string $sort): Builder { $sort_col = explode('|', $sort); @@ -56,9 +52,9 @@ class WebhookFilters extends QueryFilters /** * Filters the query by the users company ID. * - * @return Illuminate\Database\Query\Builder + * @return Builder */ - public function entityFilter() + public function entityFilter(): Builder { return $this->builder->company(); } diff --git a/tests/Feature/CompanyTokenApiTest.php b/tests/Feature/CompanyTokenApiTest.php index 4e5c6717665a..bb31a1f9f9f1 100644 --- a/tests/Feature/CompanyTokenApiTest.php +++ b/tests/Feature/CompanyTokenApiTest.php @@ -48,6 +48,19 @@ class CompanyTokenApiTest extends TestCase ); } + public function testCompanyTokenListFilter() + { + $this->withoutMiddleware(PasswordProtection::class); + + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + 'X-API-PASSWORD' => 'ALongAndBriliantPassword', + ])->get('/api/v1/tokens?filter=xx'); + + $response->assertStatus(200); + } + public function testCompanyTokenList() { $this->withoutMiddleware(PasswordProtection::class); diff --git a/tests/Feature/ProjectApiTest.php b/tests/Feature/ProjectApiTest.php index b4d1b237e7f8..f65abaae0dec 100644 --- a/tests/Feature/ProjectApiTest.php +++ b/tests/Feature/ProjectApiTest.php @@ -42,6 +42,16 @@ class ProjectApiTest extends TestCase Model::reguard(); } + public function testProjectGetFilter() + { + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/projects?filter=xx'); + + $response->assertStatus(200); + } + public function testProjectGet() { $response = $this->withHeaders([ diff --git a/tests/Feature/QuoteTest.php b/tests/Feature/QuoteTest.php index a6072ade4f8b..0477a4ce0dff 100644 --- a/tests/Feature/QuoteTest.php +++ b/tests/Feature/QuoteTest.php @@ -50,6 +50,15 @@ class QuoteTest extends TestCase ); } + public function testQuoteListApproved() + { + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/quotes?client_status=approved'); + + $response->assertStatus(200); + } public function testQuoteConvertToProject() diff --git a/tests/Feature/RecurringExpenseApiTest.php b/tests/Feature/RecurringExpenseApiTest.php index 77ff2cc38ff9..e0848ba4901d 100644 --- a/tests/Feature/RecurringExpenseApiTest.php +++ b/tests/Feature/RecurringExpenseApiTest.php @@ -43,6 +43,16 @@ class RecurringExpenseApiTest extends TestCase Model::reguard(); } + public function testRecurringExpenseGetFiltered() + { + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/recurring_expenses?filter=xx'); + + $response->assertStatus(200); + } + public function testRecurringExpenseGet() { $response = $this->withHeaders([ diff --git a/tests/Feature/RecurringInvoiceTest.php b/tests/Feature/RecurringInvoiceTest.php index 61f99b0cd9f3..2bb8cca76937 100644 --- a/tests/Feature/RecurringInvoiceTest.php +++ b/tests/Feature/RecurringInvoiceTest.php @@ -52,6 +52,17 @@ class RecurringInvoiceTest extends TestCase $this->makeTestData(); } + public function testRecurringGetStatus() + { + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/recurring_invoices?client_status=active') + ->assertStatus(200); + + } + + public function testPostRecurringInvoiceWithPlaceholderVariables() { $line_items = []; diff --git a/tests/Feature/RecurringQuoteTest.php b/tests/Feature/RecurringQuoteTest.php index 5c3d98718ae6..3051f0466100 100644 --- a/tests/Feature/RecurringQuoteTest.php +++ b/tests/Feature/RecurringQuoteTest.php @@ -47,6 +47,17 @@ class RecurringQuoteTest extends TestCase $this->makeTestData(); } + public function testRecurringQuoteListFilter() + { + + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/recurring_quotes?filter=xx'); + + $response->assertStatus(200); + } + public function testRecurringQuoteList() { RecurringQuote::factory()->create(['user_id' => $this->user->id, 'company_id' => $this->company->id, 'client_id' => $this->client->id]); diff --git a/tests/Feature/SubscriptionApiTest.php b/tests/Feature/SubscriptionApiTest.php index 86360680e510..46cf797c20e1 100644 --- a/tests/Feature/SubscriptionApiTest.php +++ b/tests/Feature/SubscriptionApiTest.php @@ -50,6 +50,17 @@ class SubscriptionApiTest extends TestCase Model::reguard(); } + public function testSubscriptionFilter() + { + + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/subscriptions?filter=xx') + ->assertStatus(200); + + } + public function testSubscriptionsGet() { $product = Product::factory()->create([ diff --git a/tests/Feature/SystemLogApiTest.php b/tests/Feature/SystemLogApiTest.php index e91970af014f..56985c502a7a 100644 --- a/tests/Feature/SystemLogApiTest.php +++ b/tests/Feature/SystemLogApiTest.php @@ -34,6 +34,18 @@ class SystemLogApiTest extends TestCase $this->makeTestData(); } + + public function testFilters() + { + + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/system_logs?type_id=3') + ->assertStatus(200);; + + } + public function testSystemLogRoutes() { $sl = [ diff --git a/tests/Feature/TaskApiTest.php b/tests/Feature/TaskApiTest.php index 0f4c025232f3..031966083393 100644 --- a/tests/Feature/TaskApiTest.php +++ b/tests/Feature/TaskApiTest.php @@ -44,6 +44,17 @@ class TaskApiTest extends TestCase } + + public function testTaskListClientStatus() + { + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/tasks?client_status=invoiced') + ->assertStatus(200); + + } + public function testTaskLockingGate() { $data = [ diff --git a/tests/Feature/TaskStatusApiTest.php b/tests/Feature/TaskStatusApiTest.php index 2d0e4c83c2bd..4ce96974699c 100644 --- a/tests/Feature/TaskStatusApiTest.php +++ b/tests/Feature/TaskStatusApiTest.php @@ -41,6 +41,16 @@ class TaskStatusApiTest extends TestCase Model::reguard(); } + public function testTaskStatusGetFilter() + { + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/task_statuses?filter=xx'); + + $response->assertStatus(200); + } + public function testTaskStatusPost() { $data = [ diff --git a/tests/Feature/TaxRateApiTest.php b/tests/Feature/TaxRateApiTest.php index cac0c642b1ac..09b39e4e0b8f 100644 --- a/tests/Feature/TaxRateApiTest.php +++ b/tests/Feature/TaxRateApiTest.php @@ -42,6 +42,16 @@ class TaxRateApiTest extends TestCase Model::reguard(); } + public function testTaxRatesGetFilter() + { + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/tax_rates?filter=gst'); + + $response->assertStatus(200); + } + public function testTaxRatePost() { $rate_name = $this->faker->firstName(); diff --git a/tests/Feature/VendorApiTest.php b/tests/Feature/VendorApiTest.php index 38f8b1ccf700..79a8800f0f86 100644 --- a/tests/Feature/VendorApiTest.php +++ b/tests/Feature/VendorApiTest.php @@ -42,6 +42,16 @@ class VendorApiTest extends TestCase Model::reguard(); } + public function testVendorGetFilter() + { + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/vendors?filter=xx'); + + $response->assertStatus(200); + } + public function testAddVendorToInvoice() { $data = [ diff --git a/tests/Feature/WebhookAPITest.php b/tests/Feature/WebhookAPITest.php index a94e194aac4d..69c640a6ae61 100644 --- a/tests/Feature/WebhookAPITest.php +++ b/tests/Feature/WebhookAPITest.php @@ -45,6 +45,16 @@ class WebhookAPITest extends TestCase $this->withoutExceptionHandling(); } + public function testWebhookGetFilter() + { + $response = $this->withHeaders([ + 'X-API-SECRET' => config('ninja.api_secret'), + 'X-API-TOKEN' => $this->token, + ])->get('/api/v1/webhooks?filter=xx'); + + $response->assertStatus(200); + } + public function testWebhookGetRoute() { $response = $this->withHeaders([