@@ -1247,19 +1247,36 @@ describe('Picker.Range', () => {
12471247 expect ( wrapper . isOpen ( ) ) . toBeFalsy ( ) ;
12481248 } ) ;
12491249
1250- it ( 'valued: start -> end -> close' , ( ) => {
1251- const wrapper = mount (
1252- < MomentRangePicker defaultValue = { [ getMoment ( '1989-01-01' ) , getMoment ( '1990-01-01' ) ] } /> ,
1253- ) ;
1250+ describe ( 'valued: start -> end -> close' , ( ) => {
1251+ it ( 'in range' , ( ) => {
1252+ const wrapper = mount (
1253+ < MomentRangePicker defaultValue = { [ getMoment ( '1989-01-01' ) , getMoment ( '1990-01-01' ) ] } /> ,
1254+ ) ;
12541255
1255- wrapper . openPicker ( 0 ) ;
1256- wrapper . inputValue ( '1990-11-28' ) ;
1257- wrapper . closePicker ( 0 ) ;
1258- expect ( wrapper . isOpen ( ) ) . toBeTruthy ( ) ;
1256+ wrapper . openPicker ( 0 ) ;
1257+ wrapper . inputValue ( '1990-11-28' ) ;
1258+ wrapper . closePicker ( 0 ) ;
1259+ expect ( wrapper . isOpen ( ) ) . toBeTruthy ( ) ;
12591260
1260- wrapper . inputValue ( '1990-12-23' ) ;
1261- wrapper . closePicker ( 1 ) ;
1262- expect ( wrapper . isOpen ( ) ) . toBeFalsy ( ) ;
1261+ wrapper . inputValue ( '1990-12-23' ) ;
1262+ wrapper . closePicker ( 1 ) ;
1263+ expect ( wrapper . isOpen ( ) ) . toBeFalsy ( ) ;
1264+ } ) ;
1265+
1266+ it ( 'new start is after end' , ( ) => {
1267+ const wrapper = mount (
1268+ < MomentRangePicker defaultValue = { [ getMoment ( '1989-01-10' ) , getMoment ( '1989-01-15' ) ] } /> ,
1269+ ) ;
1270+
1271+ wrapper . openPicker ( 0 ) ;
1272+ wrapper . inputValue ( '1989-01-20' ) ;
1273+ wrapper . closePicker ( 0 ) ;
1274+ expect ( wrapper . isOpen ( ) ) . toBeTruthy ( ) ;
1275+
1276+ wrapper . inputValue ( '1989-01-25' ) ;
1277+ wrapper . closePicker ( 1 ) ;
1278+ expect ( wrapper . isOpen ( ) ) . toBeFalsy ( ) ;
1279+ } ) ;
12631280 } ) ;
12641281
12651282 it ( 'empty: end -> start -> close' , ( ) => {
@@ -1275,19 +1292,36 @@ describe('Picker.Range', () => {
12751292 expect ( wrapper . isOpen ( ) ) . toBeFalsy ( ) ;
12761293 } ) ;
12771294
1278- it ( 'valued: end -> start -> close' , ( ) => {
1279- const wrapper = mount (
1280- < MomentRangePicker defaultValue = { [ getMoment ( '1989-01-01' ) , getMoment ( '1990-01-01' ) ] } /> ,
1281- ) ;
1295+ describe ( 'valued: end -> start -> close' , ( ) => {
1296+ it ( 'in range' , ( ) => {
1297+ const wrapper = mount (
1298+ < MomentRangePicker defaultValue = { [ getMoment ( '1989-01-01' ) , getMoment ( '1990-01-01' ) ] } /> ,
1299+ ) ;
12821300
1283- wrapper . openPicker ( 1 ) ;
1284- wrapper . inputValue ( '1990-11-28' , 1 ) ;
1285- wrapper . closePicker ( 1 ) ;
1286- expect ( wrapper . isOpen ( ) ) . toBeTruthy ( ) ;
1301+ wrapper . openPicker ( 1 ) ;
1302+ wrapper . inputValue ( '1990-11-28' , 1 ) ;
1303+ wrapper . closePicker ( 1 ) ;
1304+ expect ( wrapper . isOpen ( ) ) . toBeTruthy ( ) ;
12871305
1288- wrapper . inputValue ( '1989-01-01' ) ;
1289- wrapper . closePicker ( 0 ) ;
1290- expect ( wrapper . isOpen ( ) ) . toBeFalsy ( ) ;
1306+ wrapper . inputValue ( '1989-01-01' ) ;
1307+ wrapper . closePicker ( 0 ) ;
1308+ expect ( wrapper . isOpen ( ) ) . toBeFalsy ( ) ;
1309+ } ) ;
1310+
1311+ it ( 'new end is before start' , ( ) => {
1312+ const wrapper = mount (
1313+ < MomentRangePicker defaultValue = { [ getMoment ( '1989-01-10' ) , getMoment ( '1989-01-15' ) ] } /> ,
1314+ ) ;
1315+
1316+ wrapper . openPicker ( 1 ) ;
1317+ wrapper . inputValue ( '1989-01-07' , 1 ) ;
1318+ wrapper . closePicker ( 1 ) ;
1319+ expect ( wrapper . isOpen ( ) ) . toBeTruthy ( ) ;
1320+
1321+ wrapper . inputValue ( '1989-01-01' ) ;
1322+ wrapper . closePicker ( 0 ) ;
1323+ expect ( wrapper . isOpen ( ) ) . toBeFalsy ( ) ;
1324+ } ) ;
12911325 } ) ;
12921326
12931327 it ( 'not change: start not to end' , ( ) => {
0 commit comments