@@ -171,9 +171,6 @@ def test_is_not_injection():
171171
172172
173173def test_allow_escape_sequences ():
174- # Invalid queries :
175- is_not_sql_injection ("SELECT * FROM users WHERE id = 'users\\ '" , "users\\ " )
176-
177174 is_not_sql_injection ("SELECT * FROM users WHERE id = 'users\\ \\ '" , "users\\ \\ " )
178175 is_not_sql_injection ("SELECT * FROM users WHERE id = '\n users'" , "\n users" )
179176 is_not_sql_injection ("SELECT * FROM users WHERE id = '\r users'" , "\r users" )
@@ -212,10 +209,6 @@ def test_check_string_safely_escaped():
212209 is_not_sql_injection (
213210 'SELECT * FROM comments WHERE comment = "I`m writting you"' , "I`m writting you"
214211 )
215- # Invalid query (strings don't terminate)
216- is_not_sql_injection (
217- "SELECT * FROM comments WHERE comment = 'I'm writting you'" , "I'm writting you"
218- )
219212 # Positive example of same query :
220213 is_sql_injection (
221214 "SELECT * FROM comments WHERE comment = 'I'm writting you--'" ,
@@ -393,6 +386,14 @@ def test_lowercased_input_sql_injection():
393386"""
394387
395388
389+ def test_block_invalid_sql_queries ():
390+ # These are invalid queries (e.g. unterminated strings) that fail tokenization
391+ is_sql_injection ("SELECT * FROM users WHERE id = 'users\\ '" , "users\\ " )
392+ is_sql_injection (
393+ "SELECT * FROM comments WHERE comment = 'I'm writting you'" , "I'm writting you"
394+ )
395+
396+
396397def test_function_calls_as_sql_injections ():
397398 is_sql_injection ("foobar()" , "foobar()" )
398399 is_sql_injection ("foobar(1234567)" , "foobar(1234567)" )
0 commit comments