@@ -10,24 +10,7 @@ def assert_queries_count(count = nil, include_schema: false, &block)
10
10
queries = include_schema ? counter . log_all : counter . log
11
11
12
12
# Start of monkey-patch
13
- # Rails tests expect a save-point to be created and released. SQL Server does not release
14
- # save-points and so the number of queries will be off. This monkey patch adds a placeholder queries
15
- # to replace the missing save-point releases.
16
- grouped_queries = [ [ ] ]
17
-
18
- queries . each do |query |
19
- if query =~ /SAVE TRANSACTION \S +/
20
- grouped_queries << [ query ]
21
- else
22
- grouped_queries . last << query
23
- end
24
- end
25
-
26
- grouped_queries . each do |group |
27
- group . append "/* release savepoint placeholder for testing */" if group . first =~ /SAVE TRANSACTION \S +/
28
- end
29
-
30
- queries = grouped_queries . flatten
13
+ queries = include_release_savepoint_placeholder_queries ( queries )
31
14
# End of monkey-patch
32
15
33
16
if count
@@ -38,6 +21,29 @@ def assert_queries_count(count = nil, include_schema: false, &block)
38
21
result
39
22
end
40
23
end
24
+
25
+ private
26
+
27
+ # Rails tests expect a save-point to be created and released. SQL Server does not release
28
+ # save-points and so the number of queries will be off. This monkey patch adds a placeholder queries
29
+ # to replace the missing save-point releases.
30
+ def include_release_savepoint_placeholder_queries ( queries )
31
+ grouped_queries = [ [ ] ]
32
+
33
+ queries . each do |query |
34
+ if query =~ /SAVE TRANSACTION \S +/
35
+ grouped_queries << [ query ]
36
+ else
37
+ grouped_queries . last << query
38
+ end
39
+ end
40
+
41
+ grouped_queries . each do |group |
42
+ group . append "/* release savepoint placeholder for testing */" if group . first =~ /SAVE TRANSACTION \S +/
43
+ end
44
+
45
+ grouped_queries . flatten
46
+ end
41
47
end
42
48
end
43
49
end
0 commit comments