aboutsummaryrefslogtreecommitdiffstats
path: root/spec/controllers
diff options
context:
space:
mode:
Diffstat (limited to 'spec/controllers')
-rw-r--r--spec/controllers/autocomplete_calendars_controller_spec.rb2
-rw-r--r--spec/controllers/calendars_controller_spec.rb31
2 files changed, 31 insertions, 2 deletions
diff --git a/spec/controllers/autocomplete_calendars_controller_spec.rb b/spec/controllers/autocomplete_calendars_controller_spec.rb
index 3ff75fadf..812cd92f9 100644
--- a/spec/controllers/autocomplete_calendars_controller_spec.rb
+++ b/spec/controllers/autocomplete_calendars_controller_spec.rb
@@ -1,5 +1,3 @@
-require 'rails_helper'
-
RSpec.describe AutocompleteCalendarsController, type: :controller do
end
diff --git a/spec/controllers/calendars_controller_spec.rb b/spec/controllers/calendars_controller_spec.rb
new file mode 100644
index 000000000..ab3123192
--- /dev/null
+++ b/spec/controllers/calendars_controller_spec.rb
@@ -0,0 +1,31 @@
+RSpec.describe CalendarsController, type: :controller do
+ login_user
+ describe 'POST /create' do
+
+ context 'legal date' do
+ let( :params ){ {
+ "calendar"=>{"name"=>"cal", "short_name"=>"cal", "shared"=>"false",
+ "date_values_attributes"=>{"1497892917360"=>{"value(3i)"=>"19", "value(2i)"=>"6", "value(1i)"=>"2017", "_destroy"=>""}}}
+ } }
+
+ it 'creates the calendar and redirects to show' do
+ expect{ post :create, params }.to change{Calendar.count}.by 1
+ expect( response ).to redirect_to( calendar_path( Calendar.last ) )
+ end
+ end
+
+ context 'illegal date' do
+ let( :params ){ {
+ "calendar"=>{"name"=>"cal", "short_name"=>"cal", "shared"=>"false",
+ "date_values_attributes"=>{"1497892917360"=>{"value(3i)"=>"31", "value(2i)"=>"6", "value(1i)"=>"2017", "_destroy"=>""}}}
+ } }
+
+ it 'does not create the calendar and redircets to new' do
+ post :create, params
+ expect{ post :create, params }.not_to change{Calendar.count}
+ expect( response ).to redirect_to( new_calendar_path )
+ end
+ end
+
+ end
+end