mxhero-api 1.1.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- NjQyYjNkZWMxM2FhYmRkNGYxOWY2MjA3OGQxODg5ZjJlODc4YjM4Ng==
5
- data.tar.gz: !binary |-
6
- MDBiYzFlMDViMDg0YmNjOTIwNGI1MjU4YWQwZjcxNDdkZDhkYjlkNA==
2
+ SHA1:
3
+ metadata.gz: ba456138682906b1ca14227f6bffe9f3749903c9
4
+ data.tar.gz: 04c6819cfdd14bf406c63f150ab07545d423f362
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- ODkyMTYxYzQ1YzMyMGU4ZWJiYWM5YzVhMDA1NDdhM2NhMzIxODM1OWRkZmJj
10
- MDBmMTg4YmFmMWM4M2Q0ZTM0ZTUzODcxNTExMDNiOGNhYTQwMTg1NWE0OWE5
11
- MTRjNzBiNmM1MTQ1NzUxMTIzOTgwNjNjYjEyY2YyZGEyN2Q5OGQ=
12
- data.tar.gz: !binary |-
13
- Y2QyOWU0Y2MyZWEwMzc5ZjA5MDVmOTRiNTBkNzUyNzQxMzkxYTk4ZmZlNjYz
14
- N2Q4ZTFlMzEzNTA0M2E3NmQ2ZDcyNTAwMDBkNzkzZTJmMTY0ZjBhMDdkOGQ5
15
- ZDY3NTliYjdlM2UzZmM1NWU5ZmE4NjE5NzRhZjcyYTMwNzk0Njk=
6
+ metadata.gz: 655fa6ab58d501a060245c64c0423109f2e48bc5039807c9f1e0bebf422e382f31fcba3092ac82ca5ffcda713a423caacbb98211257ebfc177a4b58944924ad9
7
+ data.tar.gz: 244eaaa1fa896c4ad175a97484cf8357f16a874b42c9db9f34e1341ee8ed09481cb63b25063cd24cb7c5145102f0b6f9ab6ae440a7e1ef53fd40019ae2e4939d
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.0
1
+ 1.1.1
data/lib/directories.rb CHANGED
@@ -1,20 +1,21 @@
1
1
  module MxHero::API
2
2
 
3
- class Directory
4
- attr_accessor :domain, :type, :address, :port, :ssl,
5
- :user, :password, :filter, :base, :next_update,
6
- :last_update, :error, :override, :dn_authenticate,
7
- :properties
3
+ class Directory
4
+ attr_accessor :domain, :type, :address, :port, :ssl,
5
+ :user, :password, :filter, :base, :next_update,
6
+ :last_update, :error, :override, :dn_authenticate,
7
+ :properties, :useMailAsMain
8
8
 
9
9
  def initialize(data = {})
10
10
  return if data.empty?
11
11
  [
12
- :domain, [:type, :directoryType], [:address, :addres], :port,
13
- [:ssl, :sslFlag], :user, :password, :filter, :base,
12
+ :domain, [:type, :directoryType], [:address, :addres], :port,
13
+ [:ssl, :sslFlag], :user, :password, :filter, :base,
14
14
  [:next_update, :nextUpdate],
15
15
  [:last_update, :lastUpdate],
16
- :error, [:override, :overrideFlag],
17
- [:dn_authenticate, :dnAuthenticate]
16
+ :error, [:override, :overrideFlag],
17
+ [:dn_authenticate, :dnAuthenticate],
18
+ :useMailAsMain
18
19
  ].each do |property|
19
20
  case property
20
21
  when Symbol
@@ -26,9 +27,9 @@ module MxHero::API
26
27
  load_properties(data)
27
28
  end
28
29
 
29
-
30
+
30
31
  def last_update=(date)
31
- parse_update_dates(:last_update, date)
32
+ parse_update_dates(:last_update, date)
32
33
  end
33
34
 
34
35
  def next_update=(date)
@@ -44,15 +45,16 @@ module MxHero::API
44
45
  domain: domain,
