Skip to content

Commit 5a0622e

Browse files
committed
Tests for FTS5Pattern.init(rawPattern:allowedColumns:)
1 parent 596db46 commit 5a0622e

File tree

1 file changed

+18
-3
lines changed

1 file changed

+18
-3
lines changed

Tests/GRDBTests/FTS5PatternTests.swift

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,16 @@ class FTS5PatternTests: GRDBTestCase {
4343
("title:brest", 1)
4444
]
4545
for (rawPattern, expectedCount) in validRawPatterns {
46-
let pattern = try db.makeFTS5Pattern(rawPattern: rawPattern, forTable: "books")
47-
let count = try Int.fetchOne(db, sql: "SELECT COUNT(*) FROM books WHERE books MATCH ?", arguments: [pattern])!
48-
XCTAssertEqual(count, expectedCount, "Expected pattern \(String(reflecting: rawPattern)) to yield \(expectedCount) results")
46+
do {
47+
let pattern = try FTS5Pattern(rawPattern: rawPattern, allowedColumns: ["title"])
48+
let count = try Int.fetchOne(db, sql: "SELECT COUNT(*) FROM books WHERE books MATCH ?", arguments: [pattern])!
49+
XCTAssertEqual(count, expectedCount, "Expected pattern \(String(reflecting: rawPattern)) to yield \(expectedCount) results")
50+
}
51+
do {
52+
let pattern = try db.makeFTS5Pattern(rawPattern: rawPattern, forTable: "books")
53+
let count = try Int.fetchOne(db, sql: "SELECT COUNT(*) FROM books WHERE books MATCH ?", arguments: [pattern])!
54+
XCTAssertEqual(count, expectedCount, "Expected pattern \(String(reflecting: rawPattern)) to yield \(expectedCount) results")
55+
}
4956
}
5057
}
5158
}
@@ -55,6 +62,14 @@ class FTS5PatternTests: GRDBTestCase {
5562
dbQueue.inDatabase { db in
5663
let invalidRawPatterns = ["", "?!", "^", "NOT", "(", "AND", "OR", "\"", "missing:foo"]
5764
for rawPattern in invalidRawPatterns {
65+
do {
66+
_ = try FTS5Pattern(rawPattern: rawPattern, allowedColumns: ["title"])
67+
XCTFail("Expected pattern to be invalid: \(String(reflecting: rawPattern))")
68+
} catch is DatabaseError {
69+
} catch {
70+
XCTFail("Expected DatabaseError, not \(error)")
71+
}
72+
5873
do {
5974
_ = try db.makeFTS5Pattern(rawPattern: rawPattern, forTable: "books")
6075
XCTFail("Expected pattern to be invalid: \(String(reflecting: rawPattern))")

0 commit comments

Comments
 (0)