From 7f69c47b941199aea34346a14d9732bb1d2e8e14 Mon Sep 17 00:00:00 2001 From: Coby Randquist Date: Mon, 10 Dec 2012 18:12:28 -0800 Subject: [PATCH] add failing test and update Mock list_users to filter based on tenant_id --- lib/fog/openstack/requests/identity/list_users.rb | 11 ++++++++++- tests/openstack/models/identity/tenant_tests.rb | 6 ++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/lib/fog/openstack/requests/identity/list_users.rb b/lib/fog/openstack/requests/identity/list_users.rb index e94f6f4df..71a7c0a86 100644 --- a/lib/fog/openstack/requests/identity/list_users.rb +++ b/lib/fog/openstack/requests/identity/list_users.rb @@ -14,8 +14,17 @@ module Fog class Mock def list_users(tenant_id = nil) + users = self.data[:users].values + + if tenant_id + users = users.select { + |user| user['tenantId'] == tenant_id + } + end + + Excon::Response.new( - :body => { 'users' => self.data[:users].values }, + :body => { 'users' => users }, :status => 200 ) end diff --git a/tests/openstack/models/identity/tenant_tests.rb b/tests/openstack/models/identity/tenant_tests.rb index e3e32311d..84796f35a 100644 --- a/tests/openstack/models/identity/tenant_tests.rb +++ b/tests/openstack/models/identity/tenant_tests.rb @@ -4,6 +4,12 @@ Shindo.tests("Fog::Identity[:openstack] | tenant", ['openstack']) do instance = Fog::Identity[:openstack].tenants.first instance.roles_for(0) end + + tests('#users').succeeds do + instance = Fog::Identity[:openstack].tenants.first + + instance.users.count != Fog::Identity[:openstack].users.count + end end tests('CRUD') do