intermine 0.98.04 → 0.98.05
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/lib/intermine/query.rb +17 -0
- data/lib/intermine/results.rb +1 -1
- data/lib/intermine/service.rb +6 -0
- data/lib/intermine/version.rb +1 -1
- data/test/live_test.rb +22 -1
- metadata +3 -3
data/lib/intermine/query.rb
CHANGED
|
@@ -356,6 +356,17 @@ module InterMine::PathQuery
|
|
|
356
356
|
return doc
|
|
357
357
|
end
|
|
358
358
|
|
|
359
|
+
# Return true if the other query has exactly
|
|
360
|
+
# the same configuration, and belongs to the same
|
|
361
|
+
# service.
|
|
362
|
+
def eql?(other)
|
|
363
|
+
if other.is_a? Query
|
|
364
|
+
return self.service == other.service && self.to_xml_to_s == other.to_xml.to_s
|
|
365
|
+
else
|
|
366
|
+
return false
|
|
367
|
+
end
|
|
368
|
+
end
|
|
369
|
+
|
|
359
370
|
# Get your own result reader for handling the results at a low level.
|
|
360
371
|
# If no columns have been selected for output before requesting results,
|
|
361
372
|
# all attribute columns will be selected.
|
|
@@ -498,11 +509,16 @@ module InterMine::PathQuery
|
|
|
498
509
|
# Any columns ending in "*" will be interpreted as a request to add
|
|
499
510
|
# all attribute columns from that table to the query
|
|
500
511
|
#
|
|
512
|
+
# Any columns that name a class or reference will add the id of that
|
|
513
|
+
# object to the query. This is helpful for creating lists and other
|
|
514
|
+
# specialist services.
|
|
515
|
+
#
|
|
501
516
|
# query = service.query("Gene")
|
|
502
517
|
# query.add_views("*")
|
|
503
518
|
# query.add_to_select("*")
|
|
504
519
|
# query.add_views("proteins.*")
|
|
505
520
|
# query.add_views("pathways.*", "organism.shortName")
|
|
521
|
+
# query.add_views("proteins", "exons")
|
|
506
522
|
#
|
|
507
523
|
def add_views(*views)
|
|
508
524
|
views.flatten.map do |x|
|
|
@@ -514,6 +530,7 @@ module InterMine::PathQuery
|
|
|
514
530
|
add_views(attrs)
|
|
515
531
|
else
|
|
516
532
|
path = InterMine::Metadata::Path.new(y, @model, subclasses)
|
|
533
|
+
path = InterMine::Metadata::Path.new(y.to_s + ".id", @model, subclasses) unless path.is_attribute?
|
|
517
534
|
if @root.nil?
|
|
518
535
|
@root = path.rootClass
|
|
519
536
|
end
|
data/lib/intermine/results.rb
CHANGED
|
@@ -333,7 +333,7 @@ module InterMine::Results
|
|
|
333
333
|
|
|
334
334
|
|
|
335
335
|
# Get the parameters for this request, given the specified format.
|
|
336
|
-
def params(format)
|
|
336
|
+
def params(format="tab")
|
|
337
337
|
p = @query.params.merge("start" => @start, "format" => format)
|
|
338
338
|
p["size"] = @size unless @size.nil?
|
|
339
339
|
return p
|
data/lib/intermine/service.rb
CHANGED
|
@@ -92,6 +92,7 @@ module InterMine
|
|
|
92
92
|
extend Forwardable
|
|
93
93
|
|
|
94
94
|
VERSION_PATH = "/version"
|
|
95
|
+
RELEASE_PATH = "/version/release"
|
|
95
96
|
MODEL_PATH = "/model/json"
|
|
96
97
|
TEMPLATES_PATH = "/templates"
|
|
97
98
|
QUERY_RESULTS_PATH = "/query/results"
|
|
@@ -162,6 +163,11 @@ module InterMine
|
|
|
162
163
|
@list_manager = InterMine::Lists::ListManager.new(self)
|
|
163
164
|
end
|
|
164
165
|
|
|
166
|
+
# Return the release string
|
|
167
|
+
def release
|
|
168
|
+
return @release ||= fetch(@root + RELEASE_PATH)
|
|
169
|
+
end
|
|
170
|
+
|
|
165
171
|
# call-seq:
|
|
166
172
|
# model() => Model
|
|
167
173
|
#
|
data/lib/intermine/version.rb
CHANGED
data/test/live_test.rb
CHANGED
|
@@ -3,7 +3,28 @@ require File.dirname(__FILE__) + "/test_helper.rb"
|
|
|
3
3
|
require "test/unit"
|
|
4
4
|
require "intermine/service"
|
|
5
5
|
|
|
6
|
-
class
|
|
6
|
+
class LiveDemoTest < Test::Unit::TestCase
|
|
7
|
+
|
|
8
|
+
def setup
|
|
9
|
+
@service = Service.new("http://localhost:8080/intermine-test")
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def testVersion
|
|
13
|
+
assert(@service.version >= 6)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def testRelease
|
|
17
|
+
assert_match(/test/i, @service.release)
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def testCount
|
|
21
|
+
assert_equal(7, @service.query("Company").count)
|
|
22
|
+
assert_equal(3, @service.query("Department").where(:name => "Sales").count)
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
class LiveFlyMineTest < Test::Unit::TestCase
|
|
7
28
|
|
|
8
29
|
def setup
|
|
9
30
|
@service = Service.new("www.flymine.org/query")
|
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: intermine
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
hash:
|
|
4
|
+
hash: 413
|
|
5
5
|
prerelease: false
|
|
6
6
|
segments:
|
|
7
7
|
- 0
|
|
8
8
|
- 98
|
|
9
|
-
-
|
|
10
|
-
version: 0.98.
|
|
9
|
+
- 5
|
|
10
|
+
version: 0.98.05
|
|
11
11
|
platform: ruby
|
|
12
12
|
authors:
|
|
13
13
|
- Alex Kalderimis
|