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 2012/08/20 10:53:46 UTC
[48/54] [partial] Core: Removed deprecated tests from server/tests
directory
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/google/fixtures/test_0002_can_create_a_new_blob_with_HTTP_POST.yml
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/google/fixtures/test_0002_can_create_a_new_blob_with_HTTP_POST.yml b/server/tests/deprecated/drivers/google/fixtures/test_0002_can_create_a_new_blob_with_HTTP_POST.yml
deleted file mode 100644
index 780a5e2..0000000
--- a/server/tests/deprecated/drivers/google/fixtures/test_0002_can_create_a_new_blob_with_HTTP_POST.yml
+++ /dev/null
@@ -1,593 +0,0 @@
----
-http_interactions:
-- request:
- method: put
- uri: https://testbucki2rpux3wdelmegoogel.commondatastorage.googleapis.com/testblobk1ds91kVdelmegoogel
- body:
- string: !binary |
- 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
- fUATHEYSownTpHQJE077Yv4Whn2pCF/DpH3B+2+aRMP78d6b/SgH94S/EzMz
- xzI/DUy03Er3Hiac2gZ/m8trkBpc00S5EM0zEUJE2PC3WqleZsNU9R69n6b/
- MXDLbXqZjjUtMujAiMfutvaqz+m8/Q5Z/nt3SMfVV3t14pZ2kq83g8Mj8qtX
- d2hxMjz0zHN6qUR4//XvfY8WMETZ9h46ooVt76HDsrlMdM1E2DZ0rZKVS/tk
- 5579sqqvT0fkPnz1+7Sw4X5kdePfG0QsO5VFjfi+3aZ8PJZX/04mbFnXXpA2
- 3YVxcn+2mfZlW1RNoiYnG2hk+3YYc50XduxU4nZoVoLZ6jh+B2v0czFTTGGb
- 6QMTTqSLL07sN/1isOT85LnYH56+ykxhFcV8mUa/VHFNnG+mzYreB2ksU6VO
- CadigVhDUsKSZqTJpH3Be4a/JZMCJky5tC/hsnAfZj/uA38L5vr4e4KkYF84
- QlVt2pepUttEz4mumx8XeF3m2m/5ryVaL+XOr7R9qvVK9V7pfmq5zlT3SOrI
- ug3ifuFPZeOBw7Lhu9+R9quuKskh1puoc24y/7L/5Xv/Q/7mRz/RwnTtey8J
- BPPSc7bI737w+mDxA2PB/uuUpH3xjo/rZesZp+ntiLJB1JALFeVtXr9Ob8c1
- zLLn4OEgQmeOf2PvPi1v3Z0d3o+5RGLO8rMtbytd77K9x32jlhSCvHiVRZwR
- tgogRxrm5ZyPKFd00vdmiwbOFfiyM316EH3oiCTNDYMvKNPfJvzFUa0cImKG
- L3bTnyj6ZWNGs+GLfqr7IHWOgKh6h4BEI6ph0SkXlQtHPsPnV/q7QIQInfTL
- yVCl/eGIbbl+Z1Pde7l7Dg+YCBN+LdHXFt1vIsHl7nWqaHC03KnWK9V7Pa7D
- iPXso2tTfqZefpUM/tYdsuS2O/Rk7R1znLYDwjU4MiL3P/yYPPfqDrnqovP1
- 9p6uTi1RtQABe/iZ53SUDM2hG/wBBbhGmJ8+PiJJdeyZanlCHYvrvufcLXof
- zjN93OaCqaJsGzvzkvAHB9ejaXTBCRuiaL9x1RX6EfOE/psSNDyafGOY6xNJ
- dM1k8Ji0HTMWYJQLEtai+TJchplnFLMPoAw84vioPKHcLadu1BE8CGF0wnbT
- PHro+HE9ubuZJcHcYyqZ1FJmyscvDCTwHdCT0l8flAHx+/mvti2KDyt88GPE
- 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
- gg==
-
- headers:
- Content-Length:
- - 24436
- x-goog-meta-foo:
- - bar
- Authorization:
- - GOOG1 GOOGXKQLYTEOZTILUBZ5:0yoO46mDSvQuaeJTOjWuFXQC1hc=
- x-goog-meta-author:
- - deltacloud
- Content-Type:
- - text/html
- Date:
- - Thu, 28 Jun 2012 13:51:52 +0000
- response:
- status:
- code: 200
- message:
- headers:
- Content-Length:
- - "0"
- Server:
- - HTTP Upload Server Built on Jun 14 2012 02:12:09 (1339665129)
- Expires:
- - Fri, 01 Jan 1990 00:00:00 GMT
- Content-Type:
- - text/html; charset=UTF-8
- Pragma:
- - no-cache
- Date:
- - Thu, 28 Jun 2012 13:51:55 GMT
- ETag:
- - "\"6051b502c4281855ff32dc3e924fe3b0\""
- x-goog-sequence-number:
- - "1"
- Cache-Control:
- - no-cache, no-store, must-revalidate
- body:
- string: ""
- http_version:
- recorded_at: Thu, 28 Jun 2012 13:51:55 GMT
-recorded_with: VCR 2.2.2
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/google/fixtures/test_0003_can_retrieve_named_bucket_details.yml
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/google/fixtures/test_0003_can_retrieve_named_bucket_details.yml b/server/tests/deprecated/drivers/google/fixtures/test_0003_can_retrieve_named_bucket_details.yml
deleted file mode 100644
index da7b10a..0000000
--- a/server/tests/deprecated/drivers/google/fixtures/test_0003_can_retrieve_named_bucket_details.yml
+++ /dev/null
@@ -1,34 +0,0 @@
----
-http_interactions:
-- request:
- method: get
- uri: https://testbucki2rpux3wdelmegoogel.commondatastorage.googleapis.com/
- body:
- string: ""
- headers:
- Authorization:
- - GOOG1 GOOGXKQLYTEOZTILUBZ5:rGTQT5CB3yfeXWfHMO2PPfRS+nU=
- Date:
- - Thu, 28 Jun 2012 13:51:55 +0000
- response:
- status:
- code: 200
- message:
- headers:
- Content-Length:
- - "530"
- Server:
- - HTTP Upload Server Built on Jun 14 2012 02:12:09 (1339665129)
- Expires:
- - Thu, 28 Jun 2012 13:51:56 GMT
- Content-Type:
- - application/xml; charset=UTF-8
- Date:
- - Thu, 28 Jun 2012 13:51:56 GMT
- Cache-Control:
- - private, max-age=0
- body:
- string: <?xml version='1.0' encoding='UTF-8'?><ListBucketResult xmlns='http://doc.s3.amazonaws.com/2006-03-01'><Name>testbucki2rpux3wdelmegoogel</Name><Prefix></Prefix><Marker></Marker><IsTruncated>false</IsTruncated><Contents><Key>testblobk1ds91kVdelmegoogel</Key><LastModified>2012-06-28T13:51:55.477Z</LastModified><ETag>"6051b502c4281855ff32dc3e924fe3b0"</ETag><Size>24436</Size><StorageClass>STANDARD</StorageClass><Owner><ID>00b4903a9772c5a80c691066edef0ac07b267f576a2d11bbfc5bf1d2c7a2b8fd</ID></Owner></Contents></ListBucketResult>
- http_version:
- recorded_at: Thu, 28 Jun 2012 13:51:56 GMT
-recorded_with: VCR 2.2.2
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/google/fixtures/test_0004_can_retrieve_details_of_a_named_blob.yml
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/google/fixtures/test_0004_can_retrieve_details_of_a_named_blob.yml b/server/tests/deprecated/drivers/google/fixtures/test_0004_can_retrieve_details_of_a_named_blob.yml
deleted file mode 100644
index 1cef7c2..0000000
--- a/server/tests/deprecated/drivers/google/fixtures/test_0004_can_retrieve_details_of_a_named_blob.yml
+++ /dev/null
@@ -1,46 +0,0 @@
----
-http_interactions:
-- request:
- method: head
- uri: https://testbucki2rpux3wdelmegoogel.commondatastorage.googleapis.com/testblobk1ds91kVdelmegoogel
- body:
- string: ""
- headers:
- Authorization:
- - GOOG1 GOOGXKQLYTEOZTILUBZ5:7kE7uJL9uDHqE9qOLvC1UYX2bq0=
- Date:
- - Thu, 28 Jun 2012 13:51:56 +0000
- response:
- status:
- code: 200
- message:
- headers:
- Content-Length:
- - "24436"
- Accept-Ranges:
- - bytes
- Server:
- - HTTP Upload Server Built on Jun 14 2012 02:12:09 (1339665129)
- x-goog-meta-foo:
- - bar
- Expires:
- - Thu, 28 Jun 2012 13:51:57 GMT
- x-goog-meta-author:
- - deltacloud
- Content-Type:
- - text/html
- Last-Modified:
- - Thu, 28 Jun 2012 13:51:55 GMT
- Date:
- - Thu, 28 Jun 2012 13:51:57 GMT
- Cache-Control:
- - private, max-age=0
- ETag:
- - "\"6051b502c4281855ff32dc3e924fe3b0\""
- x-goog-sequence-number:
- - "1"
- body:
- string: ""
- http_version:
- recorded_at: Thu, 28 Jun 2012 13:51:57 GMT
-recorded_with: VCR 2.2.2
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/google/fixtures/test_0005_can_retrieve_named_blob_metadata.yml
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/google/fixtures/test_0005_can_retrieve_named_blob_metadata.yml b/server/tests/deprecated/drivers/google/fixtures/test_0005_can_retrieve_named_blob_metadata.yml
deleted file mode 100644
index 5821e49..0000000
--- a/server/tests/deprecated/drivers/google/fixtures/test_0005_can_retrieve_named_blob_metadata.yml
+++ /dev/null
@@ -1,46 +0,0 @@
----
-http_interactions:
-- request:
- method: head
- uri: https://testbucki2rpux3wdelmegoogel.commondatastorage.googleapis.com/testblobk1ds91kVdelmegoogel
- body:
- string: ""
- headers:
- Authorization:
- - GOOG1 GOOGXKQLYTEOZTILUBZ5:VLj31PaC2zrYNSrBqrVWVcFR49I=
- Date:
- - Thu, 28 Jun 2012 13:51:57 +0000
- response:
- status:
- code: 200
- message:
- headers:
- Content-Length:
- - "24436"
- Accept-Ranges:
- - bytes
- Server:
- - HTTP Upload Server Built on Jun 14 2012 02:12:09 (1339665129)
- x-goog-meta-foo:
- - bar
- Expires:
- - Thu, 28 Jun 2012 13:51:58 GMT
- x-goog-meta-author:
- - deltacloud
- Content-Type:
- - text/html
- Last-Modified:
- - Thu, 28 Jun 2012 13:51:55 GMT
- Date:
- - Thu, 28 Jun 2012 13:51:58 GMT
- Cache-Control:
- - private, max-age=0
- ETag:
- - "\"6051b502c4281855ff32dc3e924fe3b0\""
- x-goog-sequence-number:
- - "1"
- body:
- string: ""
- http_version:
- recorded_at: Thu, 28 Jun 2012 13:51:58 GMT
-recorded_with: VCR 2.2.2
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/google/fixtures/test_0006_can_update_blob_metadata.yml
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/google/fixtures/test_0006_can_update_blob_metadata.yml b/server/tests/deprecated/drivers/google/fixtures/test_0006_can_update_blob_metadata.yml
deleted file mode 100644
index ae7b73c..0000000
--- a/server/tests/deprecated/drivers/google/fixtures/test_0006_can_update_blob_metadata.yml
+++ /dev/null
@@ -1,46 +0,0 @@
----
-http_interactions:
-- request:
- method: put
- uri: https://testbucki2rpux3wdelmegoogel.commondatastorage.googleapis.com/testblobk1ds91kVdelmegoogel
- body:
- string: ""
- headers:
- x-goog-copy-source:
- - /testbucki2rpux3wdelmegoogel/testblobk1ds91kVdelmegoogel
- x-goog-metadata-directive:
- - REPLACE
- Authorization:
- - GOOG1 GOOGXKQLYTEOZTILUBZ5:PxARsMZjsd/7EloIXv4FqJu+KQA=
- x-goog-meta-author:
- - ApacheDeltacloud
- x-goog-meta-oof:
- - rab
- Date:
- - Thu, 28 Jun 2012 13:51:58 +0000
- response:
- status:
- code: 200
- message:
- headers:
- Content-Length:
- - "175"
- Server:
- - HTTP Upload Server Built on Jun 14 2012 02:12:09 (1339665129)
- Expires:
- - Fri, 01 Jan 1990 00:00:00 GMT
- Content-Type:
- - text/html; charset=UTF-8
- Pragma:
- - no-cache
- Date:
- - Thu, 28 Jun 2012 13:51:59 GMT
- ETag:
- - "\"6051b502c4281855ff32dc3e924fe3b0\""
- Cache-Control:
- - no-cache, no-store, must-revalidate
- body:
- string: <?xml version='1.0' encoding='UTF-8'?><CopyObjectResult><LastModified>2012-06-28T13:51:55.477Z</LastModified><ETag>"6051b502c4281855ff32dc3e924fe3b0"</ETag></CopyObjectResult>
- http_version:
- recorded_at: Thu, 28 Jun 2012 13:51:59 GMT
-recorded_with: VCR 2.2.2
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/google/fixtures/test_0007_can_delete_blob.yml
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/google/fixtures/test_0007_can_delete_blob.yml b/server/tests/deprecated/drivers/google/fixtures/test_0007_can_delete_blob.yml
deleted file mode 100644
index 2b73017..0000000
--- a/server/tests/deprecated/drivers/google/fixtures/test_0007_can_delete_blob.yml
+++ /dev/null
@@ -1,32 +0,0 @@
----
-http_interactions:
-- request:
- method: delete
- uri: https://testbucki2rpux3wdelmegoogel.commondatastorage.googleapis.com/testblobk1ds91kVdelmegoogel
- body:
- string: ""
- headers:
- Authorization:
- - GOOG1 GOOGXKQLYTEOZTILUBZ5:pBRSCxxl46XfP4llbg6Jedh9wXY=
- Date:
- - Thu, 28 Jun 2012 13:51:59 +0000
- response:
- status:
- code: 204
- message:
- headers:
- Content-Length:
- - "0"
- Server:
- - HTTP Upload Server Built on Jun 14 2012 02:12:09 (1339665129)
- Expires:
- - Thu, 28 Jun 2012 13:52:00 GMT
- Date:
- - Thu, 28 Jun 2012 13:52:00 GMT
- Cache-Control:
- - private, max-age=0
- body:
- string: ""
- http_version:
- recorded_at: Thu, 28 Jun 2012 13:52:00 GMT
-recorded_with: VCR 2.2.2
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/google/fixtures/test_0008_can_delete_bucket.yml
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/google/fixtures/test_0008_can_delete_bucket.yml b/server/tests/deprecated/drivers/google/fixtures/test_0008_can_delete_bucket.yml
deleted file mode 100644
index 42bafd1..0000000
--- a/server/tests/deprecated/drivers/google/fixtures/test_0008_can_delete_bucket.yml
+++ /dev/null
@@ -1,32 +0,0 @@
----
-http_interactions:
-- request:
- method: delete
- uri: https://testbucki2rpux3wdelmegoogel.commondatastorage.googleapis.com/
- body:
- string: ""
- headers:
- Authorization:
- - GOOG1 GOOGXKQLYTEOZTILUBZ5:fP5JoD+ItmgUWZ9uXYkiKn6SoGk=
- Date:
- - Thu, 28 Jun 2012 13:52:00 +0000
- response:
- status:
- code: 204
- message:
- headers:
- Content-Length:
- - "0"
- Server:
- - HTTP Upload Server Built on Jun 14 2012 02:12:09 (1339665129)
- Expires:
- - Thu, 28 Jun 2012 13:52:02 GMT
- Date:
- - Thu, 28 Jun 2012 13:52:02 GMT
- Cache-Control:
- - private, max-age=0
- body:
- string: ""
- http_version:
- recorded_at: Thu, 28 Jun 2012 13:52:02 GMT
-recorded_with: VCR 2.2.2
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/google/fixtures/test_0015_must_re-validate_the_driver_credentials_when_using_force_auth_parameter_in_URL.yml
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/google/fixtures/test_0015_must_re-validate_the_driver_credentials_when_using_force_auth_parameter_in_URL.yml b/server/tests/deprecated/drivers/google/fixtures/test_0015_must_re-validate_the_driver_credentials_when_using_force_auth_parameter_in_URL.yml
deleted file mode 100644
index 5eb56b1..0000000
--- a/server/tests/deprecated/drivers/google/fixtures/test_0015_must_re-validate_the_driver_credentials_when_using_force_auth_parameter_in_URL.yml
+++ /dev/null
@@ -1,34 +0,0 @@
----
-http_interactions:
-- request:
- method: get
- uri: https://commondatastorage.googleapis.com/
- body:
- string: ""
- headers:
- Authorization:
- - GOOG1 GOOGXKQLYTEOZTILUBZ5:MTx1ZUAYGF2chkSV97+H04qAFMo=
- Date:
- - Thu, 28 Jun 2012 13:52:02 +0000
- response:
- status:
- code: 200
- message:
- headers:
- Content-Length:
- - "437"
- Server:
- - HTTP Upload Server Built on Jun 14 2012 02:12:09 (1339665129)
- Expires:
- - Thu, 28 Jun 2012 13:52:03 GMT
- Content-Type:
- - application/xml; charset=UTF-8
- Date:
- - Thu, 28 Jun 2012 13:52:03 GMT
- Cache-Control:
- - private, max-age=0
- body:
- string: <?xml version='1.0' encoding='UTF-8'?><ListAllMyBucketsResult xmlns='http://doc.s3.amazonaws.com/2006-03-01'><Owner><ID>00b4903a97866666a0d78ccdcf31c5015cac5d76415d1d23aa190f3c14975a1f</ID></Owner><Buckets><Bucket><Name>marios_bucket</Name><CreationDate>2011-08-16T11:05:02.262Z</CreationDate></Bucket><Bucket><Name>usmariosnewbucket</Name><CreationDate>2011-09-19T12:34:31.218Z</CreationDate></Bucket></Buckets></ListAllMyBucketsResult>
- http_version:
- recorded_at: Thu, 28 Jun 2012 13:52:03 GMT
-recorded_with: VCR 2.2.2
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/mock/api_test.rb
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/mock/api_test.rb b/server/tests/deprecated/drivers/mock/api_test.rb
deleted file mode 100644
index 860c6d5..0000000
--- a/server/tests/deprecated/drivers/mock/api_test.rb
+++ /dev/null
@@ -1,10 +0,0 @@
-$:.unshift File.join(File.dirname(__FILE__), '..', '..', '..')
-require 'tests/drivers/mock/common'
-
-describe 'Deltacloud API' do
-
- include Deltacloud::Test
-
- eval File.read('tests/minitest_common_api_test.rb')
-
-end
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/mock/buckets_test.rb
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/mock/buckets_test.rb b/server/tests/deprecated/drivers/mock/buckets_test.rb
deleted file mode 100644
index 97ef445..0000000
--- a/server/tests/deprecated/drivers/mock/buckets_test.rb
+++ /dev/null
@@ -1,195 +0,0 @@
-$:.unshift File.join(File.dirname(__FILE__), '..', '..', '..')
-require 'tests/drivers/mock/common'
-
-describe 'Deltacloud API buckets' do
- include Deltacloud::Test
-
- it 'must advertise have the buckets collection in API entrypoint' do
- get root_url
- (xml_response/'api/link[@rel=buckets]').wont_be_empty
- end
-
- it 'must require authentication to access the "bucket" collection' do
- get collection_url(:buckets)
- last_response.status.must_equal 401
- end
-
- it 'should respond with HTTP_OK when accessing the :buckets collection with authentication' do
- authenticate
- get collection_url(:buckets)
- last_response.status.must_equal 200
- end
-
- it 'should support the JSON media type' do
- authenticate
- header 'Accept', 'application/json'
- get collection_url(:buckets)
- last_response.status.must_equal 200
- last_response.headers['Content-Type'].must_equal 'application/json'
- end
-
- it 'must include the ETag in HTTP headers' do
- authenticate
- get collection_url(:buckets)
- last_response.headers['ETag'].wont_be_nil
- end
-
- it 'must have the "buckets" element on top level' do
- authenticate
- get collection_url(:buckets)
- xml_response.root.name.must_equal 'buckets'
- end
-
- it 'must have some "bucket" elements inside "buckets"' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').wont_be_empty
- end
-
- it 'must provide the :id attribute for each bucket in collection' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- r[:id].wont_be_nil
- end
- end
-
- it 'must include the :href attribute for each "bucket" element in collection' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- r[:href].wont_be_nil
- end
- end
-
- it 'must use the absolute URL in each :href attribute' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- r[:href].must_match /^http/
- end
- end
-
- it 'must have the URL ending with the :id of the bucket' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- r[:href].must_match /#{r[:id]}$/
- end
- end
-
- it 'must return the list of valid parameters for the :index action' do
- authenticate
- options collection_url(:buckets) + '/index'
- last_response.headers['Allow'].wont_be_nil
- end
-
- it 'must have the "name" element defined for each bucket in collection' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- (r/'name').wont_be_nil
- end
- end
-
- it 'must have the "state" element defined for each bucket in collection' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- (r/'state').wont_be_nil
- end
- end
-
- it 'must return the full "bucket" when following the URL in bucket element' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- get collection_url(:buckets) + '/' + r[:id]
- last_response.status.must_equal 200
- end
- end
-
- it 'must have the "name" element for the bucket and it should match with the one in collection' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- get collection_url(:buckets) + '/' + r[:id]
- (xml_response/'name').wont_be_empty
- (xml_response/'name').first.text.must_equal((r/'name').first.text)
- end
- end
-
- it 'must have the "size" element for the bucket and it should match with the one in collection' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- get collection_url(:buckets) + '/' + r[:id]
- (xml_response/'size').wont_be_empty
- (xml_response/'size').first.text.must_equal((r/'size').first.text)
- end
- end
-
- it 'must have the "blob" elements for the bucket and it should match with the ones in collection' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- get collection_url(:buckets) + '/' + r[:id]
- (xml_response/'bucket/blob').wont_be_empty
- (xml_response/'bucket/blob').each do |b|
- b[:id].wont_be_nil
- b[:href].wont_be_nil
- b[:href].must_match /^http/
- b[:href].must_match /#{r[:id]}\/#{b[:id]}$/
- end
- end
- end
-
- it 'must have the "blob" elements for the bucket and it should match with the ones in collection' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- get collection_url(:buckets) + '/' + r[:id]
- (xml_response/'bucket/blob').wont_be_empty
- (xml_response/'bucket/blob').each do |b|
- b[:id].wont_be_nil
- b[:href].wont_be_nil
- b[:href].must_match /^http/
- b[:href].must_match /#{r[:id]}\/#{b[:id]}$/
- end
- end
- end
-
- it 'must allow to get all blobs details and the details should be set correctly' do
- authenticate
- get collection_url(:buckets)
- (xml_response/'buckets/bucket').each do |r|
- get collection_url(:buckets) + '/' + r[:id]
- (xml_response/'bucket/blob').each do |b|
- get collection_url(:buckets) + '/' + r[:id] + '/' + b[:id]
- xml_response.root.name.must_equal 'blob'
- xml_response.root[:id].must_equal b[:id]
- (xml_response/'bucket').wont_be_empty
- (xml_response/'bucket').size.must_equal 1
- (xml_response/'bucket').first.text.wont_be_nil
- (xml_response/'bucket').first.text.must_equal r[:id]
- (xml_response/'content_length').wont_be_empty
- (xml_response/'content_length').size.must_equal 1
- (xml_response/'content_length').first.text.must_match /^(\d+)$/
- (xml_response/'content_type').wont_be_empty
- (xml_response/'content_type').size.must_equal 1
- (xml_response/'content_type').first.text.wont_be_empty
- (xml_response/'last_modified').wont_be_empty
- (xml_response/'last_modified').size.must_equal 1
- (xml_response/'last_modified').first.text.wont_be_empty
- (xml_response/'content').wont_be_empty
- (xml_response/'content').size.must_equal 1
- (xml_response/'content').first[:rel].wont_be_nil
- (xml_response/'content').first[:rel].must_equal 'blob_content'
- (xml_response/'content').first[:href].wont_be_nil
- (xml_response/'content').first[:href].must_match /^http/
- (xml_response/'content').first[:href].must_match /\/content$/
- end
- end
- end
-
-end
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/mock/common.rb
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/mock/common.rb b/server/tests/deprecated/drivers/mock/common.rb
deleted file mode 100644
index d39300a..0000000
--- a/server/tests/deprecated/drivers/mock/common.rb
+++ /dev/null
@@ -1,7 +0,0 @@
-ENV['API_DRIVER'] = 'mock'
-ENV['TESTS_API_USERNAME'] = 'mockuser'
-ENV['TESTS_API_PASSWORD'] = 'mockpassword'
-
-
-$:.unshift File.join(File.dirname(__FILE__), '..', '..', '..')
-require 'tests/minitest_common'
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/mock/drivers_test.rb
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/mock/drivers_test.rb b/server/tests/deprecated/drivers/mock/drivers_test.rb
deleted file mode 100644
index e110446..0000000
--- a/server/tests/deprecated/drivers/mock/drivers_test.rb
+++ /dev/null
@@ -1,123 +0,0 @@
-$:.unshift File.join(File.dirname(__FILE__), '..', '..', '..')
-require 'tests/drivers/mock/common'
-
-describe 'Deltacloud API drivers' do
- include Deltacloud::Test
-
- it 'must advertise have the drivers collection in API entrypoint' do
- get root_url
- (xml_response/'api/link[@rel=drivers]').wont_be_empty
- end
-
- it 'must not require authentication to access the "driver" collection' do
- get collection_url(:drivers)
- last_response.status.must_equal 200
- end
-
- it 'should respond with HTTP_OK when accessing the :drivers collection with authentication' do
- get collection_url(:drivers)
- last_response.status.must_equal 200
- end
-
- it 'should support the JSON media type' do
- header 'Accept', 'application/json'
- get collection_url(:drivers)
- last_response.status.must_equal 200
- last_response.headers['Content-Type'].must_equal 'application/json'
- end
-
- it 'must include the ETag in HTTP headers' do
- get collection_url(:drivers)
- last_response.headers['ETag'].wont_be_nil
- end
-
- it 'must have the "drivers" element on top level' do
- get collection_url(:drivers)
- xml_response.root.name.must_equal 'drivers'
- end
-
- it 'must have some "driver" elements inside "drivers"' do
- get collection_url(:drivers)
- (xml_response/'drivers/driver').wont_be_empty
- end
-
- it 'must provide the :id attribute for each driver in collection' do
- get collection_url(:drivers)
- (xml_response/'drivers/driver').each do |r|
- r[:id].wont_be_nil
- end
- end
-
- it 'must include the :href attribute for each "driver" element in collection' do
- get collection_url(:drivers)
- (xml_response/'drivers/driver').each do |r|
- r[:href].wont_be_nil
- end
- end
-
- it 'must use the absolute URL in each :href attribute' do
- get collection_url(:drivers)
- (xml_response/'drivers/driver').each do |r|
- r[:href].must_match /^http/
- end
- end
-
- it 'must have the URL ending with the :id of the driver' do
- get collection_url(:drivers)
- (xml_response/'drivers/driver').each do |r|
- r[:href].must_match /#{r[:id]}$/
- end
- end
-
- it 'must return the list of valid parameters for the :index action' do
- options collection_url(:drivers) + '/index'
- last_response.headers['Allow'].wont_be_nil
- end
-
- it 'must have the "name" element defined for each driver in collection' do
- get collection_url(:drivers)
- (xml_response/'drivers/driver').each do |r|
- (r/'name').wont_be_nil
- end
- end
-
-
- it 'must return the full "driver" when following the URL in driver element' do
- get collection_url(:drivers)
- (xml_response/'drivers/driver').each do |r|
- get collection_url(:drivers) + '/' + r[:id]
- last_response.status.must_equal 200
- end
- end
-
- it 'must have the "name" element for the driver and it should match with the one in collection' do
- get collection_url(:drivers)
- (xml_response/'drivers/driver').each do |r|
- get collection_url(:drivers) + '/' + r[:id]
- (xml_response/'name').wont_be_empty
- (xml_response/'name').first.text.must_equal((r/'name').first.text)
- end
- end
-
- it 'should advertise available providers for some drivers' do
- get collection_url(:drivers)
- (xml_response/'drivers/driver/provider').each do |p|
- p[:id].wont_be_nil
- end
- end
-
- it 'should expose entrypoints for each provider if driver has providers defined' do
- get collection_url(:drivers)
- (xml_response/'drivers/driver/provider').each do |p|
- get collection_url(:drivers) + '/' + p.parent[:id]
- (xml_response/"driver/provider[@id=#{p[:id]}]").wont_be_empty
- (xml_response/"driver/provider[@id=#{p[:id]}]").size.must_equal 1
- (xml_response/"driver/provider[@id=#{p[:id]}]/entrypoint").wont_be_empty
- (xml_response/"driver/provider[@id=#{p[:id]}]/entrypoint").each do |e|
- e[:kind].wont_be_nil
- e.text.wont_be_empty
- end
- end
- end
-
-end
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/mock/hardware_profiles_test.rb
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/mock/hardware_profiles_test.rb b/server/tests/deprecated/drivers/mock/hardware_profiles_test.rb
deleted file mode 100644
index b21f0af..0000000
--- a/server/tests/deprecated/drivers/mock/hardware_profiles_test.rb
+++ /dev/null
@@ -1,224 +0,0 @@
-$:.unshift File.join(File.dirname(__FILE__), '..', '..', '..')
-require 'tests/drivers/mock/common'
-
-describe 'Deltacloud API Hardware Profiles' do
- include Deltacloud::Test
-
- it 'must advertise have the hardware_profiles collection in API entrypoint' do
- get root_url
- (xml_response/'api/link[@rel=hardware_profiles]').wont_be_empty
- end
-
- it 'should respond with HTTP_OK when accessing the :hardware_profiles collection with authentication' do
- authenticate
- get collection_url(:hardware_profiles)
- last_response.status.must_equal 200
- end
-
- it 'should support the JSON media type' do
- authenticate
- header 'Accept', 'application/json'
- get collection_url(:hardware_profiles)
- last_response.status.must_equal 200
- last_response.headers['Content-Type'].must_equal 'application/json'
- end
-
- it 'must include the ETag in HTTP headers' do
- authenticate
- get collection_url(:hardware_profiles)
- last_response.headers['ETag'].wont_be_nil
- end
-
- it 'must have the "hardware_profiles" element on top level' do
- authenticate
- get collection_url(:hardware_profiles)
- xml_response.root.name.must_equal 'hardware_profiles'
- end
-
- it 'must have some "hardware_profile" elements inside "hardware_profiles"' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').wont_be_empty
- end
-
- it 'must provide the :id attribute for each hardware_profile in collection' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- r[:id].wont_be_nil
- end
- end
-
- it 'must include the :href attribute for each "hardware_profile" element in collection' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- r[:href].wont_be_nil
- end
- end
-
- it 'must use the absolute URL in each :href attribute' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- r[:href].must_match /^http/
- end
- end
-
- it 'must have the URL ending with the :id of the hardware_profile' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- r[:href].must_match /#{r[:id]}$/
- end
- end
-
- it 'must return the list of valid parameters for the :index action' do
- authenticate
- options collection_url(:hardware_profiles) + '/index'
- last_response.headers['Allow'].wont_be_nil
- end
-
- it 'must have the "name" element defined for each hardware_profile in collection' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- (r/'name').wont_be_empty
- end
- end
-
- it 'should have the "property" element defined if not the opaque hardware_profile' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- next if r[:id] == 'opaque'
- (r/'property').wont_be_empty
- end
- end
-
- it 'must define the :kind attribute for each "property" ' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- next if r[:id] == 'opaque'
- (r/'property').each { |p| p[:kind].wont_be_nil }
- end
- end
-
- it 'must define the :name attribute for each "property" ' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- next if r[:id] == 'opaque'
- (r/'property').each { |p| p[:name].wont_be_nil }
- end
- end
-
- it 'must define the :unit attribute for each "property" ' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- next if r[:id] == 'opaque'
- (r/'property').each { |p| p[:unit].wont_be_nil }
- end
- end
-
- it 'must define the :value attribute for each "property" ' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- next if r[:id] == 'opaque'
- (r/'property').each { |p| p[:value].wont_be_nil }
- end
- end
-
- it 'must define the "param" element if property kind is not "fixed"' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- next if r[:id] == 'opaque'
- (r/'property').each do |p|
- next if p[:kind] == 'fixed'
- (p/'param').wont_be_empty
- (p/'param').size.must_equal 1
- (p/'param').first[:href].wont_be_nil
- (p/'param').first[:href].must_match /^http/
- (p/'param').first[:method].wont_be_nil
- (p/'param').first[:name].wont_be_nil
- (p/'param').first[:operation].wont_be_nil
- end
- end
- end
-
- it 'must provide the list of valid values when the property is defined as "enum"' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- next if r[:id] == 'opaque'
- (r/'property').each do |p|
- next if p[:kind] != 'enum'
- (p/'enum/entry').wont_be_empty
- (p/'enum/entry').each { |e| e[:value].wont_be_nil }
- end
- end
- end
-
- it 'must provide the range of valid values when the property is defined as "range"' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- next if r[:id] == 'opaque'
- (r/'property').each do |p|
- next if p[:kind] != 'range'
- (p/'range').wont_be_empty
- (p/'range').size.must_equal 1
- (p/'range').first[:first].wont_be_nil
- (p/'range').first[:last].wont_be_nil
- end
- end
- end
-
- it 'must provide the default value within the range if property defined as "range"' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- next if r[:id] == 'opaque'
- (r/'property').each do |p|
- next if p[:kind] != 'range'
- ((p/'range').first[:first].to_i..(p/'range').first[:last].to_i).include?(p[:value].to_i).must_equal true
- end
- end
- end
-
- it 'must provide the default value that is included in enum list if property defined as "enum"' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- next if r[:id] == 'opaque'
- (r/'property').each do |p|
- next if p[:kind] != 'enum'
- (p/'enum/entry').map { |e| e[:value] }.include?(p[:value]).must_equal true
- end
- end
- end
-
- it 'must return the full "hardware_profile" when following the URL in hardware_profile element' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- get collection_url(:hardware_profiles) + '/' + r[:id]
- last_response.status.must_equal 200
- end
- end
-
- it 'must have the "name" element for the hardware_profile and it should match with the one in collection' do
- authenticate
- get collection_url(:hardware_profiles)
- (xml_response/'hardware_profiles/hardware_profile').each do |r|
- get collection_url(:hardware_profiles) + '/' + r[:id]
- (xml_response/'name').wont_be_empty
- (xml_response/'name').first.text.must_equal((r/'name').first.text)
- end
- end
-
-end
http://git-wip-us.apache.org/repos/asf/deltacloud/blob/73b5c596/server/tests/deprecated/drivers/mock/images_test.rb
----------------------------------------------------------------------
diff --git a/server/tests/deprecated/drivers/mock/images_test.rb b/server/tests/deprecated/drivers/mock/images_test.rb
deleted file mode 100644
index 50e653c..0000000
--- a/server/tests/deprecated/drivers/mock/images_test.rb
+++ /dev/null
@@ -1,197 +0,0 @@
-$:.unshift File.join(File.dirname(__FILE__), '..', '..', '..')
-require 'tests/drivers/mock/common'
-
-describe 'Deltacloud API Images' do
- include Deltacloud::Test
-
- it 'must advertise have the images collection in API entrypoint' do
- get root_url
- (xml_response/'api/link[@rel=images]').wont_be_empty
- end
-
- it 'must require authentication to access the "image" collection' do
- get collection_url(:images)
- last_response.status.must_equal 401
- end
-
- it 'should respond with HTTP_OK when accessing the :images collection with authentication' do
- authenticate
- get collection_url(:images)
- last_response.status.must_equal 200
- end
-
- it 'should support the JSON media type' do
- authenticate
- header 'Accept', 'application/json'
- get collection_url(:images)
- last_response.status.must_equal 200
- last_response.headers['Content-Type'].must_equal 'application/json'
- end
-
- it 'must include the ETag in HTTP headers' do
- authenticate
- get collection_url(:images)
- last_response.headers['ETag'].wont_be_nil
- end
-
- it 'must have the "images" element on top level' do
- authenticate
- get collection_url(:images)
- xml_response.root.name.must_equal 'images'
- end
-
- it 'must have some "image" elements inside "images"' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').wont_be_empty
- end
-
- it 'must provide the :id attribute for each image in collection' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- r[:id].wont_be_nil
- end
- end
-
- it 'must include the :href attribute for each "image" element in collection' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- r[:href].wont_be_nil
- end
- end
-
- it 'must use the absolute URL in each :href attribute' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- r[:href].must_match /^http/
- end
- end
-
- it 'must have the URL ending with the :id of the image' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- r[:href].must_match /#{r[:id]}$/
- end
- end
-
- it 'must return the list of valid parameters for the :index action' do
- authenticate
- options collection_url(:images) + '/index'
- last_response.headers['Allow'].wont_be_nil
- end
-
- it 'must have the "name" element defined for each image in collection' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- (r/'name').wont_be_empty
- end
- end
-
- it 'must have the "state" element defined for each image in collection' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- (r/'state').wont_be_empty
- end
- end
-
- it 'must return the full "image" when following the URL in image element' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- get collection_url(:images) + '/' + r[:id]
- last_response.status.must_equal 200
- end
- end
-
- it 'must have the "name" element for the image and it should match with the one in collection' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- get collection_url(:images) + '/' + r[:id]
- (xml_response/'name').wont_be_empty
- (xml_response/'name').first.text.must_equal((r/'name').first.text)
- end
- end
-
- it 'must have the "name" element for the image and it should match with the one in collection' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- get collection_url(:images) + '/' + r[:id]
- (xml_response/'state').wont_be_empty
- (xml_response/'state').first.text.must_equal((r/'state').first.text)
- end
- end
-
- it 'should have the "owner_id" element for each image' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- get collection_url(:images) + '/' + r[:id]
- (xml_response/'owner_id').wont_be_empty
- end
- end
-
- it 'should have the "description" element for each image' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- get collection_url(:images) + '/' + r[:id]
- (xml_response/'description').wont_be_empty
- end
- end
-
- it 'should have the "architecture" element for each image' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- get collection_url(:images) + '/' + r[:id]
- (xml_response/'architecture').wont_be_empty
- end
- end
-
- it 'should include the list of compatible hardware_profiles for each image' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- get collection_url(:images) + '/' + r[:id]
- (xml_response/'hardware_profiles/hardware_profile').wont_be_empty
- (xml_response/'hardware_profiles/hardware_profile').each do |hwp|
- hwp[:href].wont_be_nil
- hwp[:href].must_match /^http/
- hwp[:id].wont_be_nil
- hwp[:href].must_match /\/#{hwp[:id]}$/
- hwp[:rel].must_equal 'hardware_profile'
- end
- end
- end
-
- it 'should advertise the list of actions that can be executed for each image' do
- authenticate
- get collection_url(:images)
- (xml_response/'images/image').each do |r|
- get collection_url(:images) + '/' + r[:id]
- (xml_response/'actions/link').wont_be_empty
- (xml_response/'actions/link').each do |l|
- l[:href].wont_be_nil
- l[:href].must_match /^http/
- l[:method].wont_be_nil
- l[:rel].wont_be_nil
- end
- end
- end
-
- it 'should give client HTML form to create new image' do
- authenticate
- header 'Accept', 'text/html'
- get collection_url(:images) + '/new'
- last_response.status.must_equal 200
- end
-
-end