filter8 0.9 → 0.9.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 +4 -4
- data/Gemfile.lock +1 -1
- data/filter8.gemspec +2 -2
- data/lib/filter8/client.rb +1 -1
- data/lib/filter8/request.rb +2 -2
- data/spec/lib/filter8/client_spec.rb +5 -2
- data/spec/lib/filter8/request_spec.rb +9 -0
- metadata +15 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 57685dda9e2022d2831ca7942075900e85a136c0
|
4
|
+
data.tar.gz: 383734db67b7cc6abe723b67e8237a5ccf6a3e35
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a494a030518a205856b76a44d5bc8ab3ac63bcf00c5d23d7709158f58cac047b59b75e8412470f0980e4c644443203c11dc097009d8653ef35ed904beab5e8c6
|
7
|
+
data.tar.gz: 676dae7dcdd6db734b8cafcbe03a320a1a2a7b6d3b57d4e0fd3993a901e7d81ed929cbba69f86e680e9398d823e998dc71915f1d98b5ef752f118c3156be9609
|
data/Gemfile.lock
CHANGED
data/filter8.gemspec
CHANGED
data/lib/filter8/client.rb
CHANGED
data/lib/filter8/request.rb
CHANGED
@@ -5,11 +5,11 @@ module Filter8
|
|
5
5
|
def initialize(content, options = {})
|
6
6
|
if content.is_a? Hash
|
7
7
|
@content = content[:content]
|
8
|
-
raise Exception.new("No value for 'content' given") if @content.nil?
|
9
8
|
options = content.reject!{ |k| k == :content }
|
10
9
|
else
|
11
10
|
@content = content
|
12
11
|
end
|
12
|
+
raise Exception.new("No value for 'content' given") if(@content.nil?||@content.empty?)
|
13
13
|
|
14
14
|
options.each do |filter_name, filter_options|
|
15
15
|
validate_filter_options(filter_name, filter_options)
|
@@ -27,7 +27,7 @@ module Filter8
|
|
27
27
|
end
|
28
28
|
|
29
29
|
def request_params
|
30
|
-
request_params = "content=#{self.content}"
|
30
|
+
request_params = "content=#{CGI.escape(self.content)}"
|
31
31
|
|
32
32
|
Filter8::AVAILABLE_FILTERS.each do |filter_name|
|
33
33
|
if self.respond_to?(filter_name) && !self.send(filter_name).nil?
|
@@ -39,8 +39,11 @@ describe Filter8::Client do
|
|
39
39
|
client.send_request(filter8_request)
|
40
40
|
end
|
41
41
|
|
42
|
-
it "will parse the response as JSON and return the result" do
|
43
|
-
|
42
|
+
it "will parse the response as JSON and return the result as a filter8-result" do
|
43
|
+
filter8_result = client.send_request(filter8_request)
|
44
|
+
|
45
|
+
expect(filter8_result).to be_a Filter8::Result
|
46
|
+
expect(filter8_result.json).to eq({ "test" => "response" })
|
44
47
|
end
|
45
48
|
|
46
49
|
end
|
@@ -22,6 +22,11 @@ describe Filter8::Request do
|
|
22
22
|
expect{Filter8::Request.new(blacklist: "test")}.to raise_error
|
23
23
|
end
|
24
24
|
|
25
|
+
it "will raise an error when onlyno content is given" do
|
26
|
+
expect{Filter8::Request.new(nil)}.to raise_error
|
27
|
+
expect{Filter8::Request.new("")}.to raise_error
|
28
|
+
end
|
29
|
+
|
25
30
|
it "will allow valid filters as options" do
|
26
31
|
request = Filter8::Request.new("fuck", blacklist: "test")
|
27
32
|
expect(request.blacklist).to eq "test"
|
@@ -53,6 +58,10 @@ describe Filter8::Request do
|
|
53
58
|
expect(Filter8::Request.new("fuck").request_params).to eq "content=fuck"
|
54
59
|
end
|
55
60
|
|
61
|
+
it "escapes url-critical parameters nicely" do
|
62
|
+
expect(Filter8::Request.new("Leaders! Start a book club with a new release from #OrangeBooks & get a free ticket to Orange Tour 2014.").request_params).to eq "content=Leaders%21+Start+a+book+club+with+a+new+release+from+%23OrangeBooks+%26+get+a+free+ticket+to+Orange+Tour+2014."
|
63
|
+
end
|
64
|
+
|
56
65
|
it "will return the correct parameters, when one option with a single value is given" do
|
57
66
|
expect(Filter8::Request.new("fuck", blacklist: "test").request_params).to eq "content=fuck&blacklist=test"
|
58
67
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: filter8
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 0.9.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Adler
|
@@ -14,70 +14,70 @@ dependencies:
|
|
14
14
|
name: faraday
|
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: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ~>
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: 10.1.0
|
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: 10.1.0
|
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: 2.14.1
|
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: 2.14.1
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: timecop
|
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: codeclimate-test-reporter
|
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: An unofficial ruby wrapper for Filter8 (http://filter8.com). An API to
|
@@ -87,8 +87,8 @@ executables: []
|
|
87
87
|
extensions: []
|
88
88
|
extra_rdoc_files: []
|
89
89
|
files:
|
90
|
-
-
|
91
|
-
-
|
90
|
+
- .gitignore
|
91
|
+
- .rspec
|
92
92
|
- Gemfile
|
93
93
|
- Gemfile.lock
|
94
94
|
- README.md
|
@@ -114,12 +114,12 @@ require_paths:
|
|
114
114
|
- lib
|
115
115
|
required_ruby_version: !ruby/object:Gem::Requirement
|
116
116
|
requirements:
|
117
|
-
- -
|
117
|
+
- - '>='
|
118
118
|
- !ruby/object:Gem::Version
|
119
119
|
version: '0'
|
120
120
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- -
|
122
|
+
- - '>='
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '0'
|
125
125
|
requirements: []
|