()
| 3338 | |
| 3339 | #[test] |
| 3340 | fn test_date_trunc() -> Result<()> { |
| 3341 | let default_dialect: Arc<dyn Dialect> = Arc::new(DefaultDialect {}); |
| 3342 | let sqlite_dialect: Arc<dyn Dialect> = Arc::new(SqliteDialect {}); |
| 3343 | |
| 3344 | for (dialect, precision, expected) in [ |
| 3345 | ( |
| 3346 | Arc::clone(&default_dialect), |
| 3347 | "YEAR", |
| 3348 | "date_trunc('YEAR', date_col)", |
| 3349 | ), |
| 3350 | ( |
| 3351 | Arc::clone(&sqlite_dialect), |
| 3352 | "YEAR", |
| 3353 | "strftime('%Y', `date_col`)", |
| 3354 | ), |
| 3355 | ( |
| 3356 | Arc::clone(&default_dialect), |
| 3357 | "MONTH", |
| 3358 | "date_trunc('MONTH', date_col)", |
| 3359 | ), |
| 3360 | ( |
| 3361 | Arc::clone(&sqlite_dialect), |
| 3362 | "MONTH", |
| 3363 | "strftime('%Y-%m', `date_col`)", |
| 3364 | ), |
| 3365 | ( |
| 3366 | Arc::clone(&default_dialect), |
| 3367 | "DAY", |
| 3368 | "date_trunc('DAY', date_col)", |
| 3369 | ), |
| 3370 | ( |
| 3371 | Arc::clone(&sqlite_dialect), |
| 3372 | "DAY", |
| 3373 | "strftime('%Y-%m-%d', `date_col`)", |
| 3374 | ), |
| 3375 | ( |
| 3376 | Arc::clone(&default_dialect), |
| 3377 | "HOUR", |
| 3378 | "date_trunc('HOUR', date_col)", |
| 3379 | ), |
| 3380 | ( |
| 3381 | Arc::clone(&sqlite_dialect), |
| 3382 | "HOUR", |
| 3383 | "strftime('%Y-%m-%d %H', `date_col`)", |
| 3384 | ), |
| 3385 | ( |
| 3386 | Arc::clone(&default_dialect), |
| 3387 | "MINUTE", |
| 3388 | "date_trunc('MINUTE', date_col)", |
| 3389 | ), |
| 3390 | ( |
| 3391 | Arc::clone(&sqlite_dialect), |
| 3392 | "MINUTE", |
| 3393 | "strftime('%Y-%m-%d %H:%M', `date_col`)", |
| 3394 | ), |
| 3395 | (default_dialect, "SECOND", "date_trunc('SECOND', date_col)"), |
| 3396 | ( |
| 3397 | sqlite_dialect, |
nothing calls this directly
no test coverage detected
searching dependent graphs…