diff options
author | Kamil Trzcinski <ayufan@ayufan.eu> | 2016-12-20 12:02:37 +0100 |
---|---|---|
committer | Kamil Trzcinski <ayufan@ayufan.eu> | 2016-12-20 12:02:37 +0100 |
commit | 0cf23fde7c666b64e6c18a92d29e632f51b00059 (patch) | |
tree | 943171ba614758895e88bd1b69d2add1a517da91 /lib/mattermost | |
parent | d305d15b6dde99b0de7fc78242aaa095fc79b5ca (diff) | |
download | gitlab-ce-0cf23fde7c666b64e6c18a92d29e632f51b00059.tar.gz |
Work on tests for mattermost
Diffstat (limited to 'lib/mattermost')
-rw-r--r-- | lib/mattermost/client.rb | 6 | ||||
-rw-r--r-- | lib/mattermost/session.rb | 14 |
2 files changed, 17 insertions, 3 deletions
diff --git a/lib/mattermost/client.rb b/lib/mattermost/client.rb index 8bbb2038772..d6759eac0d0 100644 --- a/lib/mattermost/client.rb +++ b/lib/mattermost/client.rb @@ -1,4 +1,6 @@ module Mattermost + class ClientError < Mattermost::Error; end + class Client attr_reader :user @@ -30,9 +32,9 @@ module Mattermost if response.success? json_response elsif json_response['message'] - raise json_response['message'] + raise ClientError(json_response['message']) else - raise 'Undefined error' + raise ClientError('Undefined error') end end end diff --git a/lib/mattermost/session.rb b/lib/mattermost/session.rb index f0ce51d6a71..e36500d24a3 100644 --- a/lib/mattermost/session.rb +++ b/lib/mattermost/session.rb @@ -1,10 +1,18 @@ module Mattermost - class NoSessionError < StandardError + class Error < StandardError; end + + class NoSessionError < Error def message 'No session could be set up, is Mattermost configured with Single Sign on?' end end + class ConnectionError < Error + def message + 'Could not connect. Is Mattermost up?' + end + end + # This class' prime objective is to obtain a session token on a Mattermost # instance with SSO configured where this GitLab instance is the provider. # @@ -66,10 +74,14 @@ module Mattermost def get(path, options = {}) self.class.get(path, options.merge(headers: @headers)) + rescue Errno::ECONNREFUSED + raise ConnectionError end def post(path, options = {}) self.class.post(path, options.merge(headers: @headers)) + rescue Errno::ECONNREFUSED + raise ConnectionError end private |