pubmed_search 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,53 @@
1
+ require 'spec'
2
+ require 'uri'
3
+ require 'fakeweb'
4
+
5
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
6
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
7
+ require 'pubmed_search'
8
+
9
+
10
+
11
+ Spec::Runner.configure do |config|
12
+
13
+ end
14
+
15
+ FakeWeb.allow_net_connect = false
16
+
17
+ def fake_esearch_response(search_term, options={})
18
+ file = options[:file] || search_term.downcase.gsub(/\W/, '_')
19
+ FakeWeb.register_uri(:any, "http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=pubmed&retmax=100000&retstart=0&term=#{URI.escape search_term}",
20
+ :body => File.dirname(__FILE__) + "/responses/#{file}.xml")
21
+ end
22
+
23
+
24
+ class OnlyInclude
25
+ def initialize(entries)
26
+ @expected_entries = entries
27
+ end
28
+
29
+ def matches?(array)
30
+ @array = array
31
+ @array.sort == @expected_entries.sort
32
+ end
33
+
34
+ def description
35
+ "only include"
36
+ end
37
+
38
+ def failure_message
39
+ if @expected_entries.length != @array.length
40
+ "expected to have #{@expected_entries.length} entries, but had #{@array.length}: #{@array.inspect}"
41
+ else
42
+ "expected #{@array.inspect} to include #{(@expected_entries - @array).inspect}"
43
+ end
44
+ end
45
+
46
+ def negative_failure_message
47
+ "#{@array.inspect} expected to include other entries"
48
+ end
49
+ end
50
+
51
+ def only_include(*args)
52
+ OnlyInclude.new args
53
+ end
metadata ADDED
@@ -0,0 +1,91 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: pubmed_search
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0
5
+ platform: ruby
6
+ authors:
7
+ - Ryan Schenk
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2010-01-30 00:00:00 -05:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: rschenk-simple_uri_template
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: nokogiri
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: "0"
34
+ version:
35
+ description:
36
+ email: rschenk@gmail.com
37
+ executables: []
38
+
39
+ extensions: []
40
+
41
+ extra_rdoc_files:
42
+ - LICENSE
43
+ - README.rdoc
44
+ files:
45
+ - .document
46
+ - .gitignore
47
+ - LICENSE
48
+ - README.rdoc
49
+ - Rakefile
50
+ - VERSION
51
+ - lib/pubmed_search.rb
52
+ - pubmed_search.gemspec
53
+ - spec/pubmed_search_spec.rb
54
+ - spec/responses/bangana_tonkinensis_cranksection.xml
55
+ - spec/responses/biodiversity_informatics.xml
56
+ - spec/responses/e_coli_0.xml
57
+ - spec/responses/e_coli_1.xml
58
+ - spec/responses/e_coli_2.xml
59
+ - spec/responses/mus_musculus.xml
60
+ - spec/spec_helper.rb
61
+ has_rdoc: true
62
+ homepage: http://github.com/rschenk/pubmed_search
63
+ licenses: []
64
+
65
+ post_install_message:
66
+ rdoc_options:
67
+ - --charset=UTF-8
68
+ require_paths:
69
+ - lib
70
+ required_ruby_version: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: "0"
75
+ version:
76
+ required_rubygems_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: "0"
81
+ version:
82
+ requirements: []
83
+
84
+ rubyforge_project:
85
+ rubygems_version: 1.3.5
86
+ signing_key:
87
+ specification_version: 2
88
+ summary: A PubMed searching library with more features than BioRuby
89
+ test_files:
90
+ - spec/pubmed_search_spec.rb
91
+ - spec/spec_helper.rb