booksr 0.1.1 → 0.1.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.
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 0c2d48d541899a45dff72b8d6c8c509177bca705
4
- data.tar.gz: 2d7981d27c9791a435c8348a152aa49073cf5367
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ NDliN2MxNDE1YjZlMjkxZWMyYTgxMTA5NTAyYjAyNjc1YjhiYTJmMg==
5
+ data.tar.gz: !binary |-
6
+ NWIzMDMzMzY5ZTQ2OTFhYTFjOGVhZTQ1OGI3Mzk3N2IzMzdhMzcxNA==
5
7
  SHA512:
6
- metadata.gz: fbfde4174c5479e83378e5ba3be4d78c5c84c1210b9bd0f7dc8e954808cd52b7206d046c9388888e6b5c66206b1a0b74afde4fdd8af97b6bf33359bb88cf027f
7
- data.tar.gz: f73855cfb02f5f78842dfd9e5a530bb7284fe86261a7676f20dcbb149c07a5dfdd350df4636b01042ebebb33b8e605fcd6efd3e7504627c12f01f9be119b3714
8
+ metadata.gz: !binary |-
9
+ NTA1YWVhZWI4OTcxYTY4OTk1MWUxMTRkNDdlY2EwZDE3ZjAyZmZkMmFhZmUy
10
+ ODEwNjVmZWRjODc2YTRhNzgxYWNmNzVmMzZmZjNjMTc2Yzg2NmNkNWFkYTM1
11
+ ODM1OTA2NTA5MGIyNWU3NjU5YzE3NDFjZGY1ZjY3OGEyNzRkOTc=
12
+ data.tar.gz: !binary |-
13
+ MGZkYmRhZGQ0ZWU4NDRjODZhODMxZGEyYTdiNzRjNGRlZGIxOTg0NWI3MTc3
14
+ NzRkZjZhYmU2YmQ0YmQxOTk0MDJmODJmZWIwOGVjZWM1NzYwZGFjOGM2NmJm
15
+ YzdjZWQ1NjExYTI2ZmUzMDU4ZDVhYWU3NGFjZjM4MTgzZWNjZmQ=
data/Gemfile CHANGED
@@ -1,2 +1,2 @@
1
- source 'http://rubygems.org'
1
+ source 'http://rubygems.org'
2
2
  gemspec
