aboutsummaryrefslogtreecommitdiffstats
path: root/spec
diff options
context:
space:
mode:
authorLuc Donnet2018-02-06 11:20:16 +0100
committerGitHub2018-02-06 11:20:16 +0100
commit7d1c680a97965ae21405cb2fe8564e823d6b01ef (patch)
tree91a6051bfee78c9f2ff9b351ee4b5c8815a3a19b /spec
parent40bbdede46769b9c2ae3ea38410614286322b5b2 (diff)
parenta192d4736028b535a1030c0f506597845a3bc4a4 (diff)
downloadchouette-core-7d1c680a97965ae21405cb2fe8564e823d6b01ef.tar.bz2
Merge pull request #279 from af83/5835-fix-timetable-creation
5835 Timetables inherit application days from calendars
Diffstat (limited to 'spec')
-rw-r--r--spec/controllers/time_tables_controller_spec.rb29
1 files changed, 29 insertions, 0 deletions
diff --git a/spec/controllers/time_tables_controller_spec.rb b/spec/controllers/time_tables_controller_spec.rb
new file mode 100644
index 000000000..85f2c10e4
--- /dev/null
+++ b/spec/controllers/time_tables_controller_spec.rb
@@ -0,0 +1,29 @@
+RSpec.describe TimeTablesController, :type => :controller do
+ login_user
+
+ describe 'POST create' do
+ let(:request){ post :create, referential_id: referential.id, time_table: time_table_params }
+ let(:time_table_params){{comment: "test"}}
+
+ it "should create a timetable" do
+ expect{request}.to change{ Chouette::TimeTable.count }.by 1
+ expect(Chouette::TimeTable.last.comment).to eq "test"
+ %i(monday tuesday wednesday thursday friday saturday sunday).each do |d|
+ expect(Chouette::TimeTable.last.send(d)).to be_falsy
+ end
+ end
+
+ context "when given a calendar" do
+ let(:calendar){ create :calendar, int_day_types: Calendar::MONDAY | Calendar::SUNDAY }
+ let(:time_table_params){{comment: "test", calendar_id: calendar.id}}
+ it "should create a timetable" do
+ expect{request}.to change{ Chouette::TimeTable.count }.by 1
+ expect(Chouette::TimeTable.last.comment).to eq "test"
+ expect(Chouette::TimeTable.last.calendar).to eq calendar
+ %i(monday tuesday wednesday thursday friday saturday sunday).each do |d|
+ expect(Chouette::TimeTable.last.send(d)).to eq calendar.send(d)
+ end
+ end
+ end
+ end
+end