mxhero-api 0.1.35 → 0.1.36

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,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZWI4NmM5MzljMmYxYTk4MDdkMzhmMWMxMjZkNzU0ZjIxNzRjNjI2NA==
4
+ MGMzNjA3NmVhMGZhMzUxYzQzMGI5MmIzYWM5NTM5Yjk0YjY4MDA4YQ==
5
5
  data.tar.gz: !binary |-
6
- OGNhOTFlODQzMjJmNTgzNGFhNDc1ZTNlYzAwYjRjNDQ0ZjA4OTk3Ng==
6
+ YjdkYTAxMDIyNjNjMDVkOTM4MTdjMzI3MWVhNWFjMGEyZDQyODM2Zg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- NTQ4NWU1NzkwZDZiMmE3ZTE1YjdlY2ZkMDVlN2NhOGM0MWFjZGVlNWRiMzYz
10
- YzYwZjJhYjBiMDUxNTlhYzIxMjA1NjUyZmJiN2Q0OGY5M2Q0ZThkZmI1NmQy
11
- MmVkMGMxOWIyNGUxNzM1MmM4YmQ5MjUxMWMwNzNiNjlkMzRiODc=
9
+ MjMzMDBmOTlhZjk0MDgwMTI4OTI2YjIwYTYyZjYyMDRkODM0NGYyOTlmODNh
10
+ NGM2YmNmMzhkN2FjMmJkM2FhZGFjNzdmYjNkMWQ1OGU3OWNlMWRkMjdhNDBm
11
+ MzJhNDE3YWRiNDVlYzM3ZDQwNjM2YjJjMmQ2OTZmYjQwZjNlMDQ=
12
12
  data.tar.gz: !binary |-
13
- M2ViNzJkYzEwZWU3MGNmOTk3OTA3NDljMzQwN2UxNjEzZTk3NDMzZTI1OTI5
14
- MTMzNThjY2JmYWI5N2Y1ZjdjMmU5ODk4YWVjZjUyNjc2MmMyNDU0ZjZkMGFj
15
- Y2VlNzU4YWNmYTc1NTA2NDA0NWUxYzQzYjI2YWQ1MzRiYTM1YzU=
13
+ Y2JkYTFhMDgyMWZjMDA0NGQxNDhlNWIxNDRjY2M3MDNhMjllOWVlMmYyNDU1
14
+ NzNhYWQ3N2Y0Y2Q1MjBhYzdjMWE5MTE0ZmUzZjc4NWI0Zjk1YTM4M2IxYzE3
15
+ ZmE5ODE2MGUzZDIxYjM5ODY5OWNhYTBkMTYzMjIxMWE4M2U1MzA=
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.35
1
+ 0.1.36
data/lib/mxhero-api.rb CHANGED
@@ -413,6 +413,18 @@ module MxHero::API
413
413
  parse_response(response).success?
414
414
  end
415
415
 
416
+ # Obtain the list of users admin in a specific domain
417
+ # @return [Array<UserVO>|nil] when there is no users for that domain.
418
+ # If the domain doesn't exist then return nil
419
+ def users_for_domain(domain)
420
+ users = nil
421
+ response = call(:get, users_for_domain_url(domain), throw_exception: false)
422
+ if response.status == 200
423
+ users = json_parse(response.content)
424
+ end
425
+ users
426
+ end
427
+
416
428
  # Obtain the list of domains to one user
417
429
  # @return [Array<String>|nil] when the user exist but don't have domains the list is empty.
418
430
  # If the user isn't exist then return nil
@@ -495,6 +507,10 @@ module MxHero::API
495
507
  user_url(user) + "domains"
496
508
  end
497
509
 
510
+ def users_for_domain_url(domain)
511
+ users_url + "/domain/#{domain}/"
512
+ end
513
+
498
514
  # Fetch an element from an URL. That element maybe not found
499
515
  # @return a Hash when the element exist. Or return nil when not found.
500
516
  #
data/mxhero-api.gemspec CHANGED
@@ -1,22 +1,22 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: mxhero-api 0.1.35 ruby lib
2
+ # stub: mxhero-api 0.1.36 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "mxhero-api"
6
- s.version = "0.1.35"
6
+ s.version = "0.1.36"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
9
  s.authors = ["Maximiliano Dello Russo", "Juan Pablo Royo", "mxHero"]
10
- s.date = "2014-11-06"
10
+ s.date = "2014-11-12"
11
11
  s.description = "A gem to provide easy access to the API of MxHero platform (http://www.mxhero.com/)"
12
12
  s.email = ["maxidr@mxhero.com", "juanpablo.royo@gmail.com", "mxhero@mxhero.com"]
13
- 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/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/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/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/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"]
13
+ 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/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/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/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
14
  s.homepage = "http://github.com/mxhero/mxhero-api"
15
15
  s.licenses = ["GPL-3"]
16
16
  s.require_paths = ["lib"]
17
17
  s.rubygems_version = "2.1.9"
18
18
  s.summary = "A MxHero API client for ruby"
19
- 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/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/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/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"]
19
+ 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/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/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"]
20
20
 
21
21
  if s.respond_to? :specification_version then
22
22
  s.specification_version = 4
