<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -22,11 +22,22 @@ module ActiveRecord
       end
     end
 
+    def assert_sql(*patterns_to_match)
+      $queries_executed = []
+      yield
+    ensure
+      failed_patterns = []
+      patterns_to_match.each do |pattern|
+        failed_patterns &lt;&lt; pattern unless $queries_executed.any?{ |sql| pattern === sql }
+      end
+      assert failed_patterns.empty?, &quot;Query pattern(s) #{failed_patterns.map(&amp;:inspect).join(', ')} not found.&quot;
+    end
+
     def assert_queries(num = 1)
-      $query_count = 0
+      $queries_executed = []
       yield
     ensure
-      assert_equal num, $query_count, &quot;#{$query_count} instead of #{num} queries were executed.&quot;
+      assert_equal num, $queries_executed.size, &quot;#{$queries_executed.size} instead of #{num} queries were executed.&quot;
     end
 
     def assert_no_queries(&amp;block)</diff>
      <filename>activerecord/lib/active_record/test_case.rb</filename>
    </modified>
    <modified>
      <diff>@@ -32,13 +32,13 @@ end
 ActiveRecord::Base.connection.class.class_eval do
   IGNORED_SQL = [/^PRAGMA/, /^SELECT currval/, /^SELECT CAST/, /^SELECT @@IDENTITY/, /^SELECT @@ROWCOUNT/]
 
-  def execute_with_counting(sql, name = nil, &amp;block)
-    $query_count ||= 0
-    $query_count  += 1 unless IGNORED_SQL.any? { |r| sql =~ r }
-    execute_without_counting(sql, name, &amp;block)
+  def execute_with_query_record(sql, name = nil, &amp;block)
+    $queries_executed ||= []
+    $queries_executed &lt;&lt; sql unless IGNORED_SQL.any? { |r| sql =~ r }
+    execute_without_query_record(sql, name, &amp;block)
   end
 
-  alias_method_chain :execute, :counting
+  alias_method_chain :execute, :query_record
 end
 
 # Make with_scope public for tests</diff>
      <filename>activerecord/test/cases/helper.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>2d6562d51b96af518c1eb2947d6d34d5dd5bad12</id>
    </parent>
  </parents>
  <author>
    <name>Gabe da Silveira</name>
    <email>gabe@websaviour.com</email>
  </author>
  <url>http://github.com/rails/rails/commit/cd9b24286a90111a08002e0da753198c5fb2432a</url>
  <id>cd9b24286a90111a08002e0da753198c5fb2432a</id>
  <committed-date>2008-07-14T15:22:39-07:00</committed-date>
  <authored-date>2008-06-03T13:50:42-07:00</authored-date>
  <message>Add assert_sql helper method to check for specific SQL output in Active Record test suite. [#325 state:resolved]

Signed-off-by: Pratik Naik &lt;pratiknaik@gmail.com&gt;</message>
  <tree>3edbdc4ddfaa8ea9ba5819e1a31afcd4f3b5ab1f</tree>
  <committer>
    <name>Pratik Naik</name>
    <email>pratiknaik@gmail.com</email>
  </committer>
</commit>