45
46
  directoryType: type,
46
47
  addres: address,
47
- port: port,
48
+ port: port,
48
49
  sslFlag: ssl, # || false,
49
- user: user, password: password,
50
+ user: user, password: password,
50
51
  filter: filter, base: base,
51
52
  nextUpdate: next_update, # || DateTime.now.strftime('%Q'),
52
53
  lastUpdate: last_update, # || DateTime.now.strftime('%Q'),
53
54
  error: error,
54
55
  overrideFlag: override, #override.nil? ? true : override,
55
56
  dnAuthenticate: dn_authenticate,
57
+ useMailAsMain: useMailAsMain,
56
58
  properties: properties_field_to_hash
57
59
  }
58
60
  end
@@ -60,9 +62,9 @@ module MxHero::API
60
62
  def to_json
61
63
  to_hash.to_json
62
64
  end
63
-
65
+
64
66
  private
65
-
67
+
66
68
  def load_properties(data)
67
69
  @properties ||= {}
68
70
  props = data[:properties]
@@ -75,11 +77,11 @@ module MxHero::API
75
77
  def properties_field_to_hash
76
78
  values = []
77
79
  (properties || []).each do |name, value|
78
- values << { name: name, key: value }
80
+ values << { name: name, key: value }
79
81
  end
80
82
  values
81
83
  end
82
-
84
+
83
85
  def parse_update_dates(property, date)
84
86
  if date.is_a? Integer or date.is_a? String
85
87
  instance_variable_set "@#{property}", DateTime.strptime(date.to_s, '%Q')
@@ -89,7 +91,7 @@ module MxHero::API
89
91
  end
90
92
 
91
93
  end
92
-
94
+
93
95
  class Directories
94
96
  include Communication
95
97
  include Urls
@@ -116,11 +118,11 @@ module MxHero::API
116
118
  end
117
119
  nil
118
120
  end
119
-
121
+
120
122
  # Create a directory configuration
121
123
  #
122
124
  # @return [MxHero::API::Response] that Directory created
123
- # In case on error, may be one of the following:
125
+ # In case on error, may be one of the following:
124
126
  # + domain.ldap.alredy.exists
125
127
  #
126
128
  def create(directory)
@@ -132,7 +134,7 @@ module MxHero::API
132
134
  # Update the directory configuration
133
135
  #
134
136
  # @return [MxHero::API::Response] that Directory updated
135
- # In case on error, may be one of the following:
137
+ # In case on error, may be one of the following:
136
138
  # + domain.ldap.not.found
137
139
  #
138
140
  def update(directory)
@@ -144,7 +146,7 @@ module MxHero::API
144
146
  # Delete the directory configuration
145
147
  #
146
148
  # @return [MxHero::API::Response] with empty content.
147
- # In case on error, may be one of the following:
149
+ # In case on error, may be one of the following:
148
150
  # + domain.ldap.not.found : Inexistent group
149
151
  def delete
150
152
  response = call(:delete, directories_url, throw_exception: false)
@@ -153,8 +155,8 @@ module MxHero::API
153
155
 
154
156
  # Request to refresh the accounts information
155
157
  #
156
- # @return [MxHero::API::Response] with empty content.
157
- # In case on error, may be one of the following:
158
+ # @return [MxHero::API::Response] with empty content.
159
+ # In case on error, may be one of the following:
158
160
  # + domain.ldap.not.found : Inexistent group
159
161
  def refresh
160
162
  response = call(:post, directories_url + '/refresh', throw_exception: false)
@@ -163,10 +165,10 @@ module MxHero::API
163
165
 
164
166
  # -------------------------------------------------------------------------
165
167
  private
166
-
168
+
167
169
  def wrap_response_from(response)
168
170
  content = (200..299).include?(response.code) ? directory_from(response) : json_parse(response.content)
169
- Response.new(response.status, content)
171
+ Response.new(response.status, content)
170
172
  end
171
173
 
172
174
  def directory_from(response)
