You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@deltacloud.apache.org by mf...@apache.org on 2013/03/26 18:58:00 UTC

[14/30] Client: Added VCR fixtures for testing

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_filtering_addresses_by_id_param.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_filtering_addresses_by_id_param.yml b/client/tests/fixtures/test_0002_supports_filtering_addresses_by_id_param.yml
new file mode 100644
index 0000000..77df4a6
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_filtering_addresses_by_id_param.yml
@@ -0,0 +1,156 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:15 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:15 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/addresses?id=192.168.0.1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.001249551773071289'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '426'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 0ae027ade49ba4f6c7ef2e5eb326d8e1
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:15 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<addresses>\n  <address
+        href='http://localhost:3001/api/addresses/192.168.0.1' id='192.168.0.1'>\n
+        \   <ip>192.168.0.1</ip>\n    <actions>\n      <link href='http://localhost:3001/api/addresses/192.168.0.1'
+        method='delete' rel='destroy' />\n      <link href='http://localhost:3001/api/addresses/192.168.0.1/associate'
+        method='post' rel='associate' />\n    </actions>\n  </address>\n</addresses>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:15 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/addresses?id=unknown
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0033969879150390625'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '65'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 993a714b729498253d29896e4dc5b169
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:15 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! '<?xml version=''1.0'' encoding=''utf-8'' ?>
+
+        <addresses>
+
+        </addresses>
+
+'
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:15 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_filtering_buckets_by_id_param.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_filtering_buckets_by_id_param.yml b/client/tests/fixtures/test_0002_supports_filtering_buckets_by_id_param.yml
new file mode 100644
index 0000000..60ddb43
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_filtering_buckets_by_id_param.yml
@@ -0,0 +1,156 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:16 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:16 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/buckets?id=bucket1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.00551605224609375'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '442'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - b966836385592fbfa26afdc2c0f3cea4
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:16 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<buckets>\n  <bucket href='http://localhost:3001/api/buckets/bucket1'
+        id='bucket1'>\n    <name>bucket1</name>\n    <size>3</size>\n    <blob href='http://localhost:3001/api/buckets/bucket1/blob1'
+        id='blob1'></blob>\n    <blob href='http://localhost:3001/api/buckets/bucket1/blob3'
+        id='blob3'></blob>\n    <blob href='http://localhost:3001/api/buckets/bucket1/blob2'
+        id='blob2'></blob>\n  </bucket>\n</buckets>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:16 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/buckets?id=unknown
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0035152435302734375'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '61'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - b557ea2ead06502f5680c925f4e7daf6
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:16 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! '<?xml version=''1.0'' encoding=''utf-8'' ?>
+
+        <buckets>
+
+        </buckets>
+
+'
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:16 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_filtering_firewalls_by_id_param.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_filtering_firewalls_by_id_param.yml b/client/tests/fixtures/test_0002_supports_filtering_firewalls_by_id_param.yml
new file mode 100644
index 0000000..e4b939c
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_filtering_firewalls_by_id_param.yml
@@ -0,0 +1,207 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      X-Deltacloud-Driver:
+      - ec2
+      Authorization:
+      - Basic QUtJQUpZT1FZTExPSVdONUxRM0E6UmEyVmlZYVlnb2NBSnFQQVFIeE1WVS9sMnNHR1UycGlmbVdUNHEzSA==
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - ec2
+      content-length:
+      - '2150'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 7b1418b5852df20853f413124d4ff440
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 15:30:05 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='ec2' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/firewalls'
+        rel='firewalls'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='user_data' rel='create'>\n
+        \     <param name='user_data' />\n    </feature>\n    <feature name='firewalls'
+        rel='create'>\n      <param name='firewalls' />\n    </feature>\n    <feature
+        name='authentication_key' rel='create'>\n      <param name='keyname' />\n
+        \   </feature>\n    <feature name='instance_count' rel='create'>\n      <param
+        name='instance_count' />\n    </feature>\n    <feature name='attach_snapshot'
+        rel='create'>\n      <param name='snapshot_id' />\n      <param name='device_name'
+        />\n    </feature>\n  </link>\n  <link href='http://localhost:3001/api/realms'
+        rel='realms'>\n  </link>\n  <link href='http://localhost:3001/api/storage_snapshots'
+        rel='storage_snapshots'>\n  </link>\n  <link href='http://localhost:3001/api/images'
+        rel='images'>\n    <feature name='owner_id' rel='index'>\n      <param name='owner_id'
+        />\n    </feature>\n    <feature name='image_name' rel='create'>\n      <param
+        name='name' />\n    </feature>\n    <feature name='image_description' rel='create'>\n
+        \     <param name='description' />\n    </feature>\n  </link>\n  <link href='http://localhost:3001/api/addresses'
+        rel='addresses'>\n  </link>\n  <link href='http://localhost:3001/api/drivers'
+        rel='drivers'>\n  </link>\n  <link href='http://localhost:3001/api/buckets'
+        rel='buckets'>\n    <feature name='bucket_location' rel='create'>\n      <param
+        name='location' />\n    </feature>\n  </link>\n  <link href='http://localhost:3001/api/keys'
+        rel='keys'>\n  </link>\n  <link href='http://localhost:3001/api/load_balancers'
+        rel='load_balancers'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 15:30:05 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/firewalls?id=img1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      X-Deltacloud-Driver:
+      - ec2
+      Authorization:
+      - Basic QUtJQUpZT1FZTExPSVdONUxRM0E6UmEyVmlZYVlnb2NBSnFQQVFIeE1WVS9sMnNHR1UycGlmbVdUNHEzSA==
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 404
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - ec2
+      content-length:
+      - '306'
+      x-content-type-options:
+      - nosniff
+      date:
+      - Wed, 06 Mar 2013 15:30:06 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<error status='404' url='/api/firewalls'>\n
+        \ <backend driver='ec2' provider='default'></backend>\n  <code>404</code>\n
+        \ <message><![CDATA[Not Found]]></message>\n  <backtrace></backtrace>\n  <request>\n
+        \   <param name='id'><![CDATA[\"img1\"]]></param>\n  </request>\n</error>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 15:30:06 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/firewalls?id=mfojtik
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      X-Deltacloud-Driver:
+      - ec2
+      Authorization:
+      - Basic QUtJQUpZT1FZTExPSVdONUxRM0E6UmEyVmlZYVlnb2NBSnFQQVFIeE1WVS9sMnNHR1UycGlmbVdUNHEzSA==
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.6615643501281738'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - ec2
+      content-length:
+      - '557'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 01ae612b52f3f38e824cbe2d53e510b9
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 15:30:52 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<firewalls>\n  <firewall
+        href='http://localhost:3001/api/firewalls/mfojtik' id='mfojtik'>\n    <actions>\n
+        \     <link href='http://localhost:3001/api/firewalls/mfojtik' id='mfojtik'
+        method='delete' rel='destroy' />\n      <link href='http://localhost:3001/api/firewalls/mfojtik/rules'
+        id='mfojtik' method='post' rel='add_rule' />\n    </actions>\n    <name><![CDATA[mfojtik]]></name>\n
+        \   <description><![CDATA[test1]]></description>\n    <owner_id>293787749884</owner_id>\n
+        \   <rules>\n    </rules>\n  </firewall>\n</firewalls>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 15:30:52 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/firewalls?id=unknown
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      X-Deltacloud-Driver:
+      - ec2
+      Authorization:
+      - Basic QUtJQUpZT1FZTExPSVdONUxRM0E6UmEyVmlZYVlnb2NBSnFQQVFIeE1WVS9sMnNHR1UycGlmbVdUNHEzSA==
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 404
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - ec2
+      content-length:
+      - '309'
+      x-content-type-options:
+      - nosniff
+      date:
+      - Wed, 06 Mar 2013 15:30:52 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<error status='404' url='/api/firewalls'>\n
+        \ <backend driver='ec2' provider='default'></backend>\n  <code>404</code>\n
+        \ <message><![CDATA[Not Found]]></message>\n  <backtrace></backtrace>\n  <request>\n
+        \   <param name='id'><![CDATA[\"unknown\"]]></param>\n  </request>\n</error>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 15:30:52 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_filtering_hardware_profiles_by_id_param.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_filtering_hardware_profiles_by_id_param.yml b/client/tests/fixtures/test_0002_supports_filtering_hardware_profiles_by_id_param.yml
new file mode 100644
index 0000000..9716c85
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_filtering_hardware_profiles_by_id_param.yml
@@ -0,0 +1,158 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:17 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:17 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/hardware_profiles?id=m1-small
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '4.9114227294921875e-05'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '522'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 68e59cdc72f08371aa2ca69c0bb9f5e6
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:17 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<hardware_profiles>\n  <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/m1-small' id='m1-small'>\n
+        \   <id>m1-small</id>\n    <name>m1-small</name>\n    <property kind='fixed'
+        name='cpu' unit='count' value='1' />\n    <property kind='fixed' name='memory'
+        unit='MB' value='1740.8' />\n    <property kind='fixed' name='storage' unit='GB'
+        value='160' />\n    <property kind='fixed' name='architecture' unit='label'
+        value='i386' />\n  </hardware_profile>\n</hardware_profiles>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:17 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/hardware_profiles?id=unknown
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '5.412101745605469e-05'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '81'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - fcddeb7ee587784149d5f4fb2ac4e181
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:17 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! '<?xml version=''1.0'' encoding=''utf-8'' ?>
+
+        <hardware_profiles>
+
+        </hardware_profiles>
+
+'
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:17 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_filtering_images_by_id_param.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_filtering_images_by_id_param.yml b/client/tests/fixtures/test_0002_supports_filtering_images_by_id_param.yml
new file mode 100644
index 0000000..69afddc
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_filtering_images_by_id_param.yml
@@ -0,0 +1,165 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:17 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:17 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/images?id=img1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0009505748748779297'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1252'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - fa7855e4aa71d9e28ceb79898c493a2e
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:17 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<images>\n  <image href='http://localhost:3001/api/images/img1'
+        id='img1'>\n    <name>img1</name>\n    <description>Fedora 10</description>\n
+        \   <owner_id>fedoraproject</owner_id>\n    <architecture>x86_64</architecture>\n
+        \   <state>AVAILABLE</state>\n    <creation_time>Thu Oct 25 14:27:53 CEST
+        2012</creation_time>\n    <hardware_profiles>\n      <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-small'
+        id='m1-small' rel='hardware_profile'></hardware_profile>\n      <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/m1-large' id='m1-large'
+        rel='hardware_profile'></hardware_profile>\n      <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-xlarge'
+        id='m1-xlarge' rel='hardware_profile'></hardware_profile>\n      <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/opaque' id='opaque' rel='hardware_profile'></hardware_profile>\n
+        \   </hardware_profiles>\n    <root_type>transient</root_type>\n    <actions>\n
+        \     <link href='http://localhost:3001/api/instances;image_id=img1' method='post'
+        rel='create_instance' />\n      <link href='http://localhost:3001/api/images/img1'
+        method='delete' rel='destroy_image' />\n    </actions>\n  </image>\n</images>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:17 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/images?id=unknown
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0011391639709472656'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '59'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - a32eec58f93e47f2be847c70ed10b7c7
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:17 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! '<?xml version=''1.0'' encoding=''utf-8'' ?>
+
+        <images>
+
+        </images>
+
+'
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:17 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_filtering_instances_by_id_param.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_filtering_instances_by_id_param.yml b/client/tests/fixtures/test_0002_supports_filtering_instances_by_id_param.yml
new file mode 100644
index 0000000..256ff00
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_filtering_instances_by_id_param.yml
@@ -0,0 +1,164 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:18 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:18 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/instances?id=inst1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.012407302856445312'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1235'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - f3da80eb40f1d277dd5cdf5cf4a96964
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:18 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<instances>\n  <instance
+        href='http://localhost:3001/api/instances/inst1' id='inst1'>\n    <name>MockUserInstance</name>\n
+        \   <owner_id>mockuser</owner_id>\n    <image href='http://localhost:3001/api/images/img3'
+        id='img3'></image>\n    <realm href='http://localhost:3001/api/realms/us'
+        id='us'></realm>\n    <state>RUNNING</state>\n    <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-small'
+        id='m1-small'>\n    </hardware_profile>\n    <actions>\n      <link href='http://localhost:3001/api/instances/inst1/reboot'
+        method='post' rel='reboot' />\n      <link href='http://localhost:3001/api/instances/inst1/stop'
+        method='post' rel='stop' />\n      <link href='http://localhost:3001/api/instances/inst1/run;id=inst1'
+        method='post' rel='run' />\n      <link href='http://localhost:3001/api/images;instance_id=inst1'
+        method='post' rel='create_image' />\n    </actions>\n    <public_addresses><address
+        type='hostname'>img1.inst1.public.com</address></public_addresses>\n    <private_addresses><address
+        type='hostname'>img1.inst1.private.com</address></private_addresses>\n    <storage_volumes></storage_volumes>\n
+        \   <authentication type='key'>\n    </authentication>\n  </instance>\n</instances>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:18 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/instances?id=unknown
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.012986898422241211'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '65'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 570ed38a6c6833d613702672e262c5ed
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:18 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! '<?xml version=''1.0'' encoding=''utf-8'' ?>
+
+        <instances>
+
+        </instances>
+
+'
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:18 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_filtering_keys_by_id_param.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_filtering_keys_by_id_param.yml b/client/tests/fixtures/test_0002_supports_filtering_keys_by_id_param.yml
new file mode 100644
index 0000000..23e5e4e
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_filtering_keys_by_id_param.yml
@@ -0,0 +1,178 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:18 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:18 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/keys?id=test-key
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0009126663208007812'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '2299'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - b5777985297c503ddf06535a89966e7c
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:18 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<keys>\n  <key href='http://localhost:3001/api/keys/test-key'
+        id='test-key' type='key'>\n    <name>test-key</name>\n    <actions>\n      <link
+        href='http://localhost:3001/api/keys/test-key' method='delete' rel='destroy'
+        />\n    </actions>\n    <fingerprint>5e:ce:b6:dc:59:3b:5c:93:f8:2e:9d:20:ce:60:ca:f5:0b:8a:66:93</fingerprint>\n
+        \   <pem>\n      <![CDATA[-----BEGIN RSA PRIVATE KEY-----\n      P9mRXOY7p2SmMzTGA6dwKxUp1NB8LNCIJ7sMGgAljsf=ToAi9qn9myx0EQJkE8FZ8FigUIMHS/T\n
+        \     8EwP7Ayjztb8dczbC6sb/Ep2UWcegNUVHimyHstaEaO/3dCaFwLJ/kw=laAfLQAVj4sIr8EHDTg\n
+        \     /BFkgmwTAYlS/ybkEfO9J7AJlY6/agwYzDWp+VGAD9rMsl2EkkbkWdoTX4Aob9RqyHaFi2m1AAw\n
+        \     2nhhqYpa1W4H=PJvyBcsXT3JynowSI8rTvo41oVwgSzv7YofGP0yV7BePm5pXZUUP2ZMByxbAUv\n
+        \     jvYRN/cMHbC6RW1ezR3uehCKdKFRXLTkoivoGj4ugrKgOwQP0HWI2orx/NW+6vYBxyCKiTJPZcK\n
+        \     x4BlRrlgvPST/7eaFv7/5Pqc3jWcp+bRC0qyYqQT9iq3gGNoc4ABFTI7zCeZ3p9tK8oje5fWo5m\n
+        \     54P32hVGeBjfqT/MrEYbY5gbJU6LejCj7x6Ozlp4iHQtrYNhiZ0iP0W3nRhVFQHamKx9aoBXyeg\n
+        \     LLGxBOr+TfaeeBXRkXiaMuWoyPSzUQwWmaJhm0sjHf7e/iKiUggZkOHQ/eF9MWI4M+4wvyepfS0\n
+        \     5vl2Ql/2rXv+Mx+c4cx1fjBhRrMPcGKmHGjNMjPyamTrlqueFRJYP45AYABP2U2AsNxoPfEG0qu\n
+        \     ki3DJOeC5x/03nODd=hQLzfdiQ3Yyt0GMw1EQN96cPaRtnjr3U4/ngxt0Fi6o7Z8E2+Uh5t4n8D\n
+        \     h0exXCOlOi9BDsJJz677mga/=5Sin/4Cw8=D8O1FHrWoA4ZQbWFE71F=/29PM90RHJf2bjgk2WF\n
+        \     piltKwVfGAxPOTcpmf=J+V3NHgT/EawMPHuEmwgNvx6smDBUgJaw0QYX/XG5xuiQ7HTkffJN6Cm\n
+        \     6D4WCJPZUvO1r+v=T9v7Qu4j9ue/l2WwVZuvQsVD67jpzq2R72EHna6rcwwyMcdAlwikP9nzJIL\n
+        \     Ale7hQAWHIEeAvAxtwxEMSfTkuLQcD=i0ORysmInDxdORw4ue2YThj2Id/jmUy6IiEqMYeVpiRq\n
+        \     6spq2ukt=+HHn6aBcYWbsD=e8/wOk0X0=ixZ0HF+xqYgsiiAk==rA4QEgrf+5djbIRZk1wegeIO\n
+        \     po/HZdF4qk32cKBjrrel2AzxfZeGxWNX7ObAE4HACXi3eSdcnm1fIHsoSC+1eDqFkfAIve3Dj/a\n
+        \     afZxrda6zzp3g6IPcHAqleCn7XNcS0v5tk4Fag8Wr5Wq7IipRfixAs+GESGiyugeRvZWN2mtDOL\n
+        \     CGHGGAbpvplw2vjdryVyj7P6bVcwLNgl0t1ufZBaGRBpyontJ1/UQQMew7e2lW=EZr/GxHke8HN\n
+        \     X5vIw9ssx8=LL00fxAuX9SRdcrtVyTYGXORXe9NnldXjBXmLPgwqJAjoBTjTBQxzrQOtdla=/yw\n
+        \     MsDlFWumPz1HAFw7R5zS2VCHrwkLDm=h7k3y+fUvYOx6IYf+MmevANuJT+2qY6s/ilTBNDYq6jJ\n
+        \     8LYpsBo4XpQm1ZleFCIyRldHfmaC5EMxkVQVqCV7X9I6JgzDEetUre25LQTpDa31M=ucVHNWlT+\n
+        \     6rjiLETNeMTWGcuIkLPe/PElmp4llKeFi6g2=E2AKeSDzNycr5eXHEnBuKfEnENXXo6n-----END
+        RSA PRIVATE KEY-----]]>\n    </pem>\n    <state></state>\n  </key>\n</keys>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:18 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/keys?id=unknown
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0008585453033447266'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '55'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 2fb4eb7676058e511b73644ff4369884
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:19 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! '<?xml version=''1.0'' encoding=''utf-8'' ?>
+
+        <keys>
+
+        </keys>
+
+'
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:19 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_filtering_realms_by_id.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_filtering_realms_by_id.yml b/client/tests/fixtures/test_0002_supports_filtering_realms_by_id.yml
new file mode 100644
index 0000000..018133c
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_filtering_realms_by_id.yml
@@ -0,0 +1,104 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:19 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:19 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/realms?id=eu
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.00010061264038085938'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '184'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - d7b06f0f8d745d59818cf2259b19af63
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:19 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<realms>\n  <realm href='http://localhost:3001/api/realms/eu'
+        id='eu'>\n    <name>Europe</name>\n    <state>AVAILABLE</state>\n  </realm>\n</realms>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:19 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_filtering_storage_snapshots_by_id_param.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_filtering_storage_snapshots_by_id_param.yml b/client/tests/fixtures/test_0002_supports_filtering_storage_snapshots_by_id_param.yml
new file mode 100644
index 0000000..06d6a70
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_filtering_storage_snapshots_by_id_param.yml
@@ -0,0 +1,155 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:19 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:19 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/storage_snapshots?id=snap1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0009429454803466797'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '369'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 660ce0a308d333fd4971e02b01839878
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:19 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<storage_snapshots>\n  <storage_snapshot
+        href='http://localhost:3001/api/storage_snapshots/snap1' id='snap1'>\n    <name>snap1</name>\n
+        \   <created>Wed Jul 29 18:15:24 UTC 2009</created>\n    <storage_volume href='http://localhost:3001/api/storage_volumes/vol1'
+        id='vol1'></storage_volume>\n  </storage_snapshot>\n</storage_snapshots>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:19 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/storage_snapshots?id=unknown
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0005507469177246094'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '81'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 02d75d472b481145bcc36b841e69e89b
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:19 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! '<?xml version=''1.0'' encoding=''utf-8'' ?>
+
+        <storage_snapshots>
+
+        </storage_snapshots>
+
+'
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:19 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_filtering_storage_volumes_by_id_param.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_filtering_storage_volumes_by_id_param.yml b/client/tests/fixtures/test_0002_supports_filtering_storage_volumes_by_id_param.yml
new file mode 100644
index 0000000..1331a83
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_filtering_storage_volumes_by_id_param.yml
@@ -0,0 +1,157 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:19 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:19 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/storage_volumes?id=vol1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0027489662170410156'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '419'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - c7cb59917b9fdfa7d780d37550def67b
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:19 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<storage_volumes>\n  <storage_volume
+        href='http://localhost:3001/api/storage_volumes/vol1' id='vol1'>\n    <created>Thu
+        Jul 30 14:35:11 UTC 2009</created>\n    <capacity unit='GB'>1</capacity>\n
+        \   <name>vol1</name>\n    <realm href='http://localhost:3001/api/realms/us'
+        id='us'></realm>\n    <realm_id>us</realm_id>\n    <state>AVAILABLE</state>\n
+        \ </storage_volume>\n</storage_volumes>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:19 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/storage_volumes?id=unknown
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0023488998413085938'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '77'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - fddd6a94c1e06c66ffa70d87512f89d9
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 08:56:19 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! '<?xml version=''1.0'' encoding=''utf-8'' ?>
+
+        <storage_volumes>
+
+        </storage_volumes>
+
+'
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 08:56:19 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_hardware_profiles.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_hardware_profiles.yml b/client/tests/fixtures/test_0002_supports_hardware_profiles.yml
new file mode 100644
index 0000000..fdb5d21
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_hardware_profiles.yml
@@ -0,0 +1,262 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 16:03:14 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 16:03:14 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/images/img1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0011546611785888672'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1195'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 78fce4b6967945208246f8ec7ccba460
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 16:03:14 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<image href='http://localhost:3001/api/images/img1'
+        id='img1'>\n  <name>img1</name>\n  <description>Fedora 10</description>\n
+        \ <owner_id>fedoraproject</owner_id>\n  <architecture>x86_64</architecture>\n
+        \ <state>AVAILABLE</state>\n  <creation_time>Thu Oct 25 14:27:53 CEST 2012</creation_time>\n
+        \ <hardware_profiles>\n    <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-small'
+        id='m1-small' rel='hardware_profile'></hardware_profile>\n    <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/m1-large' id='m1-large'
+        rel='hardware_profile'></hardware_profile>\n    <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-xlarge'
+        id='m1-xlarge' rel='hardware_profile'></hardware_profile>\n    <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/opaque' id='opaque' rel='hardware_profile'></hardware_profile>\n
+        \ </hardware_profiles>\n  <root_type>transient</root_type>\n  <actions>\n
+        \   <link href='http://localhost:3001/api/instances;image_id=img1' method='post'
+        rel='create_instance' />\n    <link href='http://localhost:3001/api/images/img1'
+        method='delete' rel='destroy_image' />\n  </actions>\n</image>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 16:03:14 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/hardware_profiles
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '3.7670135498046875e-05'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '2513'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 6fb008e6971780cc37ce300cb7ede981
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 16:03:14 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<hardware_profiles>\n  <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/m1-small' id='m1-small'>\n
+        \   <id>m1-small</id>\n    <name>m1-small</name>\n    <property kind='fixed'
+        name='cpu' unit='count' value='1' />\n    <property kind='fixed' name='memory'
+        unit='MB' value='1740.8' />\n    <property kind='fixed' name='storage' unit='GB'
+        value='160' />\n    <property kind='fixed' name='architecture' unit='label'
+        value='i386' />\n  </hardware_profile>\n  <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-large'
+        id='m1-large'>\n    <id>m1-large</id>\n    <name>m1-large</name>\n    <property
+        kind='range' name='cpu' unit='count' value='1'>\n      <param href='http://localhost:3001/api/instances'
+        method='post' name='hwp_cpu' operation='create' />\n      <range first='1'
+        last='6' />\n    </property>\n    <property kind='range' name='memory' unit='MB'
+        value='10240'>\n      <param href='http://localhost:3001/api/instances' method='post'
+        name='hwp_memory' operation='create' />\n      <range first='7680' last='15360'
+        />\n    </property>\n    <property kind='enum' name='storage' unit='GB' value='850'>\n
+        \     <param href='http://localhost:3001/api/instances' method='post' name='hwp_storage'
+        operation='create' />\n      <enum>\n        <entry value='850' />\n        <entry
+        value='1024' />\n      </enum>\n    </property>\n    <property kind='fixed'
+        name='architecture' unit='label' value='x86_64' />\n  </hardware_profile>\n
+        \ <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-xlarge'
+        id='m1-xlarge'>\n    <id>m1-xlarge</id>\n    <name>m1-xlarge</name>\n    <property
+        kind='fixed' name='cpu' unit='count' value='4' />\n    <property kind='range'
+        name='memory' unit='MB' value='12288'>\n      <param href='http://localhost:3001/api/instances'
+        method='post' name='hwp_memory' operation='create' />\n      <range first='12288'
+        last='32768' />\n    </property>\n    <property kind='enum' name='storage'
+        unit='GB' value='1024'>\n      <param href='http://localhost:3001/api/instances'
+        method='post' name='hwp_storage' operation='create' />\n      <enum>\n        <entry
+        value='1024' />\n        <entry value='2048' />\n        <entry value='4096'
+        />\n      </enum>\n    </property>\n    <property kind='fixed' name='architecture'
+        unit='label' value='x86_64' />\n  </hardware_profile>\n  <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/opaque' id='opaque'>\n    <id>opaque</id>\n
+        \   <name>opaque</name>\n  </hardware_profile>\n</hardware_profiles>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 16:03:14 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/hardware_profiles
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '9.989738464355469e-05'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '2513'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 6fb008e6971780cc37ce300cb7ede981
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 16:03:14 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<hardware_profiles>\n  <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/m1-small' id='m1-small'>\n
+        \   <id>m1-small</id>\n    <name>m1-small</name>\n    <property kind='fixed'
+        name='cpu' unit='count' value='1' />\n    <property kind='fixed' name='memory'
+        unit='MB' value='1740.8' />\n    <property kind='fixed' name='storage' unit='GB'
+        value='160' />\n    <property kind='fixed' name='architecture' unit='label'
+        value='i386' />\n  </hardware_profile>\n  <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-large'
+        id='m1-large'>\n    <id>m1-large</id>\n    <name>m1-large</name>\n    <property
+        kind='range' name='cpu' unit='count' value='1'>\n      <param href='http://localhost:3001/api/instances'
+        method='post' name='hwp_cpu' operation='create' />\n      <range first='1'
+        last='6' />\n    </property>\n    <property kind='range' name='memory' unit='MB'
+        value='10240'>\n      <param href='http://localhost:3001/api/instances' method='post'
+        name='hwp_memory' operation='create' />\n      <range first='7680' last='15360'
+        />\n    </property>\n    <property kind='enum' name='storage' unit='GB' value='850'>\n
+        \     <param href='http://localhost:3001/api/instances' method='post' name='hwp_storage'
+        operation='create' />\n      <enum>\n        <entry value='850' />\n        <entry
+        value='1024' />\n      </enum>\n    </property>\n    <property kind='fixed'
+        name='architecture' unit='label' value='x86_64' />\n  </hardware_profile>\n
+        \ <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-xlarge'
+        id='m1-xlarge'>\n    <id>m1-xlarge</id>\n    <name>m1-xlarge</name>\n    <property
+        kind='fixed' name='cpu' unit='count' value='4' />\n    <property kind='range'
+        name='memory' unit='MB' value='12288'>\n      <param href='http://localhost:3001/api/instances'
+        method='post' name='hwp_memory' operation='create' />\n      <range first='12288'
+        last='32768' />\n    </property>\n    <property kind='enum' name='storage'
+        unit='GB' value='1024'>\n      <param href='http://localhost:3001/api/instances'
+        method='post' name='hwp_storage' operation='create' />\n      <enum>\n        <entry
+        value='1024' />\n        <entry value='2048' />\n        <entry value='4096'
+        />\n      </enum>\n    </property>\n    <property kind='fixed' name='architecture'
+        unit='label' value='x86_64' />\n  </hardware_profile>\n  <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/opaque' id='opaque'>\n    <id>opaque</id>\n
+        \   <name>opaque</name>\n  </hardware_profile>\n</hardware_profiles>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 16:03:14 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_is_compatible_.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_is_compatible_.yml b/client/tests/fixtures/test_0002_supports_is_compatible_.yml
new file mode 100644
index 0000000..db81d4b
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_is_compatible_.yml
@@ -0,0 +1,116 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 15:41:26 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 15:41:26 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/images/img1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0013775825500488281'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1195'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - 78fce4b6967945208246f8ec7ccba460
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 15:41:26 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<image href='http://localhost:3001/api/images/img1'
+        id='img1'>\n  <name>img1</name>\n  <description>Fedora 10</description>\n
+        \ <owner_id>fedoraproject</owner_id>\n  <architecture>x86_64</architecture>\n
+        \ <state>AVAILABLE</state>\n  <creation_time>Thu Oct 25 14:27:53 CEST 2012</creation_time>\n
+        \ <hardware_profiles>\n    <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-small'
+        id='m1-small' rel='hardware_profile'></hardware_profile>\n    <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/m1-large' id='m1-large'
+        rel='hardware_profile'></hardware_profile>\n    <hardware_profile href='http://localhost:3001/api/hardware_profiles/m1-xlarge'
+        id='m1-xlarge' rel='hardware_profile'></hardware_profile>\n    <hardware_profile
+        href='http://localhost:3001/api/hardware_profiles/opaque' id='opaque' rel='hardware_profile'></hardware_profile>\n
+        \ </hardware_profiles>\n  <root_type>transient</root_type>\n  <actions>\n
+        \   <link href='http://localhost:3001/api/instances;image_id=img1' method='post'
+        rel='create_instance' />\n    <link href='http://localhost:3001/api/images/img1'
+        method='delete' rel='destroy_image' />\n  </actions>\n</image>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 15:41:26 GMT
+recorded_with: VCR 2.4.0

http://git-wip-us.apache.org/repos/asf/deltacloud/blob/0439fc75/client/tests/fixtures/test_0002_supports_snapshot_.yml
----------------------------------------------------------------------
diff --git a/client/tests/fixtures/test_0002_supports_snapshot_.yml b/client/tests/fixtures/test_0002_supports_snapshot_.yml
new file mode 100644
index 0000000..06f08a7
--- /dev/null
+++ b/client/tests/fixtures/test_0002_supports_snapshot_.yml
@@ -0,0 +1,202 @@
+---
+http_interactions:
+- request:
+    method: get
+    uri: http://localhost:3001/api
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '1368'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - e43d25244dc2b8ce1da6fa91131507ee
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 15:53:21 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<api driver='mock' version='1.1.1'>\n  <link href='http://localhost:3001/api/instance_states'
+        rel='instance_states'>\n  </link>\n  <link href='http://localhost:3001/api/storage_volumes'
+        rel='storage_volumes'>\n  </link>\n  <link href='http://localhost:3001/api/metrics'
+        rel='metrics'>\n  </link>\n  <link href='http://localhost:3001/api/hardware_profiles'
+        rel='hardware_profiles'>\n  </link>\n  <link href='http://localhost:3001/api/instances'
+        rel='instances'>\n    <feature name='metrics' rel='create'>\n      <param
+        name='metrics' />\n    </feature>\n    <feature name='realm_filter' rel='index'>\n
+        \     <param name='realm_id' />\n    </feature>\n    <feature name='user_name'
+        rel='create'>\n      <param name='name' />\n    </feature>\n    <feature name='authentication_key'
+        rel='create'>\n      <param name='keyname' />\n    </feature>\n  </link>\n
+        \ <link href='http://localhost:3001/api/realms' rel='realms'>\n  </link>\n
+        \ <link href='http://localhost:3001/api/storage_snapshots' rel='storage_snapshots'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/images' rel='images'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/addresses' rel='addresses'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/drivers' rel='drivers'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/buckets' rel='buckets'>\n
+        \ </link>\n  <link href='http://localhost:3001/api/keys' rel='keys'>\n  </link>\n</api>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 15:53:21 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/storage_volumes/vol1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.0019958019256591797'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '470'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - b576329100e8a3062f48d6f7e86c3935
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 15:53:21 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<storage_volume href='http://localhost:3001/api/storage_volumes/vol1'
+        id='vol1'>\n  <created>Thu Jul 30 14:35:11 UTC 2009</created>\n  <capacity
+        unit='GB'>1</capacity>\n  <name>vol1</name>\n  <realm href='http://localhost:3001/api/realms/us'
+        id='us'></realm>\n  <realm_id>us</realm_id>\n  <state>IN-USE</state>\n  <mount>\n
+        \   <instance href='http://localhost:3001/api/instances/inst1' id='inst1'></instance>\n
+        \ </mount>\n</storage_volume>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 15:53:21 GMT
+- request:
+    method: post
+    uri: http://localhost:3001/api/storage_snapshots?volume_id=vol1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 201
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      location:
+      - http://localhost:3001/api/storage_snapshots/store_snapshot_1362585215
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '375'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - cb03cabeb5ac2dc91cd15bef06c7d429
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 15:53:35 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<storage_snapshot href='http://localhost:3001/api/storage_snapshots/store_snapshot_1362585215'
+        id='store_snapshot_1362585215'>\n  <name>store_snapshot_1362585215</name>\n
+        \ <created>2013-03-06 16:53:35 +0100</created>\n  <storage_volume href='http://localhost:3001/api/storage_volumes/vol1'
+        id='vol1'></storage_volume>\n</storage_snapshot>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 15:53:35 GMT
+- request:
+    method: get
+    uri: http://localhost:3001/api/storage_volumes/vol1
+    body:
+      encoding: US-ASCII
+      string: ''
+    headers:
+      Accept:
+      - application/xml
+      Authorization:
+      - Basic bW9ja3VzZXI6bW9ja3Bhc3N3b3Jk
+      User-Agent:
+      - Faraday v0.8.6
+  response:
+    status:
+      code: 200
+      message: 
+    headers:
+      content-type:
+      - application/xml
+      x-backend-runtime:
+      - '0.001626729965209961'
+      server:
+      - Apache-Deltacloud/1.1.1
+      x-deltacloud-driver:
+      - mock
+      content-length:
+      - '470'
+      x-content-type-options:
+      - nosniff
+      etag:
+      - b576329100e8a3062f48d6f7e86c3935
+      cache-control:
+      - max-age=0, private, must-revalidate
+      date:
+      - Wed, 06 Mar 2013 15:53:35 GMT
+      connection:
+      - close
+    body:
+      encoding: US-ASCII
+      string: ! "<?xml version='1.0' encoding='utf-8' ?>\n<storage_volume href='http://localhost:3001/api/storage_volumes/vol1'
+        id='vol1'>\n  <created>Thu Jul 30 14:35:11 UTC 2009</created>\n  <capacity
+        unit='GB'>1</capacity>\n  <name>vol1</name>\n  <realm href='http://localhost:3001/api/realms/us'
+        id='us'></realm>\n  <realm_id>us</realm_id>\n  <state>IN-USE</state>\n  <mount>\n
+        \   <instance href='http://localhost:3001/api/instances/inst1' id='inst1'></instance>\n
+        \ </mount>\n</storage_volume>\n"
+    http_version: 
+  recorded_at: Wed, 06 Mar 2013 15:53:35 GMT
+recorded_with: VCR 2.4.0