data/README.md CHANGED
@@ -1,53 +1,53 @@
1
- # Booksr #
2
-
3
- A simple book searcher in Ruby.
4
-
5
-
6
- ## Installation ##
7
-
8
- `gem install booksr`
9
-
10
-
11
- ## Usage ##
12
-
13
- `books = Booksr.search(query_string, query_type)`
14
-
15
- `query_type` can be:
16
-
17
- * `:title`
18
- * `:author`
19
- * `:isbn`
20
- * `:keyword`
21
-
22
- default is `:keyword`.
23
-
24
- `query_string` of `:isbn` can be ISBN10 or ISBN13.
25
-
26
- Return value is array of `Book` which can retrieve book information.
27
-
28
- Attributes of class `Book`:
29
-
30
- * title
31
- * subtitle
32
- * authors: array
33
- * publisher
34
- * published_date
35
- * description
36
- * isbn10
37
- * isbn13
38
- * page_count
39
- * lang
40
-
41
-
42
- ## Example ##
43
-
44
- ```ruby
45
- require 'booksr'
46
-
47
- books = Booksr.search('Ruby on Rails', :title)
48
- book = books[0]
49
-
50
- puts book.title
51
- puts book.authors # authors is a array
52
- puts book.subtitle
1
+ # Booksr #
2
+
3
+ A simple book searcher in Ruby.
4
+
5
+
6
+ ## Installation ##
7
+
8
+ `gem install booksr`
9
+
10
+
11
+ ## Usage ##
12
+
13
+ `books = Booksr.search(query_string, query_type)`
14
+
15
+ `query_type` can be:
16
+
17
+ * `:title`
18
+ * `:author`
19
+ * `:isbn`
20
+ * `:keyword`
21
+
22
+ default is `:keyword`.
23
+
24
+ `query_string` of `:isbn` can be ISBN10 or ISBN13.
25
+
26
+ Return value is array of `Book` which can retrieve book information.
27
+
28
+ Attributes of class `Book`:
29
+
30
+ * title
31
+ * subtitle
32
+ * authors: array
33
+ * publisher
34
+ * published_date
35
+ * description
36
+ * isbn10
37
+ * isbn13
38
+ * page_count
39
+ * lang
40
+
41
+
42
+ ## Example ##
43
+
44
+ ```ruby
45
+ require 'booksr'
46
+
47
+ books = Booksr.search('Ruby on Rails', :title)
48
+ book = books[0]
49
+
50
+ puts book.title
51
+ puts book.authors # authors is a array
52
+ puts book.subtitle
53
53
  ```
data/Rakefile CHANGED
@@ -1,9 +1,9 @@
1
- require 'rake/testtask'
2
-
3
- Rake::TestTask.new do |t|
4
- t.test_files = FileList["test/ts_*.rb"]
5
- t.verbose = true
6
- end
7
-
8
- desc "Run tests"
1
+ require 'rake/testtask'
2
+
3
+ Rake::TestTask.new do |t|
4
+ t.test_files = FileList["test/ts_*.rb"]
5
+ t.verbose = true
6
+ end
7
+
8
+ desc "Run tests"
9
9
  task :default => :test
data/booksr.gemspec CHANGED
@@ -1,17 +1,18 @@
1
- Gem::Specification.new do |s|
2
- s.name = 'booksr'
3
- s.version = '0.1.1'
4
- s.date = '2015-01-25'
5
- s.summary = 'A simple book searcher'
6
- s.description = 'Search book with title, author, isbn or keyword by Google Book API.'
7
- s.authors = ['cjwind']
8
- s.email = 'cwentsai@gmail.com'
9
- s.files = Dir['lib/*.rb', 'lib/booksr/*.rb', 'Gemfile', 'README.md', 'Rakefile', '*.gemspec', 'test/*.rb']
10
- s.homepage = 'https://github.com/cjwind/booksr'
11
- s.license = 'MIT'
12
-
13
- s.add_runtime_dependency 'bundler'
14
- s.add_runtime_dependency 'rest-client'
15
-
16
- s.add_development_dependency 'test-unit'
17
- end
1
+ Gem::Specification.new do |s|
2
+ s.name = 'booksr'
3
+ s.version = '0.1.2'
4
+ s.date = '2015-01-25'
5
+ s.summary = 'A simple book searcher'
6
+ s.description = 'Search book with title, author, isbn or keyword by Google Book API.'
7
+ s.authors = ['cjwind']
8
+ s.email = 'cwentsai@gmail.com'
9
+ s.files = Dir['lib/*.rb', 'lib/booksr/*.rb', 'Gemfile', 'README.md', 'Rakefile', '*.gemspec', 'test/*.rb']
10
+ s.homepage = 'https://github.com/cjwind/booksr'
11
+ s.license = 'MIT'
12
+
13
+ s.add_runtime_dependency 'bundler'
14
+ s.add_runtime_dependency 'rest-client'
15
+
16
+ s.add_development_dependency 'rake'
17
+ s.add_development_dependency 'test-unit'
18
+ end
data/lib/booksr.rb CHANGED
@@ -1,31 +1,31 @@
1
- require 'json'
2
- require 'rest-client'
3
-
4
- require 'booksr/api_handler'
5
- require 'booksr/parser'
6
- require 'booksr/book'
7
-
8
- class Booksr
9
- def self.search(query_string, query_type = :keyword)
10
- accepted_type = [:title, :author, :isbn, :keyword]
11
- if !accepted_type.include?(query_type)
12
- return nil
13
- end
14
-
15
- api = ApiHandler.new
16
- parser = Parser.new
17
- books = Array.new
18
-
19
- responses = api.search_by_google(query_string, query_type)
20
- responses.each do |response|
21
- volumes = parser.parse_json(response)
22
-
23
- volumes.each do |volume|
24
- volume_info = volume["volumeInfo"]
25
- books.push(Book.new(parser.parse_info_from_google(volume_info)))
26
- end
27
- end
28
-
29
- return books
30
- end
1
+ require 'json'
2
+ require 'rest-client'
3
+
4
+ require 'booksr/api_handler'
5
+ require 'booksr/parser'
6
+ require 'booksr/book'
7
+
8
+ class Booksr
9
+ def self.search(query_string, query_type = :keyword)
10
+ accepted_type = [:title, :author, :isbn, :keyword]
11
+ if !accepted_type.include?(query_type)
12
+ return nil
13
+ end
14
+
15
+ api = ApiHandler.new
16
+ parser = Parser.new
17
+ books = Array.new
18
+
19
+ responses = api.search_by_google(query_string, query_type)
20
+ responses.each do |response|
21
+ volumes = parser.parse_json(response)
22
+
23
+ volumes.each do |volume|
24
+ volume_info = volume["volumeInfo"]
25
+ books.push(Book.new(parser.parse_info_from_google(volume_info)))
26
+ end
27
+ end
28
+
29
+ return books
30
+ end
31
31
  end
@@ -1,38 +1,38 @@
1
- #encoding: utf-8
2
-
3
- class ApiHandler
4
- GOOGLE_MAX_RESULTS = 40 # const
5
-
6
- def search_by_google(query_string, query_type)
7
- responses = Array.new
8
- parser = Parser.new
9
-
10
- # https://www.googleapis.com/books/v1/volumes?q=field:qeury_string&startIndex=#{start_index}&maxResults=#{GOOGLE_MAX_RESULTS}
11
- query_string = URI::escape(query_string)
12
- api_uri = "https://www.googleapis.com/books/v1/volumes"
13
- query = "?q="
14
-
15
- if query_type == :title
16
- query += "intitle:"
17
- elsif query_type == :author
18
- query += "inauthor:"
19
- elsif query_type == :isbn
20
- query += "isbn:"
21
- end
22
-
23
- query += query_string
24
-
25
- start_index = 0
26
- begin
27
- subquery = "&startIndex=#{start_index}&maxResults=#{GOOGLE_MAX_RESULTS}"
28
-
29
- response = RestClient.get api_uri + query + subquery
30
- responses.push(response)
31
-
32
- data = parser.parse_json(response)
33
- start_index += GOOGLE_MAX_RESULTS
34
- end while data.size == GOOGLE_MAX_RESULTS
35
-
36
- return responses
37
- end
1
+ #encoding: utf-8
2
+
3
+ class ApiHandler
4
+ GOOGLE_MAX_RESULTS = 40 # const
5
+
6
+ def search_by_google(query_string, query_type)
7
+ responses = Array.new
8
+ parser = Parser.new
9
+
10
+ # https://www.googleapis.com/books/v1/volumes?q=field:qeury_string&startIndex=#{start_index}&maxResults=#{GOOGLE_MAX_RESULTS}
11
+ query_string = URI::escape(query_string)
12
+ api_uri = "https://www.googleapis.com/books/v1/volumes"
13
+ query = "?q="
14
+
15
+ if query_type == :title
16
+ query += "intitle:"
17
+ elsif query_type == :author
18
+ query += "inauthor:"
19
+ elsif query_type == :isbn
20
+ query += "isbn:"
21
+ end
22
+
23
+ query += query_string
24
+
25
+ start_index = 0
26
+ begin
27
+ subquery = "&startIndex=#{start_index}&maxResults=#{GOOGLE_MAX_RESULTS}"
28
+
29
+ response = RestClient.get api_uri + query + subquery
30
+ responses.push(response)
31
+
32
+ data = parser.parse_json(response)
33
+ start_index += GOOGLE_MAX_RESULTS
34
+ end while data.size == GOOGLE_MAX_RESULTS
35
+
36
+ return responses
37
+ end
38
38
  end
data/lib/booksr/book.rb CHANGED
@@ -1,17 +1,17 @@
1
- class Book
2
- attr_reader :title, :subtitle, :authors, :publisher, :published_date, :description
3
- attr_reader :isbn10, :isbn13, :page_count, :lang
4
-
5
- def initialize(info)
6
- @title = info[:title]
7
- @subtitle = info[:subtitle]
8
- @authors = info[:authors]
9
- @published_date = info[:published_date]
10
- @publisher = info[:publisher]
11
- @description = info[:description]
12
- @page_count = info[:page_count]
13
- @lang = info[:lang]
14
- @isbn13 = info[:isbn13]
15
- @isbn10 = info[:isbn10]
16
- end
1
+ class Book
2
+ attr_reader :title, :subtitle, :authors, :publisher, :published_date, :description
3
+ attr_reader :isbn10, :isbn13, :page_count, :lang
4
+
5
+ def initialize(info)
6
+ @title = info[:title]
7
+ @subtitle = info[:subtitle]
8
+ @authors = info[:authors]
9
+ @published_date = info[:published_date]
10
+ @publisher = info[:publisher]
11
+ @description = info[:description]
12
+ @page_count = info[:page_count]
13
+ @lang = info[:lang]
14
+ @isbn13 = info[:isbn13]
15
+ @isbn10 = info[:isbn10]
16
+ end
17
17
  end
data/lib/booksr/parser.rb CHANGED
@@ -1,33 +1,33 @@
1
- class Parser
2
- def parse_json(json)
3
- data = JSON.parse(json)
4
- volumes = data["items"]
5
- return volumes
6
- end
7
-
8
- def parse_info_from_google(volume_info)
9
- info = Hash.new
10
-
11
- info[:title] = volume_info["title"]
12
- info[:subtitle] = volume_info["subtitle"]
13
- info[:authors] = volume_info["authors"]
14
- info[:published_date] = volume_info["publishedDate"]
15
- info[:publisher] = volume_info["publisher"]
16
- info[:description] = volume_info["description"]
17
- info[:page_count] = volume_info["pageCount"]
18
- info[:lang] = volume_info["language"]
19
-
20
- isbns = volume_info["industryIdentifiers"]
21
- if !isbns.nil?
22
- isbns.each do |isbn|
23
- if isbn["type"] == "ISBN_13"
24
- info[:isbn13] = isbn["identifier"]
25
- elsif isbn["type"] == "ISBN_10"
26
- info[:isbn10] = isbn["identifier"]
27
- end
28
- end
29
- end
30
-
31
- return info
32
- end
1
+ class Parser
2
+ def parse_json(json)
3
+ data = JSON.parse(json)
4
+ volumes = data["items"]
5
+ return volumes
6
+ end
7
+
8
+ def parse_info_from_google(volume_info)
9
+ info = Hash.new
10
+
11
+ info[:title] = volume_info["title"]
12
+ info[:subtitle] = volume_info["subtitle"]
13
+ info[:authors] = volume_info["authors"]
14
+ info[:published_date] = volume_info["publishedDate"]
15
+ info[:publisher] = volume_info["publisher"]
16
+ info[:description] = volume_info["description"]
17
+ info[:page_count] = volume_info["pageCount"]
18
+ info[:lang] = volume_info["language"]
19
+
20
+ isbns = volume_info["industryIdentifiers"]
21
+ if !isbns.nil?
22
+ isbns.each do |isbn|
23
+ if isbn["type"] == "ISBN_13"
24
+ info[:isbn13] = isbn["identifier"]
25
+ elsif isbn["type"] == "ISBN_10"
26
+ info[:isbn10] = isbn["identifier"]
27
+ end
28
+ end
29
+ end
30
+
31
+ return info
32
+ end
33
33
  end
@@ -1,59 +1,59 @@
1
- #encoding: utf-8
2
-
3
- require 'test/unit'
4
- require 'booksr'
5
-
6
- class TestSearchIsbnByGoogleApi1 < Test::Unit::TestCase
7
- def setup # will be called before run each member function
8
- @books = Booksr.search("0131230522", :isbn)
9
- end
10
-
11
- def test_result
12
- assert_equal(1, @books.size)
13
-
14
- @book = @books[0]
15
-
16
- assert_equal("Unix Network Programming Volume 1: the Sockets Networking API", @book.title)
17
- assert_equal("International Edition", @book.subtitle)
18
-
19
- assert_equal(4, @book.authors.size)
20
- assert(@book.authors.include?("Stevens Richard"))
21
- assert(@book.authors.include?("W. Richard Stevens"))
22
- assert(@book.authors.include?("Bill Fenner"))
23
- assert(@book.authors.include?("Andrew M. Rudoff"))
24
-
25
- assert_equal(nil, @book.publisher)
26
- assert_equal("2004", @book.published_date)
27
- assert_equal(nil, @book.description)
28
- assert_equal("0131230522", @book.isbn10)
29
- assert_equal("9780131230521", @book.isbn13)
30
- assert_equal(991, @book.page_count)
31
- assert_equal("en", @book.lang)
32
- end
33
- end
34
-
35
- class TestSearchIsbnByGoogleApi2 < Test::Unit::TestCase
36
- def setup # will be called before run each member function
37
- @books = Booksr.search("9789866841590", :isbn)
38
- end
39
-
40
- def test_result
41
- assert_equal(1, @books.size)
42
-
43
- @book = @books[0]
44
-
45
- assert_equal("你的孩子不是你的孩子", @book.title)
46
- assert_equal("被考試綁架的家庭故事──一位家教老師的見證", @book.subtitle)
47
-
48
- assert_equal(1, @book.authors.size)
49
- assert_equal("吳曉樂", @book.authors[0])
50
-
51
- assert_equal("英屬蓋曼群島商網路與書出版股份有限公司臺灣分公司", @book.publisher)
52
- assert_equal("2014-11-01", @book.published_date)
53
- assert_equal("沒有一篇是普羅大眾樂見的教育神話。 沒有一篇看了會感到喜悅。 沒有一篇看了心中不會亂糟糟的,甚至覺得煩。 然而,這些事情確實發生過。 不僅確實發生過,極可能仍在發生⋯⋯ 說故事的人,是個證人。她花了七年時間,打開一扇又一扇的大門,走進不同的家庭。在門的背後,她見證了各色光怪陸離的景象:一個每日給兒子準備雞精、維他命的母親,在收到兒子成績單的當下,卻也毫不猶豫地甩出一記耳光;為了安撫雙親,躲在衣櫃裡欺騙別人也傷害自己的兒子;也或許,她看見一種用鈔票堆疊起來的親情⋯⋯她以為她是家教,只需帶給學生知識,沒想到學生及他們的家庭帶給她更多的衝擊。 什麼是教育的本質?愛是有條件的嗎? 本書沒有給家長教條式的叮嚀與建議,只有一個個震撼人心的故事。這些故事之所以存在,是期待我們去凝視一個初衷,靜下來,好好想想,把小孩帶到這世界上的初衷。 ■ 被考試綁架的家庭故事——《你的孩子不是你的孩子》新書座談會 講者:吳曉樂(本書作者) 時間:2014年11月29日(六)11:00~12:00 地點:水牛書店 ■ 每個孩子都是獨立的個體——《你的孩子不是你的孩子》新書座談會 講者:吳曉樂(本書作者)、唐光華(樂觀書院創辦人) 時間:2014年12月4日(四)19:30~21:00 地點:誠品信義店3F Mini-Forum", @book.description)
54
- assert_equal("9866841596", @book.isbn10)
55
- assert_equal("9789866841590", @book.isbn13)
56
- assert_equal(328, @book.page_count)
57
- assert_equal("zh-TW", @book.lang)
58
- end
1
+ #encoding: utf-8
2
+
3
+ require 'test/unit'
4
+ require 'booksr'
5
+
6
+ class TestSearchIsbnByGoogleApi1 < Test::Unit::TestCase
7
+ def setup # will be called before run each member function
8
+ @books = Booksr.search("0131230522", :isbn)
9
+ end
10
+
11
+ def test_result
12
+ assert_equal(1, @books.size)
13
+
14
+ @book = @books[0]
15
+
16
+ assert_equal("Unix Network Programming Volume 1: the Sockets Networking API", @book.title)
17
+ assert_equal("International Edition", @book.subtitle)
18
+
19
+ assert_equal(4, @book.authors.size)
20
+ assert(@book.authors.include?("Stevens Richard"))
21
+ assert(@book.authors.include?("W. Richard Stevens"))
22
+ assert(@book.authors.include?("Bill Fenner"))
23
+ assert(@book.authors.include?("Andrew M. Rudoff"))
24
+
25
+ assert_equal(nil, @book.publisher)
26
+ assert_equal("2004", @book.published_date)
27
+ assert_equal(nil, @book.description)
28
+ assert_equal("0131230522", @book.isbn10)
29
+ assert_equal("9780131230521", @book.isbn13)
30
+ assert_equal(991, @book.page_count)
31
+ assert_equal("en", @book.lang)
32
+ end
33
+ end
34
+
35
+ class TestSearchIsbnByGoogleApi2 < Test::Unit::TestCase
36
+ def setup # will be called before run each member function
37
+ @books = Booksr.search("9789866841590", :isbn)
38
+ end
39
+
40
+ def test_result
41
+ assert_equal(1, @books.size)
42
+
43
+ @book = @books[0]
44
+
45
+ assert_equal("你的孩子不是你的孩子", @book.title)
46
+ assert_equal("被考試綁架的家庭故事──一位家教老師的見證", @book.subtitle)
47
+
48
+ assert_equal(1, @book.authors.size)
49
+ assert_equal("吳曉樂", @book.authors[0])
50
+
51
+ assert_equal("英屬蓋曼群島商網路與書出版股份有限公司臺灣分公司", @book.publisher)
52
+ assert_equal("2014-11-01", @book.published_date)
53
+ assert_equal("沒有一篇是普羅大眾樂見的教育神話。 沒有一篇看了會感到喜悅。 沒有一篇看了心中不會亂糟糟的,甚至覺得煩。 然而,這些事情確實發生過。 不僅確實發生過,極可能仍在發生⋯⋯ 說故事的人,是個證人。她花了七年時間,打開一扇又一扇的大門,走進不同的家庭。在門的背後,她見證了各色光怪陸離的景象:一個每日給兒子準備雞精、維他命的母親,在收到兒子成績單的當下,卻也毫不猶豫地甩出一記耳光;為了安撫雙親,躲在衣櫃裡欺騙別人也傷害自己的兒子;也或許,她看見一種用鈔票堆疊起來的親情⋯⋯她以為她是家教,只需帶給學生知識,沒想到學生及他們的家庭帶給她更多的衝擊。 什麼是教育的本質?愛是有條件的嗎? 本書沒有給家長教條式的叮嚀與建議,只有一個個震撼人心的故事。這些故事之所以存在,是期待我們去凝視一個初衷,靜下來,好好想想,把小孩帶到這世界上的初衷。 ■ 被考試綁架的家庭故事——《你的孩子不是你的孩子》新書座談會 講者:吳曉樂(本書作者) 時間:2014年11月29日(六)11:00~12:00 地點:水牛書店 ■ 每個孩子都是獨立的個體——《你的孩子不是你的孩子》新書座談會 講者:吳曉樂(本書作者)、唐光華(樂觀書院創辦人) 時間:2014年12月4日(四)19:30~21:00 地點:誠品信義店3F Mini-Forum", @book.description)
54
+ assert_equal("9866841596", @book.isbn10)
55
+ assert_equal("9789866841590", @book.isbn13)
56
+ assert_equal(328, @book.page_count)
57
+ assert_equal("zh-TW", @book.lang)
58
+ end
59
59
  end
@@ -1,15 +1,15 @@
1
- #encoding: utf-8
2
-
3
- require 'test/unit'
4
- require 'booksr'
5
-
6
- class TestSearchTitleByGoogleApi < Test::Unit::TestCase
7
- def setup
8
- @title = "Ruby on Rails"
9
- @books = Booksr.search(@title, :title)
10
- end
11
-
12
- def test_result_count_over_40
13
- assert_operator(40, :<=, @books.size)
14
- end
1
+ #encoding: utf-8
2
+
3
+ require 'test/unit'
4
+ require 'booksr'
5
+
6
+ class TestSearchTitleByGoogleApi < Test::Unit::TestCase
7
+ def setup
8
+ @title = "Ruby on Rails"
9
+ @books = Booksr.search(@title, :title)
10
+ end
11
+
12
+ def test_result_count_over_40
13
+ assert_operator(40, :<=, @books.size)
14
+ end
15
15
  end
@@ -1,7 +1,7 @@
1
- # Search by Google Book API test suite
2
-
3
- require 'rubygems'
4
- require 'bundler/setup'
5
- require 'test/unit/testsuite'
6
- require './test/tc_search_isbn'
1
+ # Search by Google Book API test suite
2
+
3
+ require 'rubygems'
4
+ require 'bundler/setup'
5
+ require 'test/unit/testsuite'
6
+ require './test/tc_search_isbn'
7
7
  require './test/tc_search_title'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: booksr
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - cjwind
@@ -14,42 +14,56 @@ dependencies:
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - ! '>='
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - ! '>='
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rest-client
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - ! '>='
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ! '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ! '>='
39
53
  - !ruby/object:Gem::Version
40
54
  version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: test-unit
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
- - - ">="
59
+ - - ! '>='
46
60
  - !ruby/object:Gem::Version
47
61
  version: '0'
48
62
  type: :development
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
- - - ">="
66
+ - - ! '>='
53
67
  - !ruby/object:Gem::Version
54
68
  version: '0'
55
69
  description: Search book with title, author, isbn or keyword by Google Book API.
@@ -79,17 +93,17 @@ require_paths:
79
93
  - lib
80
94
  required_ruby_version: !ruby/object:Gem::Requirement
81
95
  requirements:
82
- - - ">="
96
+ - - ! '>='
83
97
  - !ruby/object:Gem::Version
84
98
  version: '0'
85
99
  required_rubygems_version: !ruby/object:Gem::Requirement
86
100
  requirements:
87
- - - ">="
101
+ - - ! '>='
88
102
  - !ruby/object:Gem::Version
89
103
  version: '0'
90
104
  requirements: []
91
105
  rubyforge_project:
92
- rubygems_version: 2.4.5
106
+ rubygems_version: 2.2.2
93
107
  signing_key:
94
108
  specification_version: 4
95
109
  summary: A simple book searcher