From 1d7db2b6c254ac55105c08ee177580036b0377f3 Mon Sep 17 00:00:00 2001 From: cedricnjanga Date: Thu, 24 Aug 2017 18:02:44 +0200 Subject: Edit VJ to enable shift and to go past midnight (DayOffset) --- spec/javascripts/vehicle_journeys/actions_spec.js | 14 ++++++++------ .../vehicle_journeys/reducers/vehicle_journeys_spec.js | 17 +++++++---------- 2 files changed, 15 insertions(+), 16 deletions(-) (limited to 'spec/javascripts') diff --git a/spec/javascripts/vehicle_journeys/actions_spec.js b/spec/javascripts/vehicle_journeys/actions_spec.js index 52e386deb..707ae22cb 100644 --- a/spec/javascripts/vehicle_journeys/actions_spec.js +++ b/spec/javascripts/vehicle_journeys/actions_spec.js @@ -165,12 +165,12 @@ describe('when updating vjas time', () => { }) describe('when clicking on validate button inside shifting modal', () => { it('should create an action to shift a vehiclejourney schedule', () => { - const data = {} + const addtionalTime = 0 const expectedAction = { type: 'SHIFT_VEHICLEJOURNEY', - data + addtionalTime } - expect(actions.shiftVehicleJourney(data)).toEqual(expectedAction) + expect(actions.shiftVehicleJourney(addtionalTime)).toEqual(expectedAction) }) }) describe('when clicking on validate button inside editing modal', () => { @@ -187,14 +187,16 @@ describe('when clicking on validate button inside editing modal', () => { }) describe('when clicking on validate button inside duplicating modal', () => { it('should create an action to duplicate a vehiclejourney schedule', () => { - const data = {} + const addtionalTime = 0 const departureDelta = 0 + const duplicateNumber = 1 const expectedAction = { type: 'DUPLICATE_VEHICLEJOURNEY', - data, + addtionalTime, + duplicateNumber, departureDelta } - expect(actions.duplicateVehicleJourney(data, departureDelta)).toEqual(expectedAction) + expect(actions.duplicateVehicleJourney(addtionalTime, duplicateNumber, departureDelta)).toEqual(expectedAction) }) }) describe('when clicking on edit notes modal', () => { diff --git a/spec/javascripts/vehicle_journeys/reducers/vehicle_journeys_spec.js b/spec/javascripts/vehicle_journeys/reducers/vehicle_journeys_spec.js index 620e2ffdd..3b2137a2a 100644 --- a/spec/javascripts/vehicle_journeys/reducers/vehicle_journeys_spec.js +++ b/spec/javascripts/vehicle_journeys/reducers/vehicle_journeys_spec.js @@ -198,15 +198,12 @@ describe('vehicleJourneys reducer', () => { }, stop_area_object_id : "FR:92024:ZDE:420553:STIF" }] - let fakeData = { - objectid: {value : '11'}, - additional_time: {value: '5'} - } + let addtionalTime = 5 let newVJ = Object.assign({}, state[0], {vehicle_journey_at_stops: newVJAS}) expect( vjReducer(state, { type: 'SHIFT_VEHICLEJOURNEY', - data: fakeData + addtionalTime }) ).toEqual([newVJ, state[1]]) }) @@ -225,17 +222,17 @@ describe('vehicleJourneys reducer', () => { stop_area_object_id : "FR:92024:ZDE:420553:STIF" }] let departureDelta = 1 - let fakeData = { - duplicate_number: {value : 1}, - additional_time: {value: '5'} - } + let addtionalTime = 5 + let duplicateNumber = 1 + let newVJ = Object.assign({}, state[0], {vehicle_journey_at_stops: newVJAS, selected: false}) newVJ.published_journey_name = state[0].published_journey_name + '-0' delete newVJ['objectid'] expect( vjReducer(state, { type: 'DUPLICATE_VEHICLEJOURNEY', - data: fakeData, + addtionalTime, + duplicateNumber, departureDelta }) ).toEqual([state[0], newVJ, state[1]]) -- cgit v1.2.3 From b240f38d661e6e11428e3f09258ba29bcbf228bb Mon Sep 17 00:00:00 2001 From: cedricnjanga Date: Fri, 25 Aug 2017 16:27:59 +0200 Subject: Clean timetable dates after updating day types --- spec/javascripts/time_table/reducers/timetable_spec.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'spec/javascripts') diff --git a/spec/javascripts/time_table/reducers/timetable_spec.js b/spec/javascripts/time_table/reducers/timetable_spec.js index 805a29b5f..5b3561a5f 100644 --- a/spec/javascripts/time_table/reducers/timetable_spec.js +++ b/spec/javascripts/time_table/reducers/timetable_spec.js @@ -192,6 +192,19 @@ describe('timetable reducer with filled state', () => { ).toEqual(newState) }) + it('should handle UPDATE_DAY_TYPES and remove out_day that are out of day types', () => { + state.time_table_dates = [{date: "2017-05-01", in_out: false}] + let newArrDayTypes = arrDayTypes.slice(0) + newArrDayTypes[1] = false + let newState = Object.assign({}, state, {time_table_dates: []}) + expect( + timetableReducer(state, { + type: 'UPDATE_DAY_TYPES', + dayTypes: newArrDayTypes + }).time_table_dates + ).toEqual([]) + }) + it('should handle VALIDATE_PERIOD_FORM and add period if modalProps index = false', () => { let newPeriods = state.time_table_periods.concat({"period_start": "2018-05-15", "period_end": "2018-05-24"}) let newState = Object.assign({}, state, {time_table_periods: newPeriods}) -- cgit v1.2.3 From 24fdf8c88330a4851b7f17000da9fbe365e54dfd Mon Sep 17 00:00:00 2001 From: cedricnjanga Date: Mon, 28 Aug 2017 18:07:46 +0200 Subject: Timetable validate form update --- spec/javascripts/time_table/actions_spec.js | 6 ++++-- spec/javascripts/time_table/reducers/modal_spec.js | 13 ++++++++----- spec/javascripts/time_table/reducers/timetable_spec.js | 3 ++- 3 files changed, 14 insertions(+), 8 deletions(-) (limited to 'spec/javascripts') diff --git a/spec/javascripts/time_table/actions_spec.js b/spec/javascripts/time_table/actions_spec.js index f32e93327..f052aeece 100644 --- a/spec/javascripts/time_table/actions_spec.js +++ b/spec/javascripts/time_table/actions_spec.js @@ -159,14 +159,16 @@ describe('actions', () => { let timeTablePeriods = [] let metas = {} let timetableInDates = [] + let error = '' const expectedAction = { type: 'VALIDATE_PERIOD_FORM', modalProps, timeTablePeriods, metas, - timetableInDates + timetableInDates, + error } - expect(actions.validatePeriodForm(modalProps, timeTablePeriods, metas, timetableInDates)).toEqual(expectedAction) + expect(actions.validatePeriodForm(modalProps, timeTablePeriods, metas, timetableInDates, error)).toEqual(expectedAction) }) it('should create an action to include date in period', () => { diff --git a/spec/javascripts/time_table/reducers/modal_spec.js b/spec/javascripts/time_table/reducers/modal_spec.js index 160f3955f..570eb85ed 100644 --- a/spec/javascripts/time_table/reducers/modal_spec.js +++ b/spec/javascripts/time_table/reducers/modal_spec.js @@ -154,7 +154,7 @@ describe('modal reducer', () => { error: '' } let newModalProps = { - active: false, + active: true, begin: { day: '01', month: '01', @@ -177,7 +177,8 @@ describe('modal reducer', () => { type: 'VALIDATE_PERIOD_FORM', modalProps : modProps, timeTablePeriods: ttperiods, - timetableInDates: ttdates + timetableInDates: ttdates, + error: 'La date de départ doit être antérieure à la date de fin' }) ).toEqual(Object.assign({}, state, {modalProps: newModalProps})) }) @@ -247,7 +248,8 @@ describe('modal reducer', () => { type: 'VALIDATE_PERIOD_FORM', modalProps : modProps2, timeTablePeriods: ttperiods2, - timetableInDates: ttdates2 + timetableInDates: ttdates2, + error: "Les périodes ne peuvent pas se chevaucher" }) ).toEqual(Object.assign({}, state2, {modalProps: newModalProps2})) }) @@ -273,7 +275,7 @@ describe('modal reducer', () => { type: '' } let modProps3 = { - active: false, + active: true, begin: { day: '01', month: '08', @@ -312,7 +314,8 @@ describe('modal reducer', () => { type: 'VALIDATE_PERIOD_FORM', modalProps : modProps3, timeTablePeriods: ttperiods3, - timetableInDates: ttdates3 + timetableInDates: ttdates3, + error: "Une période ne peut chevaucher une date dans un calendrier" }) ).toEqual(Object.assign({}, state3, {modalProps: newModalProps3})) }) diff --git a/spec/javascripts/time_table/reducers/timetable_spec.js b/spec/javascripts/time_table/reducers/timetable_spec.js index 5b3561a5f..6585a78a0 100644 --- a/spec/javascripts/time_table/reducers/timetable_spec.js +++ b/spec/javascripts/time_table/reducers/timetable_spec.js @@ -231,7 +231,8 @@ describe('timetable reducer with filled state', () => { metas: { day_types: arrDayTypes }, - timetableInDates: state.time_table_dates.filter(d => d.in_out == true) + timetableInDates: state.time_table_dates.filter(d => d.in_out == true), + error: modalProps.error }) ).toEqual(newState) }) -- cgit v1.2.3