Reduce boilerplate on error messages.
authorTom Clegg <tom@curoverse.com>
Fri, 17 Jan 2014 20:47:09 +0000 (12:47 -0800)
committerTom Clegg <tom@curoverse.com>
Fri, 17 Jan 2014 20:47:09 +0000 (12:47 -0800)
"The error message [API 422]" instead of "#<RuntimeError: API error
422: The error message>"

refs #1880

apps/workbench/app/controllers/application_controller.rb
apps/workbench/app/models/arvados_api_client.rb

index d90d68c1ca8bfce82611415fe4cdcfaa32f50c85..201c063235ea2026d242f0a754c9ffb4d1c7b3e6 100644 (file)
@@ -42,7 +42,7 @@ class ApplicationController < ActionController::Base
     if @object.andand.errors.andand.full_messages.andand.any?
       @errors = @object.errors.full_messages
     else
-      @errors = [e.inspect]
+      @errors = [e.to_s]
     end
     self.render_error status: 422
   end
index 35d75267636040c4d0cb6f51cea590abe0f87fd0..a8bcb4d650c6f1d733c04f3b439fc60daa8f616b 100644 (file)
@@ -77,7 +77,7 @@ class ArvadosApiClient
     if msg.status_code != 200
       errors = resp[:errors]
       errors = errors.join("\n\n") if errors.is_a? Array
-      raise "API error #{msg.status_code}:\n\n#{errors}\n"
+      raise "#{errors} [API: #{msg.status_code}]"
     end
     if resp[:_profile]
       Rails.logger.info "API client: " \