5614: Use assert_includes more in Workbench tests for better diagnostics.
[arvados.git] / apps / workbench / test / controllers / actions_controller_test.rb
index 4f33038d276c90633b6b211dc8e241d6c46f8061..e9063df0bdb3d568c2ccc6c4f5c417c24bc37fc0 100644 (file)
@@ -21,7 +21,7 @@ class ActionsControllerTest < ActionController::TestCase
            selection: ['zzzzz-4zz18-znfnqtbbv4spc3w/foo',
                        'zzzzz-4zz18-ehbhgtheo8909or/bar',
                        'zzzzz-4zz18-y9vne9npefyxh8g/baz',
-                       '1fd08fc162a5c6413070a8bd0bffc818+150'],
+                       '7a6ef4c162a5c6413070a8bd0bffc818+150'],
            format: "json"},
          session_for(:active))
 
@@ -33,13 +33,12 @@ class ActionsControllerTest < ActionController::TestCase
     use_token :active
     collection = Collection.select([:uuid, :manifest_text]).where(uuid: new_collection_uuid).first
     manifest_text = collection['manifest_text']
-    assert manifest_text.include?('foo'), 'Not found foo in new collection manifest text'
-    assert manifest_text.include?('bar'), 'Not found bar in new collection manifest text'
-    assert manifest_text.include?('baz'), 'Not found baz in new collection manifest text'
-    assert manifest_text.include?('0:0:file1 0:0:file2 0:0:file3'),
-                'Not found 0:0:file1 0:0:file2 0:0:file3 in new collection manifest text'
-    assert manifest_text.include?('dir1/subdir'), 'Not found dir1/subdir in new collection manifest text'
-    assert manifest_text.include?('dir2'), 'Not found dir2 in new collection manifest text'
+    assert_includes(manifest_text, "foo")
+    assert_includes(manifest_text, "bar")
+    assert_includes(manifest_text, "baz")
+    assert_includes(manifest_text, "0:0:file1 0:0:file2 0:0:file3")
+    assert_includes(manifest_text, "dir1/subdir")
+    assert_includes(manifest_text, "dir2")
   end
 
   test "combine files  with repeated names into new collection" do
@@ -49,7 +48,7 @@ class ActionsControllerTest < ActionController::TestCase
                        'zzzzz-4zz18-abcd6fx123409f7/foo',
                        'zzzzz-4zz18-ehbhgtheo8909or/bar',
                        'zzzzz-4zz18-y9vne9npefyxh8g/baz',
-                       '1fd08fc162a5c6413070a8bd0bffc818+150'],
+                       '7a6ef4c162a5c6413070a8bd0bffc818+150'],
            format: "json"},
          session_for(:active))
 
@@ -61,15 +60,13 @@ class ActionsControllerTest < ActionController::TestCase
     use_token :active
     collection = Collection.select([:uuid, :manifest_text]).where(uuid: new_collection_uuid).first
     manifest_text = collection['manifest_text']
-    assert manifest_text.include?('foo'), 'Not found foo in new collection manifest text'
-    assert manifest_text.include?('foo(1)'), 'Not found foo(1) in new collection manifest text'
-    assert manifest_text.include?('foo(2)'), 'Not found foo(2) in new collection manifest text'
-    assert manifest_text.include?('bar'), 'Not found bar in new collection manifest text'
-    assert manifest_text.include?('baz'), 'Not found baz in new collection manifest text'
-    assert manifest_text.include?('0:0:file1 0:0:file2 0:0:file3'),
-                'Not found 0:0:file1 0:0:file2 0:0:file3 in new collection manifest text'
-    assert manifest_text.include?('dir1/subdir'), 'Not found dir1/subdir in new collection manifest text'
-    assert manifest_text.include?('dir2'), 'Not found dir2 in new collection manifest text'
+    assert_includes(manifest_text, "foo(1)")
+    assert_includes(manifest_text, "foo(2)")
+    assert_includes(manifest_text, "bar")
+    assert_includes(manifest_text, "baz")
+    assert_includes(manifest_text, "0:0:file1 0:0:file2 0:0:file3")
+    assert_includes(manifest_text, "dir1/subdir")
+    assert_includes(manifest_text, "dir2")
   end
 
   test "combine collections with repeated filenames in almost similar directories and expect files with proper suffixes" do
@@ -97,19 +94,19 @@ class ActionsControllerTest < ActionController::TestCase
     streams.each do |stream|
       if stream.start_with? './dir1'
         # dir1 stream
-        assert stream.include?(':alice(1)'), 'Not found: alice(1) in dir1'
-        assert stream.include?(':alice.txt'), 'Not found: alice.txt in dir1'
-        assert stream.include?(':alice(1).txt'), 'Not found: alice(1).txt in dir1'
-        assert stream.include?(':bob.txt'), 'Not found: bob.txt in dir1'
-        assert stream.include?(':carol.txt'), 'Not found: carol.txt in dir1'
+        assert stream.include?(':alice(1)'), "Not found: alice(1) in dir1 in manifest text #{manifest_text}"
+        assert stream.include?(':alice.txt'), "Not found: alice.txt in dir1 in manifest text #{manifest_text}"
+        assert stream.include?(':alice(1).txt'), "Not found: alice(1).txt in dir1 in manifest text #{manifest_text}"
+        assert stream.include?(':bob.txt'), "Not found: bob.txt in dir1 in manifest text #{manifest_text}"
+        assert stream.include?(':carol.txt'), "Not found: carol.txt in dir1 in manifest text #{manifest_text}"
       elsif stream.start_with? './dir2'
         # dir2 stream
-        assert stream.include?(':alice.txt'), 'Not found: alice.txt in dir2'
-        assert stream.include?(':alice(1).txt'), 'Not found: alice(1).txt in dir2'
+        assert stream.include?(':alice.txt'), "Not found: alice.txt in dir2 in manifest text #{manifest_text}"
+        assert stream.include?(':alice(1).txt'), "Not found: alice(1).txt in dir2 in manifest text #{manifest_text}"
       elsif stream.start_with? '. '
         # . stream
-        assert stream.include?(':foo'), 'Not found: foo in .'
-        assert stream.include?(':foo(1)'), 'Not found: foo(1) in .'
+        assert stream.include?(':foo'), "Not found: foo in . in manifest text #{manifest_text}"
+        assert stream.include?(':foo(1)'), "Not found: foo(1) in . in manifest text #{manifest_text}"
       end
     end
   end
@@ -159,8 +156,8 @@ class ActionsControllerTest < ActionController::TestCase
     manifest_text = collection['manifest_text']
 
     streams = manifest_text.split "\n"
-    assert_equal 1, streams.length
-    assert manifest_text.include?('foo'), 'Found foo in new collection manifest text'
-    assert manifest_text.include?('foo(1)'), 'Found foo(1) in new collection manifest text'
+    assert_equal 1, streams.length, "Incorrect number of streams in #{manifest_text}"
+    assert manifest_text.include?('foo'), "Not found foo in new collection manifest text #{manifest_text}"
+    assert manifest_text.include?('foo(1)'), "Not found foo(1) in new collection manifest text #{manifest_text}"
   end
 end