Skip to content

Commit c1509b3

Browse files
committed
Use FETCH_FIRST_TWO_ROWS_ONLY in tests to reduce duplication
1 parent f87e8d5 commit c1509b3

File tree

1 file changed

+13
-64
lines changed

1 file changed

+13
-64
lines changed

tests/sqlparser_common.rs

Lines changed: 13 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -2206,15 +2206,13 @@ fn parse_singular_row_offset() {
22062206

22072207
#[test]
22082208
fn parse_fetch() {
2209+
const FETCH_FIRST_TWO_ROWS_ONLY: Fetch = Fetch {
2210+
with_ties: false,
2211+
percent: false,
2212+
quantity: Some(ASTNode::SQLValue(Value::Long(2))),
2213+
};
22092214
let ast = verified_query("SELECT foo FROM bar FETCH FIRST 2 ROWS ONLY");
2210-
assert_eq!(
2211-
ast.fetch,
2212-
Some(Fetch {
2213-
with_ties: false,
2214-
percent: false,
2215-
quantity: Some(ASTNode::SQLValue(Value::Long(2))),
2216-
})
2217-
);
2215+
assert_eq!(ast.fetch, Some(FETCH_FIRST_TWO_ROWS_ONLY));
22182216
let ast = verified_query("SELECT foo FROM bar FETCH FIRST ROWS ONLY");
22192217
assert_eq!(
22202218
ast.fetch,
@@ -2225,23 +2223,9 @@ fn parse_fetch() {
22252223
})
22262224
);
22272225
let ast = verified_query("SELECT foo FROM bar WHERE foo = 4 FETCH FIRST 2 ROWS ONLY");
2228-
assert_eq!(
2229-
ast.fetch,
2230-
Some(Fetch {
2231-
with_ties: false,
2232-
percent: false,
2233-
quantity: Some(ASTNode::SQLValue(Value::Long(2))),
2234-
})
2235-
);
2226+
assert_eq!(ast.fetch, Some(FETCH_FIRST_TWO_ROWS_ONLY));
22362227
let ast = verified_query("SELECT foo FROM bar ORDER BY baz FETCH FIRST 2 ROWS ONLY");
2237-
assert_eq!(
2238-
ast.fetch,
2239-
Some(Fetch {
2240-
with_ties: false,
2241-
percent: false,
2242-
quantity: Some(ASTNode::SQLValue(Value::Long(2))),
2243-
})
2244-
);
2228+
assert_eq!(ast.fetch, Some(FETCH_FIRST_TWO_ROWS_ONLY));
22452229
let ast = verified_query(
22462230
"SELECT foo FROM bar WHERE foo = 4 ORDER BY baz FETCH FIRST 2 ROWS WITH TIES",
22472231
);
@@ -2266,63 +2250,28 @@ fn parse_fetch() {
22662250
"SELECT foo FROM bar WHERE foo = 4 ORDER BY baz OFFSET 2 ROWS FETCH FIRST 2 ROWS ONLY",
22672251
);
22682252
assert_eq!(ast.offset, Some(ASTNode::SQLValue(Value::Long(2))));
2269-
assert_eq!(
2270-
ast.fetch,
2271-
Some(Fetch {
2272-
with_ties: false,
2273-
percent: false,
2274-
quantity: Some(ASTNode::SQLValue(Value::Long(2))),
2275-
})
2276-
);
2253+
assert_eq!(ast.fetch, Some(FETCH_FIRST_TWO_ROWS_ONLY));
22772254
let ast = verified_query(
22782255
"SELECT foo FROM (SELECT * FROM bar FETCH FIRST 2 ROWS ONLY) FETCH FIRST 2 ROWS ONLY",
22792256
);
2280-
assert_eq!(
2281-
ast.fetch,
2282-
Some(Fetch {
2283-
with_ties: false,
2284-
percent: false,
2285-
quantity: Some(ASTNode::SQLValue(Value::Long(2))),
2286-
})
2287-
);
2257+
assert_eq!(ast.fetch, Some(FETCH_FIRST_TWO_ROWS_ONLY));
22882258
match ast.body {
22892259
SQLSetExpr::Select(s) => match only(s.from).relation {
22902260
TableFactor::Derived { subquery, .. } => {
2291-
assert_eq!(
2292-
subquery.fetch,
2293-
Some(Fetch {
2294-
with_ties: false,
2295-
percent: false,
2296-
quantity: Some(ASTNode::SQLValue(Value::Long(2))),
2297-
})
2298-
);
2261+
assert_eq!(subquery.fetch, Some(FETCH_FIRST_TWO_ROWS_ONLY));
22992262
}
23002263
_ => panic!("Test broke"),
23012264
},
23022265
_ => panic!("Test broke"),
23032266
}
23042267
let ast = verified_query("SELECT foo FROM (SELECT * FROM bar OFFSET 2 ROWS FETCH FIRST 2 ROWS ONLY) OFFSET 2 ROWS FETCH FIRST 2 ROWS ONLY");
23052268
assert_eq!(ast.offset, Some(ASTNode::SQLValue(Value::Long(2))));
2306-
assert_eq!(
2307-
ast.fetch,
2308-
Some(Fetch {
2309-
with_ties: false,
2310-
percent: false,
2311-
quantity: Some(ASTNode::SQLValue(Value::Long(2))),
2312-
})
2313-
);
2269+
assert_eq!(ast.fetch, Some(FETCH_FIRST_TWO_ROWS_ONLY));
23142270
match ast.body {
23152271
SQLSetExpr::Select(s) => match only(s.from).relation {
23162272
TableFactor::Derived { subquery, .. } => {
23172273
assert_eq!(subquery.offset, Some(ASTNode::SQLValue(Value::Long(2))));
2318-
assert_eq!(
2319-
subquery.fetch,
2320-
Some(Fetch {
2321-
with_ties: false,
2322-
percent: false,
2323-
quantity: Some(ASTNode::SQLValue(Value::Long(2))),
2324-
})
2325-
);
2274+
assert_eq!(subquery.fetch, Some(FETCH_FIRST_TWO_ROWS_ONLY));
23262275
}
23272276
_ => panic!("Test broke"),
23282277
},

0 commit comments

Comments
 (0)