grocery_list 0.0.2 → 0.0.3

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,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: add3e51c389bbc5029f42a2997b241b5745e15e0
4
- data.tar.gz: 727c52882b5ea3207198db2afbce386567fa7865
3
+ metadata.gz: f3dbb4470aee7516305505a76c48c59c5bb348c5
4
+ data.tar.gz: 247180ec21e2c291d0a5afc9559d5b844002a6e6
5
5
  SHA512:
6
- metadata.gz: dbb9bb8536209bd2f22c3adf251ae057e90babfcffce95425411d2b170d030cc4035f182415020ac25b337f34fb890834d42a68f1a8a71b89842bb6099fea098
7
- data.tar.gz: 57134b07f56fff4d89b5f5057052aadc4574c2333a726a8dcdba3b3ab8f2b7feff459aedb6ca5db13fd172fdf264502ac4f627e54c8e762eeff0edfb678c1f6c
6
+ metadata.gz: 671b189d55efc1a82f758d197a7c574ac2d9f153aab7a5c90fd21e8970b0125ef28c5a049faf358ac7dd23c6a0cc3cc331a555027b5fb9ca7319d225c791cd78
7
+ data.tar.gz: abb9a929367e6785b8e203066e4e5affd0997d3f187bc93f91cec4ea32c2defdc6a866fd4ac6d0dd9b1778d91077808b0938905cc548f111775554a6dc24d672
data/README.md CHANGED
@@ -1,7 +1,6 @@
1
1
  # Grocery-list
2
- ![Build Status](https://travis-ci.org/charlespwd/grocery-list.svg?branch=master)
3
- [![Coverage
4
- Status](https://coveralls.io/repos/charlespwd/grocery-list/badge.png)](https://coveralls.io/r/charlespwd/grocery-list)
2
+ [![Build Status](https://travis-ci.org/charlespwd/grocery-list.svg?branch=master)](https://travis-ci.org/charlespwd/grocery-list)
3
+ [![Coverage Status](https://coveralls.io/repos/charlespwd/grocery-list/badge.png)](https://coveralls.io/r/charlespwd/grocery-list)
5
4
 
6
5
  Turn your json, csv, md, or strings into grocery lists that you can
7
6
  then search for.
@@ -1,3 +1,3 @@
1
1
  module GroceryList
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
data/lib/grocery_list.rb CHANGED
@@ -5,19 +5,25 @@ module GroceryList
5
5
  attr_reader :items, :searcher
6
6
 
7
7
  @@source_type_tests = {
8
- :is_json_array? => ->(s) { s.start_with? '[' },
9
8
  :is_a_path? => ->(s) { s.is_a? String and File.readable? s },
9
+ :is_json_array? => ->(s) { s.start_with? '[' },
10
10
  :is_a_string? => ->(s) { s.is_a? String and not File.readable? s},
11
11
  }
12
12
  @@searchers = {
13
- :is_json_array? => ->(s) { JsonItemParser.read(s) },
14
13
  :is_a_path? => ->(s) { FileItemParser.read(s) },
14
+ :is_json_array? => ->(s) { JsonItemParser.read(s) },
15
15
  :is_a_string? => ->(s) { StringItemParser.read(s) },
16
16
  }
17
17
 
18
18
  def search_all(items_source, searcher = IGASearcher.new)
19
19
  validate_input(items_source, searcher)
20
+ @items = items_from_source(items_source)
21
+ @searcher = searcher
20
22
  @items.each do |item|
23
+ # For some odd reason, google chrome (and other browsers?) don't let
24
+ # you open more than three tabs very quickly. So this sleep 0.2 works around
25
+ # it. Not really sure what else I could do. It's ugly but it works...
26
+ sleep 0.2
21
27
  @searcher.search(item)
22
28
  end
23
29
  end
@@ -26,8 +32,6 @@ module GroceryList
26
32
  def validate_input(items_source, searcher)
27
33
  raise ArgumentError, "isn't a valid source" unless is_valid_source? items_source
28
34
  raise ArgumentError, "searcher isn't a AbstractSearcher" unless searcher.kind_of? AbstractSearcher
29
- @items = items_from_source(items_source)
30
- @searcher = searcher
31
35
  end
32
36
 
33
37
  def items_from_source(items_source)
metadata CHANGED
@@ -1,83 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: grocery_list
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Charles-P. Clermont
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-02 00:00:00.000000000 Z
11
+ date: 2014-10-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: launchy
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '2.4'
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: '2.4'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.5'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.5'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: simplecov
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: coveralls
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  description:
@@ -87,8 +87,8 @@ executables: []
87
87
  extensions: []
88
88
  extra_rdoc_files: []
89
89
  files:
90
- - .gitignore
91
- - .travis.yml
90
+ - ".gitignore"
91
+ - ".travis.yml"
92
92
  - Gemfile
93
93
  - LICENSE.txt
94
94
  - README.md
@@ -119,17 +119,17 @@ require_paths:
119
119
  - lib
120
120
  required_ruby_version: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - '>='
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
125
  required_rubygems_version: !ruby/object:Gem::Requirement
126
126
  requirements:
127
- - - '>='
127
+ - - ">="
128
128
  - !ruby/object:Gem::Version
129
129
  version: '0'
130
130
  requirements: []
131
131
  rubyforge_project:
132
- rubygems_version: 2.3.0
132
+ rubygems_version: 2.2.2
133
133
  signing_key:
134
134
  specification_version: 4
135
135
  summary: Turn your json, csv, md, or strings into grocery lists that you can then