@@ -176,7 +178,7 @@ module MxHero::API
176
178
  end
177
179
 
178
180
  def directories_url
179
- domain_by_id_url(domain) + 'adldap'
181
+ domain_by_id_url(domain) + 'adldap'
180
182
  end
181
183
  end
182
184
 
data/mxhero-api.gemspec CHANGED
@@ -1,21 +1,21 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: mxhero-api 1.1.0 ruby lib
2
+ # stub: mxhero-api 1.1.1 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "mxhero-api"
6
- s.version = "1.1.0"
6
+ s.version = "1.1.1"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
+ s.require_paths = ["lib"]
9
10
  s.authors = ["Maximiliano Dello Russo", "Juan Pablo Royo", "mxHero"]
10
- s.date = "2016-04-28"
11
+ s.date = "2016-05-13"
11
12
  s.description = "A gem to provide easy access to the API of MxHero platform (http://www.mxhero.com/)"
12
13
  s.email = ["maxidr@mxhero.com", "juanpablo.royo@gmail.com", "mxhero@mxhero.com"]
13
14
  s.files = [".gitignore", ".ruby-gemset", ".ruby-version", "Gemfile", "LICENSE.txt", "README.md", "Rakefile", "VERSION", "lib/communication.rb", "lib/directories.rb", "lib/dto.rb", "lib/groups.rb", "lib/mxhero-api.rb", "lib/pst-converter.rb", "lib/resource.rb", "lib/resources/account.rb", "lib/resources/domain.rb", "lib/resources/group.rb", "lib/urls.rb", "mxhero-api.gemspec", "test/fixtures/api/account_properties.yml", "test/fixtures/api/account_properties_not_found.yml", "test/fixtures/api/accounts.yml", "test/fixtures/api/accounts_filtered.yml", "test/fixtures/api/accounts_from_domain.yml", "test/fixtures/api/accounts_from_domain_paginated.yml", "test/fixtures/api/accounts_without_group.yml", "test/fixtures/api/add_an_inexistent_account_to_group.yml", "test/fixtures/api/add_and_remove_account.yml", "test/fixtures/api/add_feature.yml", "test/fixtures/api/all_groups.yml", "test/fixtures/api/associate_user_domain.yml", "test/fixtures/api/create_directory.yml", "test/fixtures/api/create_domain.yml", "test/fixtures/api/create_rule_for_domain.yml", "test/fixtures/api/create_user.yml", "test/fixtures/api/delete_directory.yml", "test/fixtures/api/delete_group.yml", "test/fixtures/api/delete_rule.yml", "test/fixtures/api/domain_by_id.yml", "test/fixtures/api/domain_by_id_not_found.yml", "test/fixtures/api/domain_rule.yml", "test/fixtures/api/domains.yml", "test/fixtures/api/fetch_directory.yml", "test/fixtures/api/fetch_user.yml", "test/fixtures/api/ldap_info.yml", "test/fixtures/api/move_to_trial.yml", "test/fixtures/api/refresh_directory.yml", "test/fixtures/api/remove_account_from_group_twice.yml", "test/fixtures/api/remove_inexistente_account_from_group.yml", "test/fixtures/api/rule_status.yml", "test/fixtures/api/rules_for_domain.yml", "test/fixtures/api/rules_for_domain_by_component.yml", "test/fixtures/api/save_group.yml", "test/fixtures/api/system_properties.yml", "test/fixtures/api/system_properties_create.yml", "test/fixtures/api/system_properties_element.yml", "test/fixtures/api/test_domain.yml", "test/fixtures/api/update_account_properties.yml", "test/fixtures/api/update_accounts_group_scope.yml", "test/fixtures/api/update_accounts_properties_scope.yml", "test/fixtures/api/update_directory.yml", "test/fixtures/api/update_rule.yml", "test/fixtures/api/update_user.yml", "test/fixtures/api/user_domains.yml", "test/fixtures/api/users_for_domain.yml", "test/fixtures/api/validate_user_credential.yml", "test/fixtures/domain.rb", "test/helper.rb", "test/test_directories.rb", "test/test_domain.rb", "test/test_dto.rb", "test/test_feature.rb", "test/test_groups.rb", "test/test_mxhero_api.rb", "test/test_mxhero_api_response.rb", "test/test_resource.rb"]
