3 class CollectionsControllerTest < ActionController::TestCase
4 include PipelineInstancesHelper
21 test 'provenance graph' do
23 obj = Collection.where(uuid: 'zzzzz-4zz18-uukreo9rbgwsujj').results.first
25 provenance = obj.provenance.stringify_keys
27 [obj[:portable_data_hash]].each do |k|
28 assert_not_nil provenance[k], "Expected key #{k} in provenance set"
31 prov_svg = ProvenanceHelper::create_provenance_graph(provenance, "provenance_svg",
32 {:request => RequestDuck,
33 :direction => :bottom_up,
34 :combine_jobs => :script_only})
37 assert /ea10d51bcf88862dbcc36eb292017dfd\+45->hash_f866587e2de5291fbd38d616d6d33eab/.match(prov_svg)
40 assert /ea10d51bcf88862dbcc36eb292017dfd\+45->hash2_02a085407e751d00b5dc88f1bd5e8247/.match(prov_svg)
42 # owned_by_active -> hash
43 assert /hash_f866587e2de5291fbd38d616d6d33eab->fa7aeb5140e2848d39b416daeef4ffc5\+45/.match(prov_svg)
45 # owned_by_active -> hash2
46 assert /hash2_02a085407e751d00b5dc88f1bd5e8247->fa7aeb5140e2848d39b416daeef4ffc5\+45/.match(prov_svg)
48 # File::open "./tmp/stuff3.svg", "w" do |f|
49 # f.write "<?xml version=\"1.0\" ?>\n"
55 test 'used_by graph' do
57 obj = Collection.where(uuid: 'zzzzz-4zz18-bv31uwvy3neko22').results.first
59 used_by = obj.used_by.stringify_keys
61 used_by_svg = ProvenanceHelper::create_provenance_graph(used_by, "used_by_svg",
62 {:request => RequestDuck,
63 :direction => :top_down,
64 :combine_jobs => :script_only,
68 assert /fa7aeb5140e2848d39b416daeef4ffc5\+45->hash2_f866587e2de5291fbd38d616d6d33eab/.match(used_by_svg)
71 assert /hash_f866587e2de5291fbd38d616d6d33eab->ea10d51bcf88862dbcc36eb292017dfd\+45/.match(used_by_svg)
74 assert /hash2_02a085407e751d00b5dc88f1bd5e8247->ea10d51bcf88862dbcc36eb292017dfd\+45/.match(used_by_svg)
77 # File::open "./tmp/stuff4.svg", "w" do |f|
78 # f.write "<?xml version=\"1.0\" ?>\n"