diff options
| author | mo khan <mo.khan@gmail.com> | 2020-11-21 15:56:27 -0700 |
|---|---|---|
| committer | mo khan <mo.khan@gmail.com> | 2020-11-21 15:56:27 -0700 |
| commit | 18992015e4275cc5f390ebd84ed416b38b87feae (patch) | |
| tree | 1403e7f0e9eccf4c454c2e6527bee6986e1d6b27 /test/integration | |
| parent | 41be8454a0e737e4a032a527d6fa91f118bcc40f (diff) | |
test: rename dir from unit to integration
Diffstat (limited to 'test/integration')
| -rw-r--r-- | test/integration/data_storage_server_test.rb | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/test/integration/data_storage_server_test.rb b/test/integration/data_storage_server_test.rb new file mode 100644 index 0000000..ab814ad --- /dev/null +++ b/test/integration/data_storage_server_test.rb @@ -0,0 +1,54 @@ +class DataStorageServerTest < Minitest::Test + include Rack::Test::Methods + + def app + DataStorageServer.new + end + + def test_put + put '/data/foo', 'some object' + result = JSON.parse(last_response.body) + + assert_equal 201, last_response.status + assert_equal 11, result["size"] + assert result["oid"].is_a?(String) + assert result["oid"].length > 0 + end + + def test_get + put '/data/foo', 'some object' + res1 = JSON.parse(last_response.body) + + put '/data/foo', 'other object' + res2 = JSON.parse(last_response.body) + + refute_equal res1["oid"], res2["oid"] + + get "/data/foo/#{res1["oid"]}" + assert_equal 'some object', last_response.body + + get "/data/foo/#{res2["oid"]}" + assert_equal 'other object', last_response.body + end + + def test_get_not_found + get '/data/foo/noooope' + assert_equal 404, last_response.status + end + + def test_delete + put '/data/foo', 'some object' + res = JSON.parse(last_response.body) + + delete "/data/foo/#{res["oid"]}" + assert_equal 200, last_response.status + + get "/data/foo/#{res["oid"]}" + assert_equal 404, last_response.status + end + + def test_delete_nonexistant_object + delete "/data/foo/nooope" + assert_equal 404, last_response.status + end +end |