14
15
  s.homepage = "http://github.com/mxhero/mxhero-api"
15
16
  s.licenses = ["GPL-3"]
16
- s.require_paths = ["lib"]
17
17
  s.required_ruby_version = Gem::Requirement.new(">= 2.3.0")
18
- s.rubygems_version = "2.1.9"
18
+ s.rubygems_version = "2.5.1"
19
19
  s.summary = "A MxHero API client for ruby"
20
20
  s.test_files = ["test/fixtures/api/account_properties.yml", "test/fixtures/api/account_properties_not_found.yml", "test/fixtures/api/accounts.yml", "test/fixtures/api/accounts_filtered.yml", "test/fixtures/api/accounts_from_domain.yml", "test/fixtures/api/accounts_from_domain_paginated.yml", "test/fixtures/api/accounts_without_group.yml", "test/fixtures/api/add_an_inexistent_account_to_group.yml", "test/fixtures/api/add_and_remove_account.yml", "test/fixtures/api/add_feature.yml", "test/fixtures/api/all_groups.yml", "test/fixtures/api/associate_user_domain.yml", "test/fixtures/api/create_directory.yml", "test/fixtures/api/create_domain.yml", "test/fixtures/api/create_rule_for_domain.yml", "test/fixtures/api/create_user.yml", "test/fixtures/api/delete_directory.yml", "test/fixtures/api/delete_group.yml", "test/fixtures/api/delete_rule.yml", "test/fixtures/api/domain_by_id.yml", "test/fixtures/api/domain_by_id_not_found.yml", "test/fixtures/api/domain_rule.yml", "test/fixtures/api/domains.yml", "test/fixtures/api/fetch_directory.yml", "test/fixtures/api/fetch_user.yml", "test/fixtures/api/ldap_info.yml", "test/fixtures/api/move_to_trial.yml", "test/fixtures/api/refresh_directory.yml", "test/fixtures/api/remove_account_from_group_twice.yml", "test/fixtures/api/remove_inexistente_account_from_group.yml", "test/fixtures/api/rule_status.yml", "test/fixtures/api/rules_for_domain.yml", "test/fixtures/api/rules_for_domain_by_component.yml", "test/fixtures/api/save_group.yml", "test/fixtures/api/system_properties.yml", "test/fixtures/api/system_properties_create.yml", "test/fixtures/api/system_properties_element.yml", "test/fixtures/api/test_domain.yml", "test/fixtures/api/update_account_properties.yml", "test/fixtures/api/update_accounts_group_scope.yml", "test/fixtures/api/update_accounts_properties_scope.yml", "test/fixtures/api/update_directory.yml", "test/fixtures/api/update_rule.yml", "test/fixtures/api/update_user.yml", "test/fixtures/api/user_domains.yml", "test/fixtures/api/users_for_domain.yml", "test/fixtures/api/validate_user_credential.yml", "test/fixtures/domain.rb", "test/helper.rb", "test/test_directories.rb", "test/test_domain.rb", "test/test_dto.rb", "test/test_feature.rb", "test/test_groups.rb", "test/test_mxhero_api.rb", "test/test_mxhero_api_response.rb", "test/test_resource.rb"]
21
21
 
@@ -5,7 +5,7 @@ http_interactions:
5
5
  uri: http://admin:password@test.mxhero.com/webapi/api/v1/domains/test.com/adldap
6
6
  body:
7
7
  encoding: UTF-8
