google_shortener 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,7 +10,7 @@ Gem::Specification.new do |gem|
10
10
  gem.email = ["me@chaitanyavellanki.com"]
11
11
  gem.description = %q{Rubygem to shorten long url}
12
12
  gem.summary = %q{Uses url shortener services from Google}
13
- gem.homepage = ""
13
+ gem.homepage = "https://github.com/chaitanyav/google_shortener"
14
14
 
15
15
  gem.files = `git ls-files`.split($/)
16
16
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
@@ -55,7 +55,7 @@ class GoogleShortener
55
55
 
56
56
  def get_from_google_url_shortener_api(short_url)
57
57
  uri = URI(google_url_shortener_location)
58
- params = {'shortUrl' => short_url}
58
+ params = {'shortUrl' => short_url, 'key' => @api_key}
59
59
  uri.query = URI.encode_www_form(params)
60
60
  req = Net::HTTP::Get.new(uri.request_uri)
61
61
  req.content_type = 'application/json'
@@ -1 +1 @@
1
- VERSION = "0.0.1"
1
+ VERSION = "0.0.2"
@@ -0,0 +1,47 @@
1
+ require 'minitest/autorun'
2
+ require 'minitest/pride'
3
+ require 'google_shortener'
4
+
5
+ class GoogleShortenerTest < MiniTest::Unit::TestCase
6
+ def test_default_api_key
7
+ google_shortener = GoogleShortener.new
8
+ assert 'AIzaSyDOY31us5qGR_MdMQKaTfGlhpOi8w3Ur7U', google_shortener.api_key
9
+ end
10
+
11
+ def test_valid_api_key_with_correct_key
12
+ google_shortener = GoogleShortener.new
13
+ google_shortener.api_key = 'AIzaSyDOY31us5qGR_MdMQKaTfGlhpOi8w3Ur7U'
14
+ assert google_shortener.valid_api_key?
15
+ end
16
+
17
+ def test_valid_api_key_with_incorrect_key
18
+ google_shortener = GoogleShortener.new
19
+ google_shortener.api_key = 'foo'
20
+ assert google_shortener.valid_api_key?
21
+ end
22
+
23
+ def test_shorten_with_long_url
24
+ google_shortener = GoogleShortener.new
25
+ assert_equal 'http://goo.gl/fbsS', google_shortener.shorten('http://www.google.com/')
26
+ end
27
+
28
+ def test_shorten_with_no_long_url
29
+ google_shortener = GoogleShortener.new
30
+ assert_raises ArgumentError do
31
+ google_shortener.shorten
32
+ end
33
+ end
34
+
35
+ def test_expand_with_short_url
36
+ google_shortener = GoogleShortener.new
37
+ assert_equal 'http://www.google.com/', google_shortener.expand('http://goo.gl/fbsS')
38
+ end
39
+
40
+ def test_expand_with_no_short_url
41
+ google_shortener = GoogleShortener.new
42
+ assert_raises ArgumentError do
43
+ google_shortener.expand
44
+ end
45
+
46
+ end
47
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google_shortener
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -58,7 +58,8 @@ files:
58
58
  - google_shortener.gemspec
59
59
  - lib/google_shortener.rb
60
60
  - lib/google_shortener/version.rb
61
- homepage: ''
61
+ - test/google_shortener_test.rb
62
+ homepage: https://github.com/chaitanyav/google_shortener
62
63
  licenses: []
63
64
  post_install_message:
64
65
  rdoc_options: []
@@ -72,7 +73,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
72
73
  version: '0'
73
74
  segments:
74
75
  - 0
75
- hash: 4113926791253946452
76
+ hash: 2250692420382275581
76
77
  required_rubygems_version: !ruby/object:Gem::Requirement
77
78
  none: false
78
79
  requirements:
@@ -81,11 +82,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
82
  version: '0'
82
83
  segments:
83
84
  - 0
84
- hash: 4113926791253946452
85
+ hash: 2250692420382275581
85
86
  requirements: []
86
87
  rubyforge_project:
87
88
  rubygems_version: 1.8.25
88
89
  signing_key:
89
90
  specification_version: 3
90
91
  summary: Uses url shortener services from Google
91
- test_files: []
92
+ test_files:
93
+ - test/google_shortener_test.rb