@@ -23,10 +23,6 @@ module ReactOnRails # rubocop:disable Metrics/ModuleLength
2323
2424 before { stub_gem_version ( "2.2.5.beta.2" ) }
2525
26- it "does not raise" do
27- expect { check_version_and_raise ( node_package_version ) } . not_to raise_error
28- end
29-
3026 it "does not log" do
3127 allow ( Rails . logger ) . to receive ( :warn )
3228 check_version_and_log ( node_package_version )
@@ -47,12 +43,6 @@ module ReactOnRails # rubocop:disable Metrics/ModuleLength
4743 check_version_and_log ( node_package_version )
4844 expect ( Rails . logger ) . to have_received ( :warn ) . with ( message )
4945 end
50-
51- it "raises" do
52- allow ( Rails . logger ) . to receive ( :warn )
53- message = /ReactOnRails: Your node package version for react-on-rails contains a \^ or ~/
54- expect { check_version_and_raise ( node_package_version ) } . to raise_error ( message )
55- end
5646 end
5747
5848 context "when gem and node package major versions differ" do
@@ -68,12 +58,6 @@ module ReactOnRails # rubocop:disable Metrics/ModuleLength
6858 check_version_and_log ( node_package_version )
6959 expect ( Rails . logger ) . to have_received ( :warn ) . with ( message )
7060 end
71-
72- it "raises" do
73- allow ( Rails . logger ) . to receive ( :warn )
74- message = /ReactOnRails: ReactOnRails gem and node package versions do not match/
75- expect { check_version_and_raise ( node_package_version ) } . to raise_error ( message )
76- end
7761 end
7862
7963 context "when gem and node package major versions match and minor differs" do
@@ -89,12 +73,6 @@ module ReactOnRails # rubocop:disable Metrics/ModuleLength
8973 check_version_and_log ( node_package_version )
9074 expect ( Rails . logger ) . to have_received ( :warn ) . with ( message )
9175 end
92-
93- it "raises" do
94- allow ( Rails . logger ) . to receive ( :warn )
95- message = /ReactOnRails: ReactOnRails gem and node package versions do not match/
96- expect { check_version_and_raise ( node_package_version ) } . to raise_error ( message )
97- end
9876 end
9977
10078 context "when gem and node package major, minor versions match and patch differs" do
@@ -110,12 +88,6 @@ module ReactOnRails # rubocop:disable Metrics/ModuleLength
11088 check_version_and_log ( node_package_version )
11189 expect ( Rails . logger ) . to have_received ( :warn ) . with ( message )
11290 end
113-
114- it "raises" do
115- allow ( Rails . logger ) . to receive ( :warn )
116- message = /ReactOnRails: ReactOnRails gem and node package versions do not match/
117- expect { check_version_and_raise ( node_package_version ) } . to raise_error ( message )
118- end
11991 end
12092
12193 context "when package json uses a relative path with dots" do
@@ -125,10 +97,6 @@ module ReactOnRails # rubocop:disable Metrics/ModuleLength
12597
12698 before { stub_gem_version ( "2.0.0.beta.1" ) }
12799
128- it "does not raise" do
129- expect { check_version_and_raise ( node_package_version ) } . not_to raise_error
130- end
131-
132100 it "does not log" do
133101 allow ( Rails . logger ) . to receive ( :warn )
134102 check_version_and_log ( node_package_version )
@@ -141,12 +109,8 @@ module ReactOnRails # rubocop:disable Metrics/ModuleLength
141109 double_package_version ( raw : nil )
142110 end
143111
144- it "raise method returns true" do
145- expect ( check_version_and_raise ( node_package_version ) ) . to be ( true )
146- end
147-
148- it "log method returns true" do
149- expect ( check_version_and_log ( node_package_version ) ) . to be ( true )
112+ it "log method returns nil" do
113+ expect ( check_version_and_log ( node_package_version ) ) . to be_nil
150114 end
151115 end
152116 end
@@ -173,6 +137,19 @@ def check_version_and_log(node_package_version)
173137 describe VersionChecker ::NodePackageVersion do
174138 subject ( :node_package_version ) { described_class . new ( package_json ) }
175139
140+ describe "#build" do
141+ it "initializes NodePackageVersion with ReactOnRails.configuration.node_modules_location" do
142+ allow ( ReactOnRails ) . to receive_message_chain ( :configuration , :node_modules_location ) . and_return ( "spec/dummy" )
143+ root_package_json_path = File . expand_path ( "../../package.json" , __dir__ )
144+ allow ( Rails ) . to receive_message_chain ( :root , :join ) . and_return ( root_package_json_path )
145+ message = "No 'react-on-rails' entry in the dependencies of #{ root_package_json_path } , which is " \
146+ "the expected location according to ReactOnRails.configuration.node_modules_location"
147+ allow ( Rails . logger ) . to receive ( :warn )
148+ described_class . build . raw
149+ expect ( Rails . logger ) . to have_received ( :warn ) . with ( message )
150+ end
151+ end
152+
176153 describe "#semver_wildcard?" do
177154 context "when package json lists an exact version of '0.0.2'" do
178155 let ( :package_json ) { File . expand_path ( "fixtures/normal_package.json" , __dir__ ) }
0 commit comments