8
- string: ! '{"domain":"test.com","directoryType":"gapps","addres":null,"port":null,"sslFlag":null,"user":"user","password":"password","filter":null,"base":null,"nextUpdate":null,"lastUpdate":null,"error":null,"overrideFlag":null,"dnAuthenticate":null,"properties":[]}'
8
+ string: ! '{"domain":"test.com","directoryType":"gapps","addres":null,"port":null,"sslFlag":null,"user":"user","password":"password","filter":null,"base":null,"nextUpdate":null,"lastUpdate":null,"error":null,"overrideFlag":null,"dnAuthenticate":null,"useMailAsMain":true,"properties":[]}'
9
9
  headers:
10
10
  Accept:
11
11
  - application/json
@@ -33,8 +33,8 @@ http_interactions:
33
33
  YXBwbGljYXRpb24vanNvbg==
34
34
  body:
35
35
  encoding: US-ASCII
36
- string: ! '{"domain":"test.com","directoryType":"gapps","addres":null,"port":null,"sslFlag":false,"user":"user","password":"password","filter":null,"base":null,"nextUpdate":1386688365000,"lastUpdate":null,"error":null,"overrideFlag":false,"dnAuthenticate":null,"properties":[],"periodInHours":0}'
37
- http_version:
36
+ string: ! '{"domain":"test.com","directoryType":"gapps","addres":null,"port":null,"sslFlag":false,"user":"user","password":"password","filter":null,"base":null,"nextUpdate":1386688365000,"lastUpdate":null,"error":null,"overrideFlag":false,"dnAuthenticate":null,"useMailAsMain":true,"properties":[],"periodInHours":0}'
37
+ http_version:
38
38
  recorded_at: Tue, 10 Dec 2013 15:12:45 GMT
39
39
  - request:
40
40
  method: post
@@ -73,6 +73,6 @@ http_interactions:
73
73
  body:
74
74
  encoding: US-ASCII
75
75
  string: ! '{"status":500,"code":500,"developerMessage":"domain.ldap.already.exists","moreInfoUrl":"mailto:support@mxhero.com"}'
76
- http_version:
76
+ http_version:
77
77
  recorded_at: Tue, 10 Dec 2013 15:12:46 GMT
78
78
  recorded_with: VCR 2.5.0
@@ -33,7 +33,7 @@ http_interactions:
33
33
  YXBwbGljYXRpb24vanNvbg==
34
34
  body:
35
35
  encoding: US-ASCII
36
- string: ! '{"domain":"test.com","directoryType":"gapps","addres":null,"port":null,"sslFlag":false,"user":"user","password":"password","filter":null,"base":null,"nextUpdate":1384810741000,"lastUpdate":null,"error":null,"overrideFlag":false,"dnAuthenticate":null,"properties":[]}'
37
- http_version:
36
+ string: ! '{"domain":"test.com","directoryType":"gapps","addres":null,"port":null,"sslFlag":false,"user":"user","password":"password","filter":null,"base":null,"nextUpdate":1384810741000,"lastUpdate":null,"error":null,"overrideFlag":false,"dnAuthenticate":null,"useMailAsMain":false,"properties":[]}'
37
+ http_version:
38
38
  recorded_at: Mon, 18 Nov 2013 21:42:00 GMT
39
39
  recorded_with: VCR 2.5.0
@@ -33,15 +33,15 @@ http_interactions:
33
33
  YXBwbGljYXRpb24vanNvbg==
34
34
  body:
35
35
  encoding: US-ASCII
36
- string: ! '{"domain":"test.com","directoryType":"gapps","addres":null,"port":null,"sslFlag":false,"user":"user","password":"password","filter":null,"base":null,"nextUpdate":1384810990000,"lastUpdate":null,"error":null,"overrideFlag":false,"dnAuthenticate":null,"properties":[]}'
37
- http_version:
36
+ string: ! '{"domain":"test.com","directoryType":"gapps","addres":null,"port":null,"sslFlag":false,"user":"user","password":"password","filter":null,"base":null,"nextUpdate":1384810990000,"lastUpdate":null,"error":null,"overrideFlag":false,"dnAuthenticate":null,"useMailAsMain":true,"properties":[]}'
37
+ http_version:
38
38
  recorded_at: Mon, 18 Nov 2013 21:43:36 GMT
