mirror of
				https://github.com/invoiceninja/invoiceninja.git
				synced 2025-10-31 11:07:31 -04:00 
			
		
		
		
	Fixes for scheduler validation
This commit is contained in:
		
							parent
							
								
									9e78ead76c
								
							
						
					
					
						commit
						8c84eeaaf8
					
				| @ -62,8 +62,8 @@ class StoreSchedulerRequest extends Request | |||||||
|             'parameters' => 'bail|array', |             'parameters' => 'bail|array', | ||||||
|             'parameters.clients' => ['bail','sometimes', 'array', new ValidClientIds()], |             'parameters.clients' => ['bail','sometimes', 'array', new ValidClientIds()], | ||||||
|             'parameters.date_range' => 'bail|sometimes|string|in:last7_days,last30_days,last365_days,this_month,last_month,this_quarter,last_quarter,this_year,last_year,all_time,custom,all', |             'parameters.date_range' => 'bail|sometimes|string|in:last7_days,last30_days,last365_days,this_month,last_month,this_quarter,last_quarter,this_year,last_year,all_time,custom,all', | ||||||
|             'parameters.start_date' => ['bail', 'date:Y-m-d', 'required_if:parameters.date_rate,custom'], |             'parameters.start_date' => ['bail', 'date:Y-m-d', 'required_if:parameters.date_range,custom'], | ||||||
|             'parameters.end_date' => ['bail', 'date:Y-m-d', 'required_if:parameters.date_rate,custom', 'after_or_equal:parameters.start_date'], |             'parameters.end_date' => ['bail', 'date:Y-m-d', 'required_if:parameters.date_range,custom', 'after_or_equal:parameters.start_date'], | ||||||
|             'parameters.entity' => ['bail', 'sometimes', 'string', 'in:invoice,credit,quote,purchase_order'], |             'parameters.entity' => ['bail', 'sometimes', 'string', 'in:invoice,credit,quote,purchase_order'], | ||||||
|             'parameters.entity_id' => ['bail', 'sometimes', 'string'], |             'parameters.entity_id' => ['bail', 'sometimes', 'string'], | ||||||
|             'parameters.report_name' => ['bail','sometimes', 'string', 'required_if:template,email_report','in:vendor,purchase_order_item,purchase_order,ar_detailed,ar_summary,client_balance,tax_summary,profitloss,client_sales,user_sales,product_sales,activity,activities,client,clients,client_contact,client_contacts,credit,credits,document,documents,expense,expenses,invoice,invoices,invoice_item,invoice_items,quote,quotes,quote_item,quote_items,recurring_invoice,recurring_invoices,payment,payments,product,products,task,tasks'], |             'parameters.report_name' => ['bail','sometimes', 'string', 'required_if:template,email_report','in:vendor,purchase_order_item,purchase_order,ar_detailed,ar_summary,client_balance,tax_summary,profitloss,client_sales,user_sales,product_sales,activity,activities,client,clients,client_contact,client_contacts,credit,credits,document,documents,expense,expenses,invoice,invoices,invoice_item,invoice_items,quote,quotes,quote_item,quote_items,recurring_invoice,recurring_invoices,payment,payments,product,products,task,tasks'], | ||||||
|  | |||||||
| @ -62,8 +62,8 @@ class UpdateSchedulerRequest extends Request | |||||||
|             'parameters' => 'bail|array', |             'parameters' => 'bail|array', | ||||||
|             'parameters.clients' => ['bail','sometimes', 'array', new ValidClientIds()], |             'parameters.clients' => ['bail','sometimes', 'array', new ValidClientIds()], | ||||||
|             'parameters.date_range' => 'bail|sometimes|string|in:last7_days,last30_days,last365_days,this_month,last_month,this_quarter,last_quarter,this_year,last_year,all_time,custom,all', |             'parameters.date_range' => 'bail|sometimes|string|in:last7_days,last30_days,last365_days,this_month,last_month,this_quarter,last_quarter,this_year,last_year,all_time,custom,all', | ||||||
|             'parameters.start_date' => ['bail', 'sometimes', 'date:Y-m-d', 'required_if:parameters.date_rate,custom'], |             'parameters.start_date' => ['bail', 'sometimes', 'date:Y-m-d', 'required_if:parameters.date_range,custom'], | ||||||
|             'parameters.end_date' => ['bail', 'sometimes', 'date:Y-m-d', 'required_if:parameters.date_rate,custom', 'after_or_equal:parameters.start_date'], |             'parameters.end_date' => ['bail', 'sometimes', 'date:Y-m-d', 'required_if:parameters.date_range,custom', 'after_or_equal:parameters.start_date'], | ||||||
|             'parameters.entity' => ['bail', 'sometimes', 'string', 'in:invoice,credit,quote,purchase_order'], |             'parameters.entity' => ['bail', 'sometimes', 'string', 'in:invoice,credit,quote,purchase_order'], | ||||||
|             'parameters.entity_id' => ['bail', 'sometimes', 'string'], |             'parameters.entity_id' => ['bail', 'sometimes', 'string'], | ||||||
|             'parameters.report_name' => ['bail','sometimes', 'string', 'required_if:template,email_report','in:vendor,purchase_order_item,purchase_order,ar_detailed,ar_summary,client_balance,tax_summary,profitloss,client_sales,user_sales,product_sales,activity,activities,client,clients,client_contact,client_contacts,credit,credits,document,documents,expense,expenses,invoice,invoices,invoice_item,invoice_items,quote,quotes,quote_item,quote_items,recurring_invoice,recurring_invoices,payment,payments,product,products,task,tasks'], |             'parameters.report_name' => ['bail','sometimes', 'string', 'required_if:template,email_report','in:vendor,purchase_order_item,purchase_order,ar_detailed,ar_summary,client_balance,tax_summary,profitloss,client_sales,user_sales,product_sales,activity,activities,client,clients,client_contact,client_contacts,credit,credits,document,documents,expense,expenses,invoice,invoices,invoice_item,invoice_items,quote,quotes,quote_item,quote_items,recurring_invoice,recurring_invoices,payment,payments,product,products,task,tasks'], | ||||||
|  | |||||||
| @ -60,6 +60,33 @@ class SchedulerTest extends TestCase | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |     public function testReportValidationRulesForStartAndEndDate() | ||||||
|  |     { | ||||||
|  |         $data = [ | ||||||
|  |             'name' => 'A test product sales scheduler', | ||||||
|  |             'frequency_id' => RecurringInvoice::FREQUENCY_MONTHLY, | ||||||
|  |             'next_run' => now()->format('Y-m-d'), | ||||||
|  |             'template' => 'email_statement', | ||||||
|  |             'parameters' => [ | ||||||
|  |                 'date_range' => 'custom', | ||||||
|  |                 'clients' => [], | ||||||
|  |                 'report_keys' => [], | ||||||
|  |                 'client_id' => $this->client->hashed_id, | ||||||
|  |             ], | ||||||
|  | 
 | ||||||
|  |         ]; | ||||||
|  | 
 | ||||||
|  |         $response = false; | ||||||
|  | 
 | ||||||
|  |         $response = $this->withHeaders([ | ||||||
|  |                 'X-API-SECRET' => config('ninja.api_secret'), | ||||||
|  |                 'X-API-TOKEN' => $this->token, | ||||||
|  |             ])->postJson('/api/v1/task_schedulers', $data); | ||||||
|  | 
 | ||||||
|  |         $response->assertStatus(422); | ||||||
|  | 
 | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     public function testReportValidationRules() |     public function testReportValidationRules() | ||||||
|     { |     { | ||||||
|         $data = [ |         $data = [ | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user