@@ -0,0 +1,41 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://admin:password@test.mxhero.com/webapi/api/v1/users/domain/mxhero.com/
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Content-Type:
13
+ - application/json
14
+ Authorization:
15
+ - Basic YWRtaW46bXgraGVybw==
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: !binary |-
20
+ T0s=
21
+ headers:
22
+ !binary "U2VydmVy":
23
+ - !binary |-
24
+ QXBhY2hlLUNveW90ZS8xLjE=
25
+ !binary "Q29udGVudC1UeXBl":
26
+ - !binary |-
27
+ YXBwbGljYXRpb24vanNvbg==
28
+ !binary "VHJhbnNmZXItRW5jb2Rpbmc=":
29
+ - !binary |-
30
+ Y2h1bmtlZA==
31
+ !binary "RGF0ZQ==":
32
+ - !binary |-
33
+ V2VkLCAxMiBOb3YgMjAxNCAxNzoxODoyMiBHTVQ=
34
+ body:
35
+ encoding: US-ASCII
36
+ string: ! '[{"name":"test5@mxhero.com","lastName":"test2","notifyEmail":"test2@mxhero.com","userName":"test5@mxhero.com","created":1388066459000,"locale":"en_US","password":"81dc9bdb52d04dc20036dbd8313ed055","enabled":true,"authorities":null,"domains":null,"metadata":null},{"name":"mxHero","lastName":"Inc","notifyEmail":"mxhero@mxhero.com","userName":"mxhero@mxhero.com","created":1390251575000,"locale":"en_US","password":"81dc9bdb52d04dc20036dbd8313ed055","enabled":true,"authorities":null,"domains":null,"metadata":null},{"name":"Alex","lastName":"Panagides","notifyEmail":"alex@mxhero.com","userName":"alex@mxhero.com","created":1390588614000,"locale":"en_US","password":"81dc9bdb52d04dc20036dbd8313ed055","enabled":true,"authorities":null,"domains":null,"metadata":null},{"name":"Marcelo","lastName":"Marmol","notifyEmail":"mmarmol@mxhero.com","userName":"mmarmol@mxhero.com","created":1391433969000,"locale":"en_US","password":"5f4dcc3b5aa765d61d8327deb882cf99","enabled":true,"authorities":null,"domains":null,"metadata":null},{"name":"Bruno","lastName":"Santos","notifyEmail":"bruno@mxhero.com","userName":"bruno@mxhero.com","created":1391535026000,"locale":"en_US","password":"81dc9bdb52d04dc20036dbd8313ed055","enabled":true,"authorities":null,"domains":null,"metadata":null},{"name":"Juan
37
+ Pablo","lastName":"Royo","notifyEmail":"jproyo@mxhero.com","userName":"jproyo@mxhero.com","created":1391718582000,"locale":"en_US","password":"33f655fa8127b5534f26ed46c807f6bd","enabled":true,"authorities":null,"domains":null,"metadata":null},{"name":"Marcela","lastName":"Beresiarte","notifyEmail":"mberesiarte@mxhero.com","userName":"mberesiarte@mxhero.com","created":1403722660000,"locale":"en_US","password":"4885084f621fc3f6507d0c8d732543f5","enabled":true,"authorities":null,"domains":null,"metadata":null},{"name":"jason","lastName":"powers","notifyEmail":"jason@mxhero.com","userName":"jason@mxhero.com","created":1412794400000,"locale":"en_US","password":"d41d8cd98f00b204e9800998ecf8427e","enabled":true,"authorities":null,"domains":null,"metadata":null},{"name":"Maxi","lastName":"Dello
38
+ Russo","notifyEmail":"maxidr@mxhero.com","userName":"maxidr@mxhero.com","created":1415629345000,"locale":"en_US","password":"d41d8cd98f00b204e9800998ecf8427e","enabled":true,"authorities":null,"domains":null,"metadata":null}]'
39
+ http_version:
40
+ recorded_at: Wed, 12 Nov 2014 17:18:22 GMT
41
+ recorded_with: VCR 2.5.0
@@ -341,6 +341,15 @@ class MxHeroAPITest < MiniTest::Unit::TestCase
341
341
  end
342
342
  end
343
343
 
344
+ def test_users_for_domain
345
+ VCR.use_cassette('users_for_domain') do
346
+ users = @api.users_for_domain('mxhero.com')
347
+ assert !users.nil?
348
+ assert !users.empty?
349
+ assert users.find { |user| user[:userName] == 'mxhero@mxhero.com' }
350
+ end
351
+ end
352
+
344
353
  def test_fetch_user
345
354
  VCR.use_cassette('fetch_user') do
346
355
  user = @api.fetch_user('mxhero@mxhero.com')
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: 0.1.35
4
+ version: 0.1.36
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: 2014-11-06 00:00:00.000000000 Z
13
+ date: 2014-11-12 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: vcr
@@ -125,6 +125,7 @@ files:
125
125
  - test/fixtures/api/update_rule.yml
126
126
  - test/fixtures/api/update_user.yml
127
127
  - test/fixtures/api/user_domains.yml
128
+ - test/fixtures/api/users_for_domain.yml
128
129
  - test/fixtures/api/validate_user_credential.yml
129
130
  - test/fixtures/domain.rb
130
131
  - test/helper.rb
@@ -204,6 +205,7 @@ test_files:
204
205
  - test/fixtures/api/update_rule.yml
205
206
  - test/fixtures/api/update_user.yml
206
207
  - test/fixtures/api/user_domains.yml
208
+ - test/fixtures/api/users_for_domain.yml
207
209
  - test/fixtures/api/validate_user_credential.yml
208
210
  - test/fixtures/domain.rb
209
211
  - test/helper.rb