philologic-client 0.0.13 → 0.2.0
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.
- data/HISTORY.rdoc +4 -0
- data/PhiloLogicResponseDocumentation.txt +30 -8
- data/README.rdoc +12 -4
- data/Rakefile +7 -7
- data/lib/philologic-client.rb +33 -10
- data/lib/philologic-client/collocation.rb +48 -23
- data/lib/philologic-client/document.rb +1 -1
- data/lib/philologic-client/occurrence.rb +7 -6
- data/lib/philologic-client/version.rb +1 -1
- data/test/data/bibliography.html +351 -89
- data/test/data/collocation.html +717 -2359
- data/test/data/concordance.html +355 -196
- data/test/data/frequency.html +197 -37
- data/test/data/navigation.html +196 -37
- data/test/data/object.html +173 -12
- data/test/helper.rb +9 -0
- data/test/test_bibliography.rb +6 -10
- data/test/test_client.rb +125 -499
- data/test/test_collocation.rb +22 -23
- data/test/test_concordance.rb +4 -10
- data/test/test_document.rb +7 -11
- data/test/test_frequency.rb +10 -14
- data/test/test_occurrence.rb +13 -9
- data/test/test_response.rb +1 -5
- metadata +48 -21
data/test/test_collocation.rb
CHANGED
@@ -1,11 +1,7 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
require 'philologic-client'
|
7
|
-
require 'test_response'
|
8
|
-
require 'test/unit'
|
3
|
+
require_relative 'helper'
|
4
|
+
require_relative 'test_response'
|
9
5
|
|
10
6
|
|
11
7
|
class TestCollocation < TestResponse
|
@@ -49,26 +45,29 @@ class TestCollocation < TestResponse
|
|
49
45
|
|
50
46
|
assert r.results?
|
51
47
|
assert_not_nil r.results
|
52
|
-
assert_kind_of Array,
|
48
|
+
assert_kind_of Array, r.results
|
53
49
|
|
54
|
-
|
55
|
-
# TODO assert_equal 642, r.results.size
|
50
|
+
assert_equal 110, r.results.size
|
56
51
|
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
52
|
+
first = r.results.first
|
53
|
+
assert_not_nil first
|
54
|
+
assert_kind_of Philologic::Client::Collocation::Row, first
|
55
|
+
assert_equal 4, first.value
|
56
|
+
assert_equal 'whose', first.word
|
57
|
+
assert_equal 3, first.left_value
|
58
|
+
assert_equal 'whose', first.left_word
|
59
|
+
assert_equal 4, first.right_value
|
60
|
+
assert_equal 'roar', first.right_word
|
64
61
|
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
62
|
+
last = r.results.last
|
63
|
+
assert_not_nil last
|
64
|
+
assert_kind_of Philologic::Client::Collocation::Row, last
|
65
|
+
assert_equal 1, last.value
|
66
|
+
assert_equal 'still', last.word
|
67
|
+
assert_equal 1, last.left_value
|
68
|
+
assert_equal 'shade', last.left_word
|
69
|
+
assert_equal 1, last.right_value
|
70
|
+
assert_equal 'top', last.right_word
|
72
71
|
|
73
72
|
end
|
74
73
|
|
data/test/test_concordance.rb
CHANGED
@@ -1,11 +1,7 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
require 'philologic-client'
|
7
|
-
require 'test_response'
|
8
|
-
require 'test/unit'
|
3
|
+
require_relative 'helper'
|
4
|
+
require_relative 'test_response'
|
9
5
|
|
10
6
|
|
11
7
|
class TestConcordance < TestResponse
|
@@ -53,14 +49,13 @@ class TestConcordance < TestResponse
|
|
53
49
|
assert_equal 1, first['hit_n']
|
54
50
|
assert_equal 'William Shakespeare', first['author']
|
55
51
|
assert_equal 'The First Part of King Henry the Fourth', first['title']
|
56
|
-
assert_equal 'Prince', first['who']
|
57
52
|
assert first.text?
|
58
53
|
assert_not_nil first.text
|
59
54
|
assert_match /^ cat or a lugged bear/, first.text
|
60
|
-
assert_match /
|
55
|
+
assert_match /Falstaff$/, first.text
|
61
56
|
assert_not_nil first.html
|
62
57
|
assert_match /^ cat or a lugged bear/, first.html
|
63
|
-
assert_match /
|
58
|
+
assert_match /Falstaff$/, first.html
|
64
59
|
|
65
60
|
last = r.results.last
|
66
61
|
assert_not_nil last
|
@@ -68,7 +63,6 @@ class TestConcordance < TestResponse
|
|
68
63
|
assert_equal 50, last['hit_n']
|
69
64
|
assert_equal 'William Shakespeare', last['author']
|
70
65
|
assert_equal "A Midsummer Night's Dream", last['title']
|
71
|
-
assert_equal 'Bottom', last['who']
|
72
66
|
|
73
67
|
assert last.text?
|
74
68
|
assert_not_nil last.text
|
data/test/test_document.rb
CHANGED
@@ -1,11 +1,7 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
require 'philologic-client'
|
7
|
-
require 'test_response'
|
8
|
-
require 'test/unit'
|
3
|
+
require_relative 'helper'
|
4
|
+
require_relative 'test_response'
|
9
5
|
|
10
6
|
|
11
7
|
class TestDocument < TestResponse
|
@@ -69,13 +65,13 @@ class TestDocument < TestResponse
|
|
69
65
|
assert_equal 'The First Part of King Henry the Fourth', r['title']
|
70
66
|
|
71
67
|
assert r.links?
|
72
|
-
assert_kind_of Array,
|
73
|
-
assert_equal 26,
|
68
|
+
assert_kind_of Array, r.links
|
69
|
+
assert_equal 26, r.links.size
|
74
70
|
assert_kind_of Philologic::Client::Link, r.links.first
|
75
|
-
|
76
|
-
assert_equal '',
|
71
|
+
assert r.links.first.url =~ %r{/dispatcher.py/1/2/0/0/0/0/0$}
|
72
|
+
assert_equal '[div1]', r.links.first.text
|
77
73
|
assert_kind_of Philologic::Client::Link, r.links.last
|
78
|
-
|
74
|
+
assert r.links.last.url =~ %r{dispatcher.py/1/7/6/0/0/0/0$}
|
79
75
|
assert_equal 'Act 5, Scene 5', r.links.last.text
|
80
76
|
|
81
77
|
assert !r.text?
|
data/test/test_frequency.rb
CHANGED
@@ -1,11 +1,7 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
require 'philologic-client'
|
7
|
-
require 'test_response'
|
8
|
-
require 'test/unit'
|
3
|
+
require_relative 'helper'
|
4
|
+
require_relative 'test_response'
|
9
5
|
|
10
6
|
|
11
7
|
class TestFrequency < TestResponse
|
@@ -61,17 +57,17 @@ class TestFrequency < TestResponse
|
|
61
57
|
|
62
58
|
first = r.results.first
|
63
59
|
assert_not_nil first
|
64
|
-
assert_kind_of Philologic::Client::FrequencyRow,
|
65
|
-
assert_equal "A Midsummer Night's Dream",
|
66
|
-
assert_equal './?q=lion&title
|
67
|
-
assert_equal '30',
|
60
|
+
assert_kind_of Philologic::Client::FrequencyRow, first
|
61
|
+
assert_equal "A Midsummer Night's Dream", first.label
|
62
|
+
assert_equal './?q=lion&method=proxy&title=%22A+Midsummer+Night%27s+Dream%22', first.link
|
63
|
+
assert_equal '30', first.value
|
68
64
|
|
69
65
|
last = r.results.last
|
70
66
|
assert_not_nil last
|
71
|
-
assert_kind_of Philologic::Client::FrequencyRow,
|
72
|
-
assert_equal 'As You Like It',
|
73
|
-
assert_equal './?q=lion&title
|
74
|
-
assert_equal '1',
|
67
|
+
assert_kind_of Philologic::Client::FrequencyRow, last
|
68
|
+
assert_equal 'As You Like It', last.label
|
69
|
+
assert_equal './?q=lion&method=proxy&title=%22As+You+Like+It%22', last.link
|
70
|
+
assert_equal '1', last.value
|
75
71
|
end
|
76
72
|
|
77
73
|
end
|
data/test/test_occurrence.rb
CHANGED
@@ -1,10 +1,6 @@
|
|
1
1
|
# encoding: utf-8
|
2
2
|
|
3
|
-
|
4
|
-
SimpleCov.start
|
5
|
-
|
6
|
-
require 'philologic-client'
|
7
|
-
require 'test/unit'
|
3
|
+
require_relative 'helper'
|
8
4
|
|
9
5
|
|
10
6
|
class TestOccurrence < Test::Unit::TestCase
|
@@ -45,8 +41,16 @@ class TestOccurrence < Test::Unit::TestCase
|
|
45
41
|
|
46
42
|
def test_occurrence
|
47
43
|
html = <<EOHTML;
|
48
|
-
<li class='
|
49
|
-
|
44
|
+
<li class='philologic_occurrence'>
|
45
|
+
<span class='hit_n'>1.</span>
|
46
|
+
<span class='philologic_cite'>
|
47
|
+
<span class='philologic_property' title='author'>William Shakespeare</span>
|
48
|
+
<a href='./1?byte=33845' class='philologic_property' title='title'>The First Part of King Henry the Fourth</a>
|
49
|
+
-
|
50
|
+
<a href='./1/3?byte=33845'>Act 1</a>
|
51
|
+
-
|
52
|
+
<a href='./1/3/3?byte=33845'>Act 1, Scene 2</a>
|
53
|
+
</span>
|
50
54
|
</li>
|
51
55
|
EOHTML
|
52
56
|
r = Philologic::Client::Occurrence.new( Nokogiri::HTML(html), @client )
|
@@ -56,10 +60,10 @@ EOHTML
|
|
56
60
|
assert_not_nil r.client
|
57
61
|
assert_equal @client, r.client
|
58
62
|
|
63
|
+
assert_equal 1, r['hit_n']
|
59
64
|
assert_equal 'William Shakespeare', r['author']
|
60
65
|
assert_equal 'The First Part of King Henry the Fourth', r['title']
|
61
|
-
assert_equal '',
|
62
|
-
assert_equal './1/0/0/0/0', r['href']
|
66
|
+
assert_equal './1?byte=33845', r['href']
|
63
67
|
end
|
64
68
|
|
65
69
|
end
|
data/test/test_response.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: philologic-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-11-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,15 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
25
30
|
- !ruby/object:Gem::Dependency
|
26
31
|
name: rdoc
|
27
|
-
requirement:
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
28
33
|
none: false
|
29
34
|
requirements:
|
30
35
|
- - ! '>='
|
@@ -32,10 +37,15 @@ dependencies:
|
|
32
37
|
version: '0'
|
33
38
|
type: :development
|
34
39
|
prerelease: false
|
35
|
-
version_requirements:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
36
46
|
- !ruby/object:Gem::Dependency
|
37
47
|
name: mocha
|
38
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
39
49
|
none: false
|
40
50
|
requirements:
|
41
51
|
- - ! '>='
|
@@ -43,10 +53,15 @@ dependencies:
|
|
43
53
|
version: '0'
|
44
54
|
type: :development
|
45
55
|
prerelease: false
|
46
|
-
version_requirements:
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
47
62
|
- !ruby/object:Gem::Dependency
|
48
63
|
name: rdoc-readme
|
49
|
-
requirement:
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
50
65
|
none: false
|
51
66
|
requirements:
|
52
67
|
- - ~>
|
@@ -54,10 +69,15 @@ dependencies:
|
|
54
69
|
version: 0.1.2
|
55
70
|
type: :development
|
56
71
|
prerelease: false
|
57
|
-
version_requirements:
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ~>
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 0.1.2
|
58
78
|
- !ruby/object:Gem::Dependency
|
59
79
|
name: simplecov
|
60
|
-
requirement:
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
61
81
|
none: false
|
62
82
|
requirements:
|
63
83
|
- - ! '>='
|
@@ -65,10 +85,15 @@ dependencies:
|
|
65
85
|
version: '0'
|
66
86
|
type: :development
|
67
87
|
prerelease: false
|
68
|
-
version_requirements:
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
69
94
|
- !ruby/object:Gem::Dependency
|
70
95
|
name: nokogiri
|
71
|
-
requirement:
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
72
97
|
none: false
|
73
98
|
requirements:
|
74
99
|
- - ! '>='
|
@@ -76,7 +101,12 @@ dependencies:
|
|
76
101
|
version: '0'
|
77
102
|
type: :runtime
|
78
103
|
prerelease: false
|
79
|
-
version_requirements:
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
80
110
|
description: Ruby client for interacting with the Philologic API.
|
81
111
|
email:
|
82
112
|
- blair.christensen@gmail.com
|
@@ -108,6 +138,7 @@ files:
|
|
108
138
|
- test/data/frequency.html
|
109
139
|
- test/data/navigation.html
|
110
140
|
- test/data/object.html
|
141
|
+
- test/helper.rb
|
111
142
|
- test/test_bibliography.rb
|
112
143
|
- test/test_client.rb
|
113
144
|
- test/test_collocation.rb
|
@@ -128,21 +159,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
128
159
|
- - ! '>='
|
129
160
|
- !ruby/object:Gem::Version
|
130
161
|
version: '0'
|
131
|
-
segments:
|
132
|
-
- 0
|
133
|
-
hash: 1785018451817117729
|
134
162
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
135
163
|
none: false
|
136
164
|
requirements:
|
137
165
|
- - ! '>='
|
138
166
|
- !ruby/object:Gem::Version
|
139
167
|
version: '0'
|
140
|
-
segments:
|
141
|
-
- 0
|
142
|
-
hash: 1785018451817117729
|
143
168
|
requirements: []
|
144
169
|
rubyforge_project: philologic-client
|
145
|
-
rubygems_version: 1.8.
|
170
|
+
rubygems_version: 1.8.23
|
146
171
|
signing_key:
|
147
172
|
specification_version: 3
|
148
173
|
summary: Ruby client for interacting with the Philologic API.
|
@@ -153,6 +178,7 @@ test_files:
|
|
153
178
|
- test/data/frequency.html
|
154
179
|
- test/data/navigation.html
|
155
180
|
- test/data/object.html
|
181
|
+
- test/helper.rb
|
156
182
|
- test/test_bibliography.rb
|
157
183
|
- test/test_client.rb
|
158
184
|
- test/test_collocation.rb
|
@@ -161,3 +187,4 @@ test_files:
|
|
161
187
|
- test/test_frequency.rb
|
162
188
|
- test/test_occurrence.rb
|
163
189
|
- test/test_response.rb
|
190
|
+
has_rdoc:
|