quorum 0.3.1 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
data/.travis.yml ADDED
@@ -0,0 +1,21 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.2
4
+ - 1.9.3
5
+ gemfile:
6
+ - gemfiles/Gemfile.rails-3.1.x
7
+ - gemfiles/Gemfile.rails-3.2.x
8
+ before_install:
9
+ - sudo apt-get update
10
+ - sudo apt-get install ncbi-blast+ emboss
11
+ before_script:
12
+ - "export DISPLAY=:99.0"
13
+ - "sh -e /etc/init.d/xvfb start"
14
+ - bundle install
15
+ - mysql -e "create database quorum_test;"
16
+ - "rake travis:create_db_config"
17
+ - "rake app:db:schema:load"
18
+ script: "rake travis:spec"
19
+ notifications:
20
+ email:
21
+ - "kas@ncgr.org"
data/Gemfile CHANGED
@@ -1,15 +1,7 @@
1
1
  source "http://rubygems.org"
2
2
 
3
- # Declare your gem's dependencies in quorum.gemspec.
4
- # Bundler will treat runtime dependencies like base dependencies, and
5
- # development dependencies will be added by default to the :development group.
6
3
  gemspec
7
4
 
8
- # Declare any dependencies that are still in development here instead of in
9
- # your gemspec. These might include edge Rails or gems from your path or
10
- # Git. Remember to move these dependencies to your gemspec before releasing
11
- # your gem to rubygems.org.
12
-
13
- # To use debugger
14
- # gem 'ruby-debug19', :require => 'ruby-debug'
15
-
5
+ group :test do
6
+ gem 'rake', '~> 0.9.2'
7
+ end
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- quorum (0.3.1)
4
+ quorum (0.3.2)
5
5
  bio-blastxmlparser (~> 1.0.1)
6
6
  jquery-rails
7
7
  net-ssh (~> 2.3.0)
@@ -12,38 +12,39 @@ PATH
12
12
  GEM
13
13
  remote: http://rubygems.org/
14
14
  specs:
15
- actionmailer (3.2.2)
16
- actionpack (= 3.2.2)
17
- mail (~> 2.4.0)
18
- actionpack (3.2.2)
19
- activemodel (= 3.2.2)
20
- activesupport (= 3.2.2)
15
+ actionmailer (3.2.6)
16
+ actionpack (= 3.2.6)
17
+ mail (~> 2.4.4)
18
+ actionpack (3.2.6)
19
+ activemodel (= 3.2.6)
20
+ activesupport (= 3.2.6)
21
21
  builder (~> 3.0.0)
22
22
  erubis (~> 2.7.0)
23
23
  journey (~> 1.0.1)
24
24
  rack (~> 1.4.0)
25
- rack-cache (~> 1.1)
25
+ rack-cache (~> 1.2)
26
26
  rack-test (~> 0.6.1)
27
- sprockets (~> 2.1.2)
28
- activemodel (3.2.2)
29
- activesupport (= 3.2.2)
27
+ sprockets (~> 2.1.3)
28
+ activemodel (3.2.6)
29
+ activesupport (= 3.2.6)
30
30
  builder (~> 3.0.0)
31
- activerecord (3.2.2)
32
- activemodel (= 3.2.2)
33
- activesupport (= 3.2.2)
31
+ activerecord (3.2.6)
32
+ activemodel (= 3.2.6)
33
+ activesupport (= 3.2.6)
34
34
  arel (~> 3.0.2)
35
35
  tzinfo (~> 0.3.29)
36
- activeresource (3.2.2)
37
- activemodel (= 3.2.2)
38
- activesupport (= 3.2.2)
39
- activesupport (3.2.2)
36
+ activeresource (3.2.6)
37
+ activemodel (= 3.2.6)
38
+ activesupport (= 3.2.6)
39
+ activesupport (3.2.6)
40
40
  i18n (~> 0.6)
41
41
  multi_json (~> 1.0)
42
+ addressable (2.2.8)
42
43
  arel (3.0.2)
43
44
  bio-blastxmlparser (1.0.1)
