Skip to content

Commit

Permalink
test(cubesql): Test for explicit members in a simple wrapper with cast
Browse files Browse the repository at this point in the history
  • Loading branch information
mcheshkov committed Jan 29, 2025
1 parent 92a4b8e commit c0065a7
Showing 1 changed file with 38 additions and 0 deletions.
38 changes: 38 additions & 0 deletions rust/cubesql/cubesql/src/compile/test/test_wrapper.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1417,3 +1417,41 @@ async fn wrapper_agg_dimension_over_limit() {
.sql
.contains("\"ungrouped\": true"));
}

/// Simple wrapper with cast should have explicit members, not zero
#[tokio::test]
async fn wrapper_cast_explicit_members() {
if !Rewriter::sql_push_down_enabled() {
return;
}
init_testing_logger();

let query_plan = convert_select_to_query_plan(
// language=PostgreSQL
r#"
SELECT
CAST(dim_date0 AS DATE) AS "dim_date0"
FROM
MultiTypeCube
LIMIT 10
;
"#
.to_string(),
DatabaseProtocol::PostgreSQL,
)
.await;

let physical_plan = query_plan.as_physical_plan().await.unwrap();
println!(
"Physical plan: {}",
displayable(physical_plan.as_ref()).indent()
);

// Query should mention just a single member
let request = query_plan
.as_logical_plan()
.find_cube_scan_wrapped_sql()
.request;
assert_eq!(request.measures.unwrap().len(), 1);
assert_eq!(request.dimensions.unwrap().len(), 0);
}

0 comments on commit c0065a7

Please sign in to comment.