summaryrefslogtreecommitdiff
path: root/test/downloader_test.rb
diff options
context:
space:
mode:
authorDaniel Beauchamp <daniel.beauchamp@shopify.com>2014-01-12 23:17:39 -0800
committerDaniel Beauchamp <daniel.beauchamp@shopify.com>2014-01-12 23:17:39 -0800
commit9e8dfe7d4290f0150fdef10230cd0ca7a75c9755 (patch)
treeccd82c459d988ac2846db6178710b47113b377a4 /test/downloader_test.rb
parent5b045724acd44e691552c0fb8f86b61aa2e0cd06 (diff)
parentc49b9bc5d47fe02d26836dee5034fe28490f0ebd (diff)
Merge pull request #296 from Shopify/updating_gems_and_refactoring
Updating gems and refactoring
Diffstat (limited to 'test/downloader_test.rb')
-rw-r--r--test/downloader_test.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/downloader_test.rb b/test/downloader_test.rb
new file mode 100644
index 0000000..930ad56
--- /dev/null
+++ b/test/downloader_test.rb
@@ -0,0 +1,26 @@
+require 'test_helper'
+
+class DownloaderTest < Minitest::Test
+
+ def test_get_json_requests_and_parses_content
+ endpoint = 'http://somehost.com/file.json'
+ response = '{ "name": "value" }'
+ FakeWeb.register_uri(:get, endpoint, body: response)
+ JSON.stubs(:parse).with(response).once
+
+ Dashing::Downloader.get_json(endpoint)
+ end
+
+ def test_get_json_raises_on_bad_request
+ FakeWeb.register_uri(:get, 'http://dead-host.com/', status: '404')
+
+ assert_raises(OpenURI::HTTPError) do
+ Dashing::Downloader.get_json('http://dead-host.com/')
+ end
+ end
+
+ def test_load_gist_attempts_to_get_the_gist
+ Dashing::Downloader.stubs(:get_json).once
+ Dashing::Downloader.get_gist(123)
+ end
+end