44
45
  bio-logger (>= 1.0.0)
45
46
  nokogiri (>= 1.5.0)
46
- bio-logger (1.0.0)
47
+ bio-logger (1.0.1)
47
48
  log4r (>= 1.1.9)
48
49
  builder (3.0.0)
49
50
  capybara (1.1.2)
@@ -53,9 +54,9 @@ GEM
53
54
  rack-test (>= 0.5.4)
54
55
  selenium-webdriver (~> 2.0)
55
56
  xpath (~> 0.1.4)
56
- childprocess (0.3.1)
57
+ childprocess (0.3.2)
57
58
  ffi (~> 1.0.6)
58
- database_cleaner (0.7.2)
59
+ database_cleaner (0.8.0)
59
60
  diff-lcs (1.1.3)
60
61
  erubis (2.7.0)
61
62
  factory_girl (2.6.4)
@@ -66,27 +67,29 @@ GEM
66
67
  ffi (1.0.11)
67
68
  hike (1.2.1)
68
69
  i18n (0.6.0)
69
- jasmine (1.1.2)
70
- jasmine-core (>= 1.1.0)
71
- rack (>= 1.1)
70
+ jasmine (1.2.0)
71
+ jasmine-core (>= 1.2.0)
72
+ rack (~> 1.0)
72
73
  rspec (>= 1.3.1)
73
74
  selenium-webdriver (>= 0.1.3)
74
- jasmine-core (1.1.0)
75
- journey (1.0.3)
76
- jquery-rails (2.0.1)
75
+ jasmine-core (1.2.0)
76
+ journey (1.0.4)
77
+ jquery-rails (2.0.2)
77
78
  railties (>= 3.2.0, < 5.0)
78
79
  thor (~> 0.14)
79
- json (1.6.6)
80
+ json (1.7.3)
81
+ libwebsocket (0.1.3)
82
+ addressable
80
83
  log4r (1.1.10)
81
84
  mail (2.4.4)
82
85
  i18n (>= 0.4.0)
83
86
  mime-types (~> 1.16)
84
87
  treetop (~> 1.4.8)
85
- mime-types (1.18)
86
- multi_json (1.2.0)
88
+ mime-types (1.19)
89
+ multi_json (1.3.6)
87
90
  mysql2 (0.3.11)
88
91
  net-ssh (2.3.0)
89
- nokogiri (1.5.2)
92
+ nokogiri (1.5.4)
90
93
  polyglot (0.3.3)
91
94
  rack (1.4.1)
92
95
  rack-cache (1.2)
@@ -97,21 +100,21 @@ GEM
97
100
  rack
98
101
  rack-test (0.6.1)
99
102
  rack (>= 1.0)
100
- rails (3.2.2)
101
- actionmailer (= 3.2.2)
102
- actionpack (= 3.2.2)
103
- activerecord (= 3.2.2)
104
- activeresource (= 3.2.2)
105
- activesupport (= 3.2.2)
103
+ rails (3.2.6)
104
+ actionmailer (= 3.2.6)
105
+ actionpack (= 3.2.6)
106
+ activerecord (= 3.2.6)
107
+ activeresource (= 3.2.6)
108
+ activesupport (= 3.2.6)
106
109
  bundler (~> 1.0)
107
- railties (= 3.2.2)
108
- railties (3.2.2)
109
- actionpack (= 3.2.2)
110
- activesupport (= 3.2.2)
110
+ railties (= 3.2.6)
111
+ railties (3.2.6)
112
+ actionpack (= 3.2.6)
113
+ activesupport (= 3.2.6)
111
114
  rack-ssl (~> 1.3.2)
112
115
  rake (>= 0.8.7)
113
116
  rdoc (~> 3.4)
114
- thor (~> 0.14.6)
117
+ thor (>= 0.14.6, < 2.0)
115
118
  rake (0.9.2.2)
116
119
  rdoc (3.12)
117
120
  json (~> 1.4)
@@ -128,42 +131,42 @@ GEM
128
131
  resque-result (1.0.1)
129
132
  resque (~> 1.9)
