@@ -5,46 +5,60 @@ var interval = require('./')
5
5
const PostgresInterval = require ( './' )
6
6
7
7
test ( function ( t ) {
8
- t . equal ( Object . assign ( interval ( ) , { milliseconds : 1000 } ) . toPostgres ( ) , '1 seconds' )
9
- t . deepEqual ( interval ( '01:02:03.456' ) , Object . assign ( new PostgresInterval ( ) , {
10
- hours : 1 ,
11
- minutes : 2 ,
12
- seconds : 3 ,
13
- milliseconds : 456
14
- } ) )
15
- t . deepEqual ( interval ( '-01:02:03.456' ) , Object . assign ( new PostgresInterval ( ) , {
16
- hours : - 1 ,
17
- minutes : - 2 ,
18
- seconds : - 3 ,
19
- milliseconds : - 456
20
- } ) )
21
- t . equal ( interval ( '01:02:03' ) . toPostgres ( ) , '3 seconds 2 minutes 1 hours' )
22
- t . equal ( interval ( '100:02:03' ) . toPostgres ( ) , '3 seconds 2 minutes 100 hours' )
23
- t . equal ( interval ( '1 year -32 days' ) . toPostgres ( ) , '-32 days 1 years' )
24
- t . equal ( interval ( '1 day -00:00:03' ) . toPostgres ( ) , '-3 seconds 1 days' )
25
- t . equal ( interval ( '00:00:00' ) . toPostgres ( ) , '0' )
26
- t . equal ( interval ( '00:00:00-5' ) . milliseconds , undefined , 'invalid interval format' )
27
- t . equal ( interval ( '00:00:00.5' ) . milliseconds , 500 )
28
- t . equal ( interval ( '00:00:00.50' ) . milliseconds , 500 )
29
- t . equal ( interval ( '00:00:00.500' ) . milliseconds , 500 )
30
- t . equal ( interval ( '00:00:00.5000' ) . milliseconds , 500 )
31
- t . equal ( interval ( '00:00:01.100' ) . toPostgres ( ) , '1.1 seconds' )
32
- t . equal ( interval ( '00:00:00.5' ) . toPostgres ( ) , '0.5 seconds' )
33
- t . equal ( interval ( '00:00:00.100500' ) . milliseconds , 100.5 )
34
- t . equal ( interval ( '00:00:00.100500' ) . toPostgres ( ) , '0.1005 seconds' )
35
- t . equal ( interval ( '00:00:00.123456' ) . toPostgres ( ) , '0.123456 seconds' )
36
- t . equal ( interval ( '-00:00:00.123456' ) . toPostgres ( ) , '-0.123456 seconds' )
37
- // toISOString tests
38
- t . equal ( interval ( '01:02:03' ) . toISOString ( ) , 'P0Y0M0DT1H2M3S' )
39
- t . equal ( interval ( '100:02:03' ) . toISOString ( ) , 'P0Y0M0DT100H2M3S' )
40
- t . equal ( interval ( '1 year -32 days' ) . toISOString ( ) , 'P1Y0M-32DT0H0M0S' )
41
- t . equal ( interval ( '1 day -00:00:03' ) . toISOString ( ) , 'P0Y0M1DT0H0M-3S' )
42
- t . equal ( interval ( '00:00:00' ) . toISOString ( ) , 'P0Y0M0DT0H0M0S' )
43
- t . equal ( interval ( '00:00:01.100' ) . toISOString ( ) , 'P0Y0M0DT0H0M1.1S' )
44
- t . equal ( interval ( '00:00:00.5' ) . toISOString ( ) , 'P0Y0M0DT0H0M0.5S' )
45
- t . equal ( interval ( '00:00:00.100500' ) . toISOString ( ) , 'P0Y0M0DT0H0M0.1005S' )
46
- t . equal ( interval ( '00:00:00.123456' ) . toISOString ( ) , 'P0Y0M0DT0H0M0.123456S' )
47
- t . equal ( interval ( '-00:00:00.123456' ) . toISOString ( ) , 'P0Y0M0DT0H0M-0.123456S' )
48
- t . equal ( interval ( '-00:00:00.123456' ) . toISO ( ) , 'P0Y0M0DT0H0M-0.123456S' )
8
+ t . test ( 'parser' , function ( t ) {
9
+ t . equal ( Object . assign ( interval ( ) , { milliseconds : 1000 } ) . toPostgres ( ) , '1 seconds' )
10
+ t . deepEqual ( interval ( '01:02:03.456' ) , Object . assign ( new PostgresInterval ( ) , {
11
+ hours : 1 ,
12
+ minutes : 2 ,
13
+ seconds : 3 ,
14
+ milliseconds : 456
15
+ } ) )
16
+ t . deepEqual ( interval ( '-01:02:03.456' ) , Object . assign ( new PostgresInterval ( ) , {
17
+ hours : - 1 ,
18
+ minutes : - 2 ,
19
+ seconds : - 3 ,
20
+ milliseconds : - 456
21
+ } ) )
22
+
23
+ t . equal ( interval ( '00:00:00-5' ) . milliseconds , undefined , 'invalid interval format' )
24
+ t . equal ( interval ( '00:00:00.5' ) . milliseconds , 500 )
25
+ t . equal ( interval ( '00:00:00.50' ) . milliseconds , 500 )
26
+ t . equal ( interval ( '00:00:00.500' ) . milliseconds , 500 )
27
+ t . equal ( interval ( '00:00:00.5000' ) . milliseconds , 500 )
28
+ t . equal ( interval ( '00:00:00.100500' ) . milliseconds , 100.5 )
29
+
30
+ t . end ( )
31
+ } )
32
+
33
+ t . test ( 'toPostgres' , function ( t ) {
34
+ t . equal ( interval ( '01:02:03' ) . toPostgres ( ) , '3 seconds 2 minutes 1 hours' )
35
+ t . equal ( interval ( '100:02:03' ) . toPostgres ( ) , '3 seconds 2 minutes 100 hours' )
36
+ t . equal ( interval ( '1 year -32 days' ) . toPostgres ( ) , '-32 days 1 years' )
37
+ t . equal ( interval ( '1 day -00:00:03' ) . toPostgres ( ) , '-3 seconds 1 days' )
38
+ t . equal ( interval ( '00:00:00' ) . toPostgres ( ) , '0' )
39
+ t . equal ( interval ( '00:00:01.100' ) . toPostgres ( ) , '1.1 seconds' )
40
+ t . equal ( interval ( '00:00:00.5' ) . toPostgres ( ) , '0.5 seconds' )
41
+ t . equal ( interval ( '00:00:00.100500' ) . toPostgres ( ) , '0.1005 seconds' )
42
+ t . equal ( interval ( '00:00:00.123456' ) . toPostgres ( ) , '0.123456 seconds' )
43
+ t . equal ( interval ( '-00:00:00.123456' ) . toPostgres ( ) , '-0.123456 seconds' )
44
+
45
+ t . end ( )
46
+ } )
47
+
48
+ t . test ( 'toISOString' , function ( t ) {
49
+ t . equal ( interval ( '01:02:03' ) . toISOString ( ) , 'P0Y0M0DT1H2M3S' )
50
+ t . equal ( interval ( '100:02:03' ) . toISOString ( ) , 'P0Y0M0DT100H2M3S' )
51
+ t . equal ( interval ( '1 year -32 days' ) . toISOString ( ) , 'P1Y0M-32DT0H0M0S' )
52
+ t . equal ( interval ( '1 day -00:00:03' ) . toISOString ( ) , 'P0Y0M1DT0H0M-3S' )
53
+ t . equal ( interval ( '00:00:00' ) . toISOString ( ) , 'P0Y0M0DT0H0M0S' )
54
+ t . equal ( interval ( '00:00:01.100' ) . toISOString ( ) , 'P0Y0M0DT0H0M1.1S' )
55
+ t . equal ( interval ( '00:00:00.5' ) . toISOString ( ) , 'P0Y0M0DT0H0M0.5S' )
56
+ t . equal ( interval ( '00:00:00.100500' ) . toISOString ( ) , 'P0Y0M0DT0H0M0.1005S' )
57
+ t . equal ( interval ( '00:00:00.123456' ) . toISOString ( ) , 'P0Y0M0DT0H0M0.123456S' )
58
+ t . equal ( interval ( '-00:00:00.123456' ) . toISOString ( ) , 'P0Y0M0DT0H0M-0.123456S' )
59
+ t . equal ( interval ( '-00:00:00.123456' ) . toISO ( ) , 'P0Y0M0DT0H0M-0.123456S' )
60
+ t . end ( )
61
+ } )
62
+
49
63
t . end ( )
50
64
} )
0 commit comments