39
39
  - request:
40
40
  method: put
41
41
  uri: http://admin:password@test.mxhero.com/webapi/api/v1/domains/test.com/adldap
42
42
  body:
43
43
  encoding: UTF-8
44
- string: ! '{"domain":"test.com","directoryType":"zimbra","addres":"zertifikate.telekom.de","port":"389","sslFlag":true,"user":"user","password":"password","filter":null,"base":"cn","nextUpdate":"2013-11-18T21:43:10+00:00","lastUpdate":null,"error":null,"overrideFlag":false,"dnAuthenticate":null,"properties":[]}'
44
+ string: ! '{"domain":"test.com","directoryType":"zimbra","addres":"zertifikate.telekom.de","port":"389","sslFlag":true,"user":"user","password":"password","filter":null,"base":"cn","nextUpdate":"2013-11-18T21:43:10+00:00","lastUpdate":null,"error":null,"overrideFlag":false,"dnAuthenticate":null,"useMailAsMain":true,"properties":[]}'
45
45
  headers:
46
46
  Accept:
47
47
  - application/json
@@ -70,7 +70,7 @@ http_interactions:
70
70
  body:
71
71
  encoding: US-ASCII
72
72
  string: ''
73
- http_version:
73
+ http_version:
74
74
  recorded_at: Mon, 18 Nov 2013 21:43:36 GMT
75
75
  - request:
76
76
  method: get
@@ -105,7 +105,7 @@ http_interactions:
105
105
  YXBwbGljYXRpb24vanNvbg==
106
106
  body:
107
107
  encoding: US-ASCII
108
- string: ! '{"domain":"test.com","directoryType":"zimbra","addres":"zertifikate.telekom.de","port":"389","sslFlag":true,"user":"user","password":"password","filter":null,"base":"cn","nextUpdate":1384810990000,"lastUpdate":null,"error":null,"overrideFlag":false,"dnAuthenticate":null,"properties":[]}'
109
- http_version:
108
+ string: ! '{"domain":"test.com","directoryType":"zimbra","addres":"zertifikate.telekom.de","port":"389","sslFlag":true,"user":"user","password":"password","filter":null,"base":"cn","nextUpdate":1384810990000,"lastUpdate":null,"error":null,"overrideFlag":false,"dnAuthenticate":null,"useMailAsMain":true,"properties":[]}'
109
+ http_version:
110
110
  recorded_at: Mon, 18 Nov 2013 21:43:36 GMT
111
111
  recorded_with: VCR 2.5.0
@@ -2,9 +2,9 @@ require_relative 'helper'
2
2
 
3
3
  class DirectoriesTest < MiniTest::Test
4
4
  def setup