130
133
  resque-meta (~> 1.0)
131
- resque_spec (0.9.2)
134
+ resque_spec (0.12.2)
132
135
  resque (>= 1.19.0)
133
136
  rspec (>= 2.5.0)
134
- rspec (2.9.0)
135
- rspec-core (~> 2.9.0)
136
- rspec-expectations (~> 2.9.0)
137
- rspec-mocks (~> 2.9.0)
138
- rspec-core (2.9.0)
139
- rspec-expectations (2.9.0)
137
+ rspec (2.10.0)
138
+ rspec-core (~> 2.10.0)
139
+ rspec-expectations (~> 2.10.0)
140
+ rspec-mocks (~> 2.10.0)
141
+ rspec-core (2.10.1)
142
+ rspec-expectations (2.10.0)
140
143
  diff-lcs (~> 1.1.3)
141
- rspec-mocks (2.9.0)
142
- rspec-rails (2.9.0)
144
+ rspec-mocks (2.10.1)
145
+ rspec-rails (2.10.1)
143
146
  actionpack (>= 3.0)
144
147
  activesupport (>= 3.0)
145
148
  railties (>= 3.0)
146
- rspec (~> 2.9.0)
147
- rubyzip (0.9.6.1)
148
- selenium-webdriver (2.20.0)
149
+ rspec (~> 2.10.0)
150
+ rubyzip (0.9.9)
151
+ selenium-webdriver (2.24.0)
149
152
  childprocess (>= 0.2.5)
150
- ffi (~> 1.0)
153
+ libwebsocket (~> 0.1.3)
151
154
  multi_json (~> 1.0)
152
155
  rubyzip
153
156
  sinatra (1.3.2)
154
157
  rack (~> 1.3, >= 1.3.6)
155
158
  rack-protection (~> 1.2)
156
159
  tilt (~> 1.3, >= 1.3.3)
157
- sprockets (2.1.2)
160
+ sprockets (2.1.3)
158
161
  hike (~> 1.2)
159
162
  rack (~> 1.0)
160
163
  tilt (~> 1.1, != 1.3.0)
161
- thor (0.14.6)
164
+ thor (0.15.3)
162
165
  tilt (1.3.3)
163
166
  treetop (1.4.10)
164
167
  polyglot
165
168
  polyglot (>= 0.3.1)
166
- tzinfo (0.3.32)
169
+ tzinfo (0.3.33)
167
170
  vegas (0.1.11)
168
171
  rack (>= 1.0.0)
169
172
  xpath (0.1.4)
@@ -179,5 +182,6 @@ DEPENDENCIES
179
182
  jasmine (~> 1.1)
180
183
  mysql2 (~> 0.3.11)
181
184
  quorum!
185
+ rake (~> 0.9.2)
182
186
  resque_spec (~> 0.8)
183
187
  rspec-rails (~> 2.6)
data/HISTORY.md CHANGED
@@ -1,3 +1,12 @@
1
+ ## 0.3.2 (2012-06--22)
2
+
3
+ * Added support for user defined callback in QUORUM.pollResults().
4
+ Useful if user chooses to define their own view template(s).
5
+ See app/assets/javascripts/quorum/quorum.js and
6
+ app/views/quorum/jobs/show.html.erb for more information.
7
+ * JS bug fixes.
8
+ * Added specs and updated gems.
9
+
1
10
  ## 0.3.1 (2012-04-02)
2
11
 
3
12
  * Added quorum layouts to quorum:views generator.
