From 9c442cd66c7d12266ba53e85949f775f6b842d2d Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Fri, 4 May 2018 12:49:06 +0200 Subject: Move `TomTom::Matrix::RemoteError` to`TomTom::Errors::MatrixRemoteError` I previously tried to correct a circular dependency problem in a057276129b1f62b811743db3b8f867a05241ed3, but that didn't fix it (it was intermittent, and came back). After some wrangling, I've now deduced with some confidence that the problem comes from `RouteWayCostCalculator`, which used `TomTom::Matrix::RemoteError`. From the way it looks, this seems to mess up the Rails autoloader since `tom_tom.rb` will try to load the `Matrix` class from the `TomTom.matrix` call above. Or something. In an attempt to fix the circular dependency error for real this time, move the error class to a completely separate module from `Matrix`, and refer to this when we need to use the error class. Refs #6884 --- spec/lib/tom_tom/matrix_spec.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'spec') diff --git a/spec/lib/tom_tom/matrix_spec.rb b/spec/lib/tom_tom/matrix_spec.rb index 6564b82fd..f914cf7ff 100644 --- a/spec/lib/tom_tom/matrix_spec.rb +++ b/spec/lib/tom_tom/matrix_spec.rb @@ -150,7 +150,7 @@ RSpec.describe TomTom::Matrix do end describe "#check_for_error_response" do - it "raises a RemoteError when an 'error' key is present in the response" do + it "raises a MatrixRemoteError when an 'error' key is present in the response" do response = double( 'response', status: 200, @@ -165,12 +165,12 @@ RSpec.describe TomTom::Matrix do expect { matrix.check_for_error_response(response) }.to raise_error( - TomTom::Matrix::RemoteError, + TomTom::Errors::MatrixRemoteError, "status: #{response.status}, message: Output format: csv is unsupported." ) end - it "raises a RemoteError when response status is not 200" do + it "raises a MatrixRemoteError when response status is not 200" do response = double( 'response', status: 403, @@ -180,7 +180,7 @@ RSpec.describe TomTom::Matrix do expect { matrix.check_for_error_response(response) }.to raise_error( - TomTom::Matrix::RemoteError, + TomTom::Errors::MatrixRemoteError, "status: #{response.status}, body: