1+ 'use strict' ;
2+
3+ var Harness = require ( './support' ) ;
4+ var customer = Harness . defineCustomerTable ( ) ;
5+ var Sql = require ( '../../lib' ) ;
6+
7+ Harness . test ( {
8+ query : customer . select ( Sql . functions . YEAR ( customer . metadata ) ) ,
9+ pg : {
10+ text : 'SELECT EXTRACT(YEAR FROM "customer"."metadata") FROM "customer"' ,
11+ string : 'SELECT EXTRACT(YEAR FROM "customer"."metadata") FROM "customer"'
12+ } ,
13+ sqlite : {
14+ text : 'SELECT strftime(\'%Y\', "customer"."metadata") FROM "customer"' ,
15+ string : 'SELECT strftime(\'%Y\', "customer"."metadata") FROM "customer"'
16+ } ,
17+ mysql : {
18+ text : 'SELECT YEAR(`customer`.`metadata`) FROM `customer`' ,
19+ string : 'SELECT YEAR(`customer`.`metadata`) FROM `customer`'
20+ } ,
21+ mssql : {
22+ text : 'SELECT DATEPART(year, [customer].[metadata]) FROM [customer]' ,
23+ string : 'SELECT DATEPART(year, [customer].[metadata]) FROM [customer]'
24+ } ,
25+ oracle : {
26+ text : 'SELECT EXTRACT(YEAR FROM "customer"."metadata") FROM "customer"' ,
27+ string : 'SELECT EXTRACT(YEAR FROM "customer"."metadata") FROM "customer"'
28+ } ,
29+ params : [ ]
30+ } ) ;
31+
32+ Harness . test ( {
33+ query : customer . select ( Sql . functions . MONTH ( customer . metadata ) ) ,
34+ pg : {
35+ text : 'SELECT EXTRACT(MONTH FROM "customer"."metadata") FROM "customer"' ,
36+ string : 'SELECT EXTRACT(MONTH FROM "customer"."metadata") FROM "customer"'
37+ } ,
38+ sqlite : {
39+ text : 'SELECT strftime(\'%m\', "customer"."metadata") FROM "customer"' ,
40+ string : 'SELECT strftime(\'%m\', "customer"."metadata") FROM "customer"'
41+ } ,
42+ mysql : {
43+ text : 'SELECT MONTH(`customer`.`metadata`) FROM `customer`' ,
44+ string : 'SELECT MONTH(`customer`.`metadata`) FROM `customer`'
45+ } ,
46+ mssql : {
47+ text : 'SELECT DATEPART(month, [customer].[metadata]) FROM [customer]' ,
48+ string : 'SELECT DATEPART(month, [customer].[metadata]) FROM [customer]'
49+ } ,
50+ oracle : {
51+ text : 'SELECT EXTRACT(MONTH FROM "customer"."metadata") FROM "customer"' ,
52+ string : 'SELECT EXTRACT(MONTH FROM "customer"."metadata") FROM "customer"'
53+ } ,
54+ params : [ ]
55+ } ) ;
56+
57+ Harness . test ( {
58+ query : customer . select ( Sql . functions . DAY ( customer . metadata ) ) ,
59+ pg : {
60+ text : 'SELECT EXTRACT(DAY FROM "customer"."metadata") FROM "customer"' ,
61+ string : 'SELECT EXTRACT(DAY FROM "customer"."metadata") FROM "customer"'
62+ } ,
63+ sqlite : {
64+ text : 'SELECT strftime(\'%d\', "customer"."metadata") FROM "customer"' ,
65+ string : 'SELECT strftime(\'%d\', "customer"."metadata") FROM "customer"'
66+ } ,
67+ mysql : {
68+ text : 'SELECT DAY(`customer`.`metadata`) FROM `customer`' ,
69+ string : 'SELECT DAY(`customer`.`metadata`) FROM `customer`'
70+ } ,
71+ mssql : {
72+ text : 'SELECT DATEPART(day, [customer].[metadata]) FROM [customer]' ,
73+ string : 'SELECT DATEPART(day, [customer].[metadata]) FROM [customer]'
74+ } ,
75+ oracle : {
76+ text : 'SELECT EXTRACT(DAY FROM "customer"."metadata") FROM "customer"' ,
77+ string : 'SELECT EXTRACT(DAY FROM "customer"."metadata") FROM "customer"'
78+ } ,
79+ params : [ ]
80+ } ) ;
81+
82+ Harness . test ( {
83+ query : customer . select ( Sql . functions . HOUR ( customer . metadata ) ) ,
84+ pg : {
85+ text : 'SELECT EXTRACT(HOUR FROM "customer"."metadata") FROM "customer"' ,
86+ string : 'SELECT EXTRACT(HOUR FROM "customer"."metadata") FROM "customer"'
87+ } ,
88+ sqlite : {
89+ text : 'SELECT strftime(\'%H\', "customer"."metadata") FROM "customer"' ,
90+ string : 'SELECT strftime(\'%H\', "customer"."metadata") FROM "customer"'
91+ } ,
92+ mysql : {
93+ text : 'SELECT HOUR(`customer`.`metadata`) FROM `customer`' ,
94+ string : 'SELECT HOUR(`customer`.`metadata`) FROM `customer`'
95+ } ,
96+ mssql : {
97+ text : 'SELECT DATEPART(hour, [customer].[metadata]) FROM [customer]' ,
98+ string : 'SELECT DATEPART(hour, [customer].[metadata]) FROM [customer]'
99+ } ,
100+ oracle : {
101+ text : 'SELECT EXTRACT(HOUR FROM "customer"."metadata") FROM "customer"' ,
102+ string : 'SELECT EXTRACT(HOUR FROM "customer"."metadata") FROM "customer"'
103+ } ,
104+ params : [ ]
105+ } ) ;
106+
107+ Harness . test ( {
108+ query : customer . select ( Sql . functions . CURRENT_TIMESTAMP ( ) ) ,
109+ pg : {
110+ text : 'SELECT CURRENT_TIMESTAMP FROM "customer"' ,
111+ string : 'SELECT CURRENT_TIMESTAMP FROM "customer"'
112+ } ,
113+ sqlite : {
114+ text : 'SELECT CURRENT_TIMESTAMP FROM "customer"' ,
115+ string : 'SELECT CURRENT_TIMESTAMP FROM "customer"'
116+ } ,
117+ mysql : {
118+ text : 'SELECT CURRENT_TIMESTAMP FROM `customer`' ,
119+ string : 'SELECT CURRENT_TIMESTAMP FROM `customer`'
120+ } ,
121+ mssql : {
122+ text : 'SELECT CURRENT_TIMESTAMP FROM [customer]' ,
123+ string : 'SELECT CURRENT_TIMESTAMP FROM [customer]'
124+ } ,
125+ oracle : {
126+ text : 'SELECT CURRENT_TIMESTAMP FROM "customer"' ,
127+ string : 'SELECT CURRENT_TIMESTAMP FROM "customer"'
128+ } ,
129+ params : [ ]
130+ } ) ;
0 commit comments