data/README.rdoc CHANGED
@@ -1,4 +1,4 @@
1
- = Quorum
1
+ = Quorum {<img src="https://secure.travis-ci.org/ncgr/quorum.png?branch=master"alt="Build Status" />}[http://travis-ci.org/ncgr/quorum]
2
2
 
3
3
  A flexible bioinformatics search tool.
4
4
 
@@ -9,6 +9,7 @@ bioinformatics search tools.
9
9
 
10
10
  Dependencies:
11
11
 
12
+ * Ruby >= 1.9.2
12
13
  * Rails >= 3.1.0
13
14
  * Redis >= 0.900 for Resque (https://github.com/defunkt/resque)
14
15
  * NCBI Blast+ (ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST)
@@ -162,9 +163,10 @@ Follow the steps below to execute Quorum remotely via Net::SSH.
162
163
  * Ensure you have supplied the necessary information in
163
164
  "config/quorum_settings.yml" to execute Quorum remotely.
164
165
 
165
- <tt>remote: true</tt>
166
- <tt>ssh_host: remote.machine.org</tt>
167
- <tt>ssh_user: remote_user</tt>
166
+ blast:
167
+ remote: true
168
+ ssh_host: remote.machine.org
169
+ ssh_user: remote_user
168
170
 
169
171
  Net::SSH.start() optional params (http://net-ssh.github.com/ssh/v2/api/index.html)
170
172
 
@@ -224,7 +226,7 @@ To override Quorum's default images, run the generator.
224
226
  A copy of Quorum's images can be found in your application under
225
227
  "app/assets/images/quorum/".
226
228
 
227
- <b>jQuery UI</b>
229
+ ==== jQuery UI
228
230
 
229
231
  Don't like Quorum's jQuery UI theme? Override it!
230
232
 
@@ -233,34 +235,36 @@ Don't like Quorum's jQuery UI theme? Override it!
233
235
  * Replace Quorum's theme in "app/assets/{stylesheets:images}/quorum" with
234
236
  your own.
235
237
 
236
- Don't plan on supporting all of Quorum's alogrithms? Override Quorum's views
237
- and comment out any unwanted algorithms in "app/views/quorum/jobs/new.html.erb"
238
- and "app/views/quorum/jobs/show.html.erb".
238
+ ==== Don't plan on supporting all of Quorum's alogrithms?
239
+
240
+ Override Quorum's views and comment out any unwanted algorithms in
241
+ "app/views/quorum/jobs/new.html.erb" and
242
+ "app/views/quorum/jobs/show.html.erb".
239
243
 
240
244
  For example:
241
245
 
242
246
  Remove Blastp in "app/views/quorum/jobs/new.html.erb"
243
247
 
244
- <!-- Search Algorithms -->
245
- <!-- Comment out an algorithm below to remove it from the form. -->
248
+ <%# Search Algorithms %>
249
+ <%# Comment out an algorithm below to remove it from the form. %>
246
250
 
247
- <!-- blastn -->
251
+ <%# blastn %>
248
252
  <%= render :partial => "quorum/jobs/form/blastn_form", :locals => {
249
253
  :f => f, :blast_dbs => @blast_dbs } %>
250
254
 
251
- <!-- blastx -->
255
+ <%# blastx %>
252
256
  <%= render :partial => "quorum/jobs/form/blastx_form", :locals => {
253
257
  :f => f, :blast_dbs => @blast_dbs } %>
254
258
 
255
- <!-- tblastn -->
259
+ <%# tblastn %>
256
260
  <%= render :partial => "quorum/jobs/form/tblastn_form", :locals => {
257
261
  :f => f, :blast_dbs => @blast_dbs } %>
258
262
 
259
- <!-- blastp -->
263
+ <%# blastp %>
260
264
  <% render :partial => "quorum/jobs/form/blastp_form", :locals => {
261
265
  :f => f, :blast_dbs => @blast_dbs } %>
262
266
 
263
- <!-- End Search Algorithms -->
267
+ <%# End Search Algorithms %>
264
268
 
265
269
  Remove Blastp in "app/views/quorum/jobs/show.html.erb"
266
270
 
@@ -269,12 +273,12 @@ Remove Blastp in "app/views/quorum/jobs/show.html.erb"
269
273
  <li><a href="#tabs-1">Blastn</a></li>
270
274
  <li><a href="#tabs-2">Blastx</a></li>
271
275
  <li><a href="#tabs-3">Tblastn</a></li>
272
- <!--
276
+ <%#
273
277
  <li><a href="#tabs-4">Blastp</a></li>
274
- -->
278
+ %>
275
279
  </ul>
276
280
 
277
- <!-- Search results per algorithm -->
281
+ <%# Search results per algorithm %>
278
282
  <div id="tabs-1">
279
283
  <h2>Blastn</h2>
280
284
  <div id="blastn-results">
@@ -306,6 +310,12 @@ Remove Blastp in "app/views/quorum/jobs/show.html.erb"
306
310
  -->
307
311
  </div>
308
312
 
313
+ ==== Don't like Quorum's default show template?
314
+
315
+ Override Quorum's views and specify your own JavaScript callback function!
316
+
317
+ See "app/views/quorum/show.html.erb" for more details.
318
+
309
319
  === Redis
310
320
 
311
321
  For detailed Redis installation instructions, follow the links below.
@@ -321,7 +331,7 @@ the link below.
321
331
 
322
332
  * Resque (https://github.com/defunkt/resque)
323
333
 
324
- <b>Resque Web Interface</b>
334
+ ==== Resque Web Interface
325
335
 
326
336
  Quorum mounts Resque's web interface by default via
327
337
 
data/Rakefile CHANGED
@@ -29,3 +29,54 @@ task :default => :spec
29
29
 
30
30
  Bundler::GemHelper.install_tasks
31
31
 
32
+ # Travis Tasks
33
+ namespace :travis do
34
+ # Specs
35
+ task :spec do
36
+ Rake::Task["travis:create_dirs"].execute
37
+ ["rake spec", "rake app:jasmine:ci JASMINE_PORT=53331"].each do |cmd|
38
+ puts "Starting to run #{cmd}..."
39
+ system("export DISPLAY=:99.0 && bundle exec #{cmd}")
40
+ raise "#{cmd} failed!" unless $?.exitstatus == 0
41
+ end
42
+ Rake::Task["travis:remove_db_config"].execute
43
+ end
44
+
45
+ # Create spec/dummy/config/database.yml for Travis.
46
+ task :create_db_config do
47
+ config = File.expand_path("../spec/dummy/config", __FILE__)
48
+ File.open(File.join(config, "database.yml"), "w+") do |file|
49
+ file.puts "test:\n adapter: mysql2\n database: quorum_test\n" <<
50
+ " username: root\n password:\n host: localhost\n encoding: utf8"
51
+ end
52
+ end
53
+
54
+ # Remove spec/dummy/config/database.yml after Travis.
55
+ task :remove_db_config do
56
+ config = File.expand_path("../spec/dummy/config", __FILE__)
57
+ File.delete(File.join(config, "database.yml"))
58
+ end
59
+
60
+ # Create necessary directories for test. Mimic a real app install
61
+ # via rails g quorum:install.
62
+ #
63
+ # The directories below are not in the git repo.
64
+ task :create_dirs do
65
+ app = File.expand_path("../spec/dummy", __FILE__)
66
+ quorum = File.expand_path("../spec/dummy/quorum", __FILE__)
67
+
68
+ app_tmp = File.join(app, "tmp")
69
+ app_pids = File.join(app_tmp, "pids")
70
+ app_cache = File.join(app_tmp, "cache")
71
+
72
+ Dir.mkdir(app_tmp) unless File.directory?(app_tmp)
73
+ Dir.mkdir(app_pids) unless File.directory?(app_pids)
74
+ Dir.mkdir(app_cache) unless File.directory?(app_cache)
75
+
76
+ quorum_log = File.join(quorum, "log")
77
+ quorum_tmp = File.join(quorum, "tmp")
78
+
79
+ Dir.mkdir(quorum_log) unless File.directory?(quorum_log)
80
+ Dir.mkdir(quorum_tmp) unless File.directory?(quorum_tmp)
81
+ end
82
+ end
@@ -59,6 +59,10 @@ $(function() {
59
59
  form.autoHint('removeHints');
60
60
  });
61
61
 
62
+ $(window).unload(function() {
63
+ $('input[type=submit]', 'form').val('Submit').removeAttr('disabled');
64
+ });
65
+
62
66
  // Reset form.
63
67
  $('#quorum_job_reset').click(function() {
64
68
  $('textarea').val('');