diff --git a/lib/fog/openstack/models/compute/images.rb b/lib/fog/openstack/models/compute/images.rb index a5815c734..e560ba55f 100644 --- a/lib/fog/openstack/models/compute/images.rb +++ b/lib/fog/openstack/models/compute/images.rb @@ -13,10 +13,11 @@ module Fog def all data = service.list_images_detail.body['images'] - load(data) + images = load(data) if server self.replace(self.select {|image| image.server_id == server.id}) end + images end def get(image_id) diff --git a/tests/openstack/models/compute/images_tests.rb b/tests/openstack/models/compute/images_tests.rb new file mode 100644 index 000000000..b2dd3712f --- /dev/null +++ b/tests/openstack/models/compute/images_tests.rb @@ -0,0 +1,14 @@ +Shindo.tests("Fog::Compute[:openstack] | images collection", ['openstack']) do + + tests('success') do + + tests('#all').succeeds do + fog = Fog::Compute[:openstack] + test 'not nil' do + fog.images.all.is_a? Array + end + end + + end +end +