@@ -30,6 +30,14 @@ class Propshaft::Resolver::StaticTest < ActiveSupport::TestCase
30
30
assert_nil @resolver . resolve ( "nowhere.txt" )
31
31
end
32
32
33
+ test "integrity for asset returns nil for simple manifest" do
34
+ assert_nil @resolver . integrity ( "one.txt" )
35
+ end
36
+
37
+ test "integrity for missing asset returns nil" do
38
+ assert_nil @resolver . integrity ( "nowhere.txt" )
39
+ end
40
+
33
41
test "resolver requests json optimizer gems to keep parsed manifest keys as strings" do
34
42
stub = Proc . new do |_ , opts |
35
43
assert_equal false , opts [ :symbolize_names ]
@@ -41,10 +49,10 @@ class Propshaft::Resolver::StaticTest < ActiveSupport::TestCase
41
49
end
42
50
end
43
51
44
- class Propshaft ::Resolver ::StaticTest ::WithIntegrityTest < ActiveSupport ::TestCase
52
+ class Propshaft ::Resolver ::StaticTest ::WithExtensibleManifest < ActiveSupport ::TestCase
45
53
setup do
46
54
@resolver = Propshaft ::Resolver ::Static . new (
47
- manifest_path : Pathname . new ( "#{ __dir__ } /../../fixtures/output/.manifest_with_integrity .json" ) ,
55
+ manifest_path : Pathname . new ( "#{ __dir__ } /../../fixtures/output/.extensible_manifest .json" ) ,
48
56
prefix : "/assets"
49
57
)
50
58
end
@@ -69,6 +77,14 @@ class Propshaft::Resolver::StaticTest::WithIntegrityTest < ActiveSupport::TestCa
69
77
assert_nil @resolver . resolve ( "nowhere.txt" )
70
78
end
71
79
80
+ test "integrity for asset returns value from extensible manifest" do
81
+ assert_equal "sha384-LdS8l2QTAF8bD8WPb8QSQv0skTWHhmcnS2XU5LBkVQneGzqIqnDRskQtJvi7ADMe" , @resolver . integrity ( "one.txt" )
82
+ end
83
+
84
+ test "integrity for missing asset returns nil" do
85
+ assert_nil @resolver . integrity ( "nowhere.txt" )
86
+ end
87
+
72
88
test "resolver requests json optimizer gems to keep parsed manifest keys as strings" do
73
89
stub = Proc . new do |_ , opts |
74
90
assert_equal false , opts [ :symbolize_names ]
0 commit comments