X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/9259c169b6254ea581fcdcb18e1cdbe9b9fbea1e..cf1dcfb8715822f7ac5fe4fce067197dd84bad54:/services/api/test/unit/salvage_collection_test.rb diff --git a/services/api/test/unit/salvage_collection_test.rb b/services/api/test/unit/salvage_collection_test.rb index 47abe5a0d2..89d97f6fd1 100644 --- a/services/api/test/unit/salvage_collection_test.rb +++ b/services/api/test/unit/salvage_collection_test.rb @@ -1,3 +1,7 @@ +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: AGPL-3.0 + require 'test_helper' require 'salvage_collection' require 'shellwords' @@ -15,7 +19,7 @@ TEST_MANIFEST_STRIPPED = ". 341dabea2bd78ad0d6fc3f5b926b450e+85626 0:85626:brca2 # 341dabea2bd78ad0d6fc3f5b926b450e+abc # 341dabea2bd78ad0d6fc3f5b926abcdf # Expectation: All these locators are preserved in salvaged_data -BAD_MANIFEST = "faaaafaafaafaabd78ad0d6fc3f5b926b450e+foo bar-baabaabaabd78ad0d6fc3f5b926b450e bad12345dae58ad0d6fc3f5b926b450e+ 341dabea2bd78ad0d6fc3f5b926b450e+abc 341dabea2bd78ad0d6fc3f5b926abcdf 0:85626:brca2-hg19.fa\n. abcdabea2bd78ad0d6fc3f5b926b450e+1000 0:1000:brca-hg19.fa\n. d7321a918923627c972d8f8080c07d29+2000+A22e0a1d9b9bc85c848379d98bedc64238b0b1532@55e076ce 0:2000:brca1-hg19.fa\n" +BAD_MANIFEST = "faafaafaabd78ad0d6fc3f5b926b450e+foo bar-baabaabaabd78ad0d6fc3f5b926b450e_bad12345dae58ad0d6fc3f5b926b450e+ 341dabea2bd78ad0d6fc3f5b926b450e+abc 341dabea2bd78ad0d6fc3f5b926abcdf 0:85626:brca2-hg19.fa\n. abcdabea2bd78ad0d6fc3f5b926b450e+1000 0:1000:brca-hg19.fa\n. d7321a918923627c972d8f8080c07d29+2000+A22e0a1d9b9bc85c848379d98bedc64238b0b1532@55e076ce 0:2000:brca1-hg19.fa\n" class SalvageCollectionTest < ActiveSupport::TestCase include SalvageCollection @@ -60,7 +64,7 @@ class SalvageCollectionTest < ActiveSupport::TestCase updated_name = updated_src_collection.name assert_equal true, updated_name.include?(src_collection.name) - match = updated_name.match /^test collection.*salvaged data at (.*)\)$/ + match = updated_name.match(/^test collection.*salvaged data at (.*)\)$/) assert_not_nil match assert_not_nil match[1] assert_empty updated_src_collection.manifest_text @@ -68,7 +72,7 @@ class SalvageCollectionTest < ActiveSupport::TestCase # match[1] is the uuid of the new collection created from src_collection's salvaged data # use this to get the new collection and verify new_collection = Collection.find_by_uuid match[1] - match = new_collection.name.match /^salvaged from (.*),.*/ + match = new_collection.name.match(/^salvaged from (.*),.*/) assert_not_nil match assert_equal src_collection.uuid, match[1] @@ -80,7 +84,7 @@ class SalvageCollectionTest < ActiveSupport::TestCase end test "salvage collection with no uuid required argument" do - e = assert_raises RuntimeError do + assert_raises RuntimeError do salvage_collection nil end end @@ -107,7 +111,7 @@ class SalvageCollectionTest < ActiveSupport::TestCase e = assert_raises RuntimeError do salvage_collection collections('user_agreement').uuid end - assert_match /Error during arv-put: pid \d+ exit \d+ \(cmd was \"arv-put .*\"\)/, e.message + assert_match(/Error during arv-put: pid \d+ exit \d+ \(cmd was \"arv-put .*\"\)/, e.message) end # This test uses BAD_MANIFEST, which has the following flaws: @@ -121,19 +125,16 @@ class SalvageCollectionTest < ActiveSupport::TestCase # Expectation: All these locators are preserved in salvaged_data test "invalid locators preserved during salvaging" do locator_data = salvage_collection_locator_data BAD_MANIFEST - assert_equal 7, locator_data[0].size - assert_equal false, locator_data[0].include?("foo-faafaafaabd78ad0d6fc3f5b926b450e+foo") - assert_equal true, locator_data[0].include?("faafaafaabd78ad0d6fc3f5b926b450e") - assert_equal false, locator_data[0].include?("bar-baabaabaabd78ad0d6fc3f5b926b450e") - assert_equal true, locator_data[0].include?("baabaabaabd78ad0d6fc3f5b926b450e") - assert_equal false, locator_data[0].include?("bad12345dae58ad0d6fc3f5b926b450e+") - assert_equal true, locator_data[0].include?("bad12345dae58ad0d6fc3f5b926b450e") - assert_equal false, locator_data[0].include?("341dabea2bd78ad0d6fc3f5b926b450e+abc") - assert_equal true, locator_data[0].include?("341dabea2bd78ad0d6fc3f5b926b450e") - assert_equal true, locator_data[0].include?("341dabea2bd78ad0d6fc3f5b926abcdf") - assert_equal true, locator_data[0].include?("abcdabea2bd78ad0d6fc3f5b926b450e+1000") - assert_equal true, locator_data[0].include?("d7321a918923627c972d8f8080c07d29+2000") - assert_equal true, locator_data[1].eql?(1000 + 2000) # size + assert_equal \ + ["faafaafaabd78ad0d6fc3f5b926b450e", + "baabaabaabd78ad0d6fc3f5b926b450e", + "bad12345dae58ad0d6fc3f5b926b450e", + "341dabea2bd78ad0d6fc3f5b926b450e", + "341dabea2bd78ad0d6fc3f5b926abcdf", + "abcdabea2bd78ad0d6fc3f5b926b450e+1000", + "d7321a918923627c972d8f8080c07d29+2000", + ], locator_data[0] + assert_equal 1000+2000, locator_data[1] end test "salvage a collection with invalid manifest text" do @@ -149,7 +150,7 @@ class SalvageCollectionTest < ActiveSupport::TestCase updated_name = updated_src_collection.name assert_equal true, updated_name.include?(src_collection.name) - match = updated_name.match /^test collection.*salvaged data at (.*)\)$/ + match = updated_name.match(/^test collection.*salvaged data at (.*)\)$/) assert_not_nil match assert_not_nil match[1] assert_empty updated_src_collection.manifest_text @@ -157,7 +158,7 @@ class SalvageCollectionTest < ActiveSupport::TestCase # match[1] is the uuid of the new collection created from src_collection's salvaged data # use this to get the new collection and verify new_collection = Collection.find_by_uuid match[1] - match = new_collection.name.match /^salvaged from (.*),.*/ + match = new_collection.name.match(/^salvaged from (.*),.*/) assert_not_nil match assert_equal src_collection.uuid, match[1] # verify the new collection's manifest includes the bad locators