5
- @dirs = MxHero::API::Directories.new(domain,
6
- username: TEST_API_USER,
7
- password: TEST_API_PASSWORD,
5
+ @dirs = MxHero::API::Directories.new(domain,
6
+ username: TEST_API_USER,
7
+ password: TEST_API_PASSWORD,
8
8
  verbose: false, api_url: TEST_API_URL)
9
9
  end
10
10
 
@@ -13,7 +13,7 @@ class DirectoriesTest < MiniTest::Test
13
13
  end
14
14
 
15
15
  def test_directories_from_api
16
- directories = MxHero::API::Client.new(api_url: TEST_API_URL, username: TEST_API_USER,
16
+ directories = MxHero::API::Client.new(api_url: TEST_API_URL, username: TEST_API_USER,
17
17
  password: TEST_API_PASSWORD).directories(domain)
18
18
  assert directories.is_a? MxHero::API::Directories
19
19
  assert_equal domain, directories.instance_variable_get(:@domain)
@@ -26,28 +26,29 @@ class DirectoriesTest < MiniTest::Test
26
26
  def test_fetch
27
27
  VCR.use_cassette('fetch_directory') do
28
28
  directory = @dirs.fetch
29
- assert_equal domain, directory.domain
29
+ assert_equal domain, directory.domain
30
30
  assert_equal 'gapps', directory.type
31
+ assert_equal false, directory.useMailAsMain
31
32
  end
32
33
  end
33
-
34
+
34
35
  def test_create
35
36
  directory = MxHero::API::Directory.new(domain: 'test.com', type: 'gapps',
36
37
  user: 'user', password: 'password')
37
-
38
- VCR.use_cassette('create_directory') do
38
+
39
+ VCR.use_cassette('create_directory') do
39
40
  response = @dirs.create directory
40
41
  assert response.success?
41
-
42
+
42
43
  # try to create again
43
44
  response = @dirs.create directory
44
- assert ! response.success?
45
+ assert ! response.success?
45
46
  assert_equal 'domain.ldap.already.exists', response.error
46
47
  end
47
48
  end
48
49
 
49
50
  def test_update
50
- VCR.use_cassette('update_directory') do
51
+ VCR.use_cassette('update_directory') do
51
52
  directory = @dirs.fetch
52
53
  directory.ssl = true
53
54
  directory.base = 'cn'
@@ -56,9 +57,10 @@ class DirectoriesTest < MiniTest::Test
56
57
  directory.port = '389'
57
58
  directory.user = 'user'
58
59
  directory.password = 'password'
59
-
60
+ directory.useMailAsMain = true
61
+
60
62
  assert @dirs.update(directory).success?
61
-
63
+
62
64
  updated = @dirs.fetch
63
65
 
64
66
  assert_equal directory.ssl, updated.ssl
@@ -68,11 +70,12 @@ class DirectoriesTest < MiniTest::Test
68
70
  assert_equal directory.port, updated.port
69
71
  assert_equal directory.user, updated.user
70
72
  assert_equal directory.password, updated.password
73
+ assert_equal directory.useMailAsMain, updated.useMailAsMain
71
74
  end
72
75
  end
73
76
 
74
77
  def test_delete
75
- VCR.use_cassette('delete_directory') do
78
+ VCR.use_cassette('delete_directory') do
76
79
  deleted = @dirs.delete
77
80
  assert deleted.success?
78
81
  assert_nil @dirs.fetch
@@ -96,52 +99,52 @@ class DirectoriesTest < MiniTest::Test
96
99
  directory.next_update = 1379949740000
97
100
  directory.last_update = '1379949740000'
98
101
  expected = "2013-09-23T15:22:20+00:00"
99
- assert_equal expected, directory.next_update.to_s #23-09-2013 12:22
100
- assert_equal expected, directory.last_update.to_s #23-09-2013 12:22
102
+ assert_equal expected, directory.next_update.to_s #23-09-2013 12:22
103
+ assert_equal expected, directory.last_update.to_s #23-09-2013 12:22
101
104
  end
102
105
 
103
106
  def test_update_properties
104
- directory = MxHero::API::Directory.new domain: domain,
105
- type: 'gapps', address: nil, port: nil, ssl: false,
107
+ directory = MxHero::API::Directory.new domain: domain,
108
+ type: 'gapps', address: nil, port: nil, ssl: false,
106
109
  user: 'test_user', password: 'password', filter: nil,
107
110
  base: nil, next_update: 1379949740000, last_update: 1379949740000,
108
111
  override: false, dn_authenticate: nil
109
112
  changes = {
110
113
  type: 'ldap', address: 'ldap.mxhero.com', port: 1234, ssl: true,
111
114
  user: 'mxhero_user', password: 'xxx', filter: 'filter',
112
- base: 'base', next_update: Date.new, last_update: nil,
115
+ base: 'base', next_update: Date.new, last_update: nil,
113
116
  override: true, dn_authenticate: 'dn_autheticate message'
114
117
  }
115
- directory.update_properties changes
118
+ directory.update_properties changes
116
119
  changes.keys.each { |prop| assert_equal changes[prop], directory.send(prop) }
117
120
  end
118
121
 
119
122
  def test_initialize_properties
120
- directory = MxHero::API::Directory.new domain: domain,
123
+ directory = MxHero::API::Directory.new domain: domain,
121
124
  properties: [ {name: 'email', key: 'ldap.email'}, {name: 'name', key: 'user.name'} ]
122
125
 
123
126
  assert_equal({ email: 'ldap.email', name: 'user.name' }, directory.properties)
124
127
 
125
- directory = MxHero::API::Directory.new domain: domain,
128
+ directory = MxHero::API::Directory.new domain: domain,
126
129
  properties: { email: 'ldap.email', name: 'user.name' }
127
-
130
+
128
131
  assert_equal({ email: 'ldap.email', name: 'user.name' }, directory.properties)
129
132
  end
130
133
 
131
134
  def test_properties_to_json
132
- directory = MxHero::API::Directory.new domain: domain,
135
+ directory = MxHero::API::Directory.new domain: domain,
133
136
  properties: { email: 'ldap.email', name: 'user.name' }
134
-
137
+
135
138
  expected = {
136
139
  domain: directory.domain, directoryType: directory.type,
137
140
  addres: directory.address, port: directory.port, sslFlag: directory.ssl,
138
141
  user: directory.user, password: directory.password, filter: directory.filter,
139
- base: directory.base, nextUpdate: directory.next_update,
140
- lastUpdate: directory.last_update, error: directory.error,
141
- overrideFlag: directory.override, dnAuthenticate: directory.dn_authenticate,
142
+ base: directory.base, nextUpdate: directory.next_update,
143
+ lastUpdate: directory.last_update, error: directory.error,
144
+ overrideFlag: directory.override, dnAuthenticate: directory.dn_authenticate, useMailAsMain: nil,
142
145
  properties: [ { name: 'email', key:'ldap.email' }, { name: 'name', key: 'user.name' } ]
143
146
  }
144
-
147
+
145
148
  assert_equal expected.to_json, directory.to_json
146
149
 
147
150
  directory = MxHero::API::Directory.new domain: domain
@@ -150,4 +153,3 @@ class DirectoriesTest < MiniTest::Test
150
153
  end
151
154
 
152
155
  end
153
-
data/test/test_domain.rb CHANGED
@@ -16,7 +16,7 @@ class DomainTest < MiniTest::Test
16
16
 
17
17
  def test_empty_metadata
18
18
  [ '', 'null', nil ].each do |value|
19
- data[:metadata] = value
19
+ data[:metadata] = value
20
20
  domain = MxHero::API::Domain.new data
21
21
  assert domain.metadata.nil?, "Is not empty in case of '#{value}'"
22
22
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mxhero-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maximiliano Dello Russo
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-04-28 00:00:00.000000000 Z
13
+ date: 2016-05-13 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: vcr
@@ -63,9 +63,9 @@ executables: []
63
63
  extensions: []
64
64
  extra_rdoc_files: []
65
65
  files:
66
- - .gitignore
67
- - .ruby-gemset
68
- - .ruby-version
66
+ - ".gitignore"
67
+ - ".ruby-gemset"
68
+ - ".ruby-version"
69
69
  - Gemfile
70
70
  - LICENSE.txt
71
71
  - README.md
@@ -150,17 +150,17 @@ require_paths:
150
150
  - lib
151
151
  required_ruby_version: !ruby/object:Gem::Requirement
152
152
  requirements:
153
- - - ! '>='
153
+ - - ">="
154
154
  - !ruby/object:Gem::Version
155
155
  version: 2.3.0
156
156
  required_rubygems_version: !ruby/object:Gem::Requirement
157
157
  requirements:
158
- - - ! '>='
158
+ - - ">="
159
159
  - !ruby/object:Gem::Version
160
160
  version: '0'
161
161
  requirements: []
162
162
  rubyforge_project:
163
- rubygems_version: 2.1.9
163
+ rubygems_version: 2.5.1
164
164
  signing_key:
165
165
  specification_version: 4
166
166
  summary: A MxHero API client for ruby