toxbank-investigation 0.0.1pre-x86-linux

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. data/.gitignore +11 -0
  2. data/Gemfile +7 -0
  3. data/Gemfile.lock +101 -0
  4. data/LICENSE +674 -0
  5. data/README +14 -0
  6. data/Rakefile +31 -0
  7. data/application.rb +246 -0
  8. data/bin/toxbank-investigation-install +76 -0
  9. data/config/production.rb +9 -0
  10. data/config.ru +5 -0
  11. data/java/config/isa_configurator/cellcount_flowcytometry.xml +1 -0
  12. data/java/config/isa_configurator/cellsorting_flowcyt.xml +5 -0
  13. data/java/config/isa_configurator/clinical_chemistry.xml +1 -0
  14. data/java/config/isa_configurator/copynumvariation_micro.xml +1 -0
  15. data/java/config/isa_configurator/dnamethylation_micro.xml +1 -0
  16. data/java/config/isa_configurator/dnamethylation_seq.xml +1 -0
  17. data/java/config/isa_configurator/envgen_survey_seq.xml +1 -0
  18. data/java/config/isa_configurator/genome_seq.xml +1 -0
  19. data/java/config/isa_configurator/hematology.xml +1 -0
  20. data/java/config/isa_configurator/heterozygosity_micro.xml +1 -0
  21. data/java/config/isa_configurator/histology.xml +1 -0
  22. data/java/config/isa_configurator/histonemodification_seq.xml +1 -0
  23. data/java/config/isa_configurator/metaboliteprofiling_ms.xml +114 -0
  24. data/java/config/isa_configurator/metaboliteprofiling_nmr.xml +114 -0
  25. data/java/config/isa_configurator/metagenome_seq.xml +1 -0
  26. data/java/config/isa_configurator/nru_assay.xml +8 -0
  27. data/java/config/isa_configurator/ppi_detection_micro.xml +1 -0
  28. data/java/config/isa_configurator/protein_dna_binding_ident_micro.xml +1 -0
  29. data/java/config/isa_configurator/protein_dna_binding_ident_seq.xml +1 -0
  30. data/java/config/isa_configurator/protein_expression_ge.xml +101 -0
  31. data/java/config/isa_configurator/protein_expression_micro.xml +1 -0
  32. data/java/config/isa_configurator/protein_expression_ms.xml +1 -0
  33. data/java/config/isa_configurator/proteinident_ms.xml +1 -0
  34. data/java/config/isa_configurator/snpanalysis_micro.xml +1 -0
  35. data/java/config/isa_configurator/studySample.xml +1 -0
  36. data/java/config/isa_configurator/tfbsident_micro.xml +1 -0
  37. data/java/config/isa_configurator/tfbsident_seq.xml +1 -0
  38. data/java/config/isa_configurator/transcription_micro.xml +1 -0
  39. data/java/config/isa_configurator/transcription_rtpcr.xml +1 -0
  40. data/java/config/isa_configurator/transcription_seq.xml +6 -0
  41. data/test/Rakefile +48 -0
  42. data/test/all.rb +3 -0
  43. data/test/authorization.rb +112 -0
  44. data/test/basic_rest.rb +98 -0
  45. data/test/data/invalid/BII-invalid.n3 +19641 -0
  46. data/test/data/invalid/a_TB-ACCUTOX-plate1.txt +97 -0
  47. data/test/data/invalid/a_TB-ACCUTOX-plate2.txt +97 -0
  48. data/test/data/invalid/a_TB-ACCUTOX-plate3.txt +97 -0
  49. data/test/data/invalid/acetaminophen-plate1-data.txt +97 -0
  50. data/test/data/invalid/acetaminophen-plate2-data.txt +97 -0
  51. data/test/data/invalid/acetaminophen-plate3-data.txt +97 -0
  52. data/test/data/invalid/i_Investigation.txt +156 -0
  53. data/test/data/invalid/ic50.txt +20 -0
  54. data/test/data/invalid/isa_TB_ACCUTOX.xls +0 -0
  55. data/test/data/invalid/isa_TB_ACCUTOX.zip +0 -0
  56. data/test/data/invalid/s_TB-ACCUTOX-acetaminophen.txt +58 -0
  57. data/test/data/valid/BII-I-1.n3 +19648 -0
  58. data/test/data/valid/BII-I-1.rdf +19648 -0
  59. data/test/data/valid/BII-I-1.zip +0 -0
  60. data/test/data/valid/isa-tab-renamed.zip +0 -0
  61. data/test/data/valid/isa_TB_BII.xls +0 -0
  62. data/test/httpd.rb +69 -0
  63. data/test/querytest.rb +42 -0
  64. data/test/upload.rb +152 -0
  65. data/test/xls_upload.rb +60 -0
  66. data/toxbank-investigation.gemspec +29 -0
  67. metadata +133 -0
Binary file
Binary file
Binary file
data/test/httpd.rb ADDED
@@ -0,0 +1,69 @@
1
+ require 'rubygems'
2
+ require 'fileutils'
3
+ require 'test/unit'
4
+ require 'uri'
5
+ require 'net/http'
6
+ require File.join('~/.toxbank/userpass.rb')
7
+
8
+
9
+ class UploadTest < Test::Unit::TestCase
10
+
11
+ def setup
12
+ end
13
+
14
+ def teardown
15
+ end
16
+
17
+ def test_01_basic_response
18
+ response = `curl -i --user USER:PASS 'http://4store.in-silico.ch/status/'`.chomp
19
+ assert_match /401/, response
20
+ response = `curl -i --user #{USER}:#{PASS} 'http://4store.in-silico.ch/status/'`.chomp
21
+ assert_match /200/, response
22
+ end
23
+
24
+ def test_02_add_data
25
+ # upload invalid data
26
+ response = `curl -0 -i -u guest:toxbank -T data/invalid/BII-invalid.n3 'http://4store.in-silico.ch/data/BII-I-1.n3'`.chomp
27
+ assert_match /400/, response
28
+ # upload valid data
29
+ response = `curl -0 -i -u #{USER}:#{PASS} -T data/valid/BII-I-1.n3 'http://4store.in-silico.ch/data/BII-I-1.n3'`.chomp
30
+ assert_match /201/, response
31
+ end
32
+
33
+ def test_03_query_all
34
+ response = `curl -i -u #{USER}:#{PASS} 'http://4store.in-silico.ch/sparql/'`.chomp
35
+ assert_match /500/, response
36
+ response = `curl -i -u #{USER}:#{PASS} -d "query=SELECT * WHERE {?s ?p ?o} LIMIT 10" 'http://4store.in-silico.ch/sparql/'`.chomp
37
+ assert_match /200/, response
38
+ end
39
+
40
+ def test_04_delete_data
41
+ response = `curl -i -u #{USER}:#{PASS} -X DELETE 'http://4store.in-silico.ch/data/BII-I-1.n3'`.chomp
42
+ assert_match /200/, response
43
+ end
44
+
45
+ def test_05_simultaneous_uploads
46
+ threads = []
47
+ 5.times do |t|
48
+ threads << Thread.new(t) do |up|
49
+ #puts "Start Time >> " << (Time.now).to_s
50
+ response = `curl -0 -i -u #{USER}:#{PASS} -T data/valid/BII-I-1.n3 'http://4store.in-silico.ch/data/test#{t}.n3'`.chomp
51
+ assert_match /201/, response
52
+ end
53
+ end
54
+ threads.each {|aThread| aThread.join}
55
+ end
56
+
57
+ def test_06_delete_simultaneous
58
+ threads = []
59
+ 5.times do |t|
60
+ threads << Thread.new(t) do |up|
61
+ #puts "Start Time >> " << (Time.now).to_s
62
+ response = `curl -i -u #{USER}:#{PASS} -X DELETE 'http://4store.in-silico.ch/data/test#{t}.n3'`.chomp
63
+ assert_match /200/, response
64
+ end
65
+ end
66
+ threads.each {|aThread| aThread.join}
67
+ end
68
+
69
+ end
data/test/querytest.rb ADDED
@@ -0,0 +1,42 @@
1
+ require 'rubygems'
2
+ require 'fileutils'
3
+ require 'test/unit'
4
+ require 'uri'
5
+
6
+ #HOST="http://localhost/"
7
+
8
+ class QueryTest < Test::Unit::TestCase
9
+
10
+ def setup
11
+ info = `4s-size ToxBank`
12
+ response = `curl -X POST -i -F file="@data/valid/BII-I-1.zip;type=application/zip" -H "subjectid:#{@@subjectid}" #{HOST}`.chomp
13
+ assert_match /200/, response
14
+ end
15
+
16
+ def teardown
17
+ end
18
+
19
+
20
+ def test_01_get_list_of_investigations
21
+
22
+ response = `curl "http://localhost/?subjectid=#{CGI.escape(@@subjectid)}"`.chomp
23
+ uri = response.split("\n").last
24
+
25
+ # query for all in all investigations
26
+ res = `curl -i -H "Accept:application/sparql-results+json" -H "subjectid:#{@@subjectid}" #{HOST}?query_all=`
27
+ assert_match /200/, res
28
+ assert_match /head/, res
29
+ assert_match /results/, res
30
+ assert_match /bindings/, res
31
+
32
+ # delete Model in 4store
33
+ del = `4s-delete-model ToxBank #{uri}`
34
+ # delete Investigation
35
+ response = `curl -i -X DELETE -H "subjectid:#{@@subjectid}" #{uri}`
36
+ puts assert_match /200/, response
37
+ response = `curl -i -H "Accept:text/uri-list" -H "subjectid:#{@@subjectid}" #{uri}`
38
+ puts assert_match /404/, response
39
+
40
+ end
41
+
42
+ end
data/test/upload.rb ADDED
@@ -0,0 +1,152 @@
1
+ require 'test/unit'
2
+ require 'bundler'
3
+ Bundler.require
4
+ require 'opentox-client'
5
+
6
+ #TODO: check 4store emtries/errors
7
+
8
+ require File.join(ENV["HOME"],".opentox","config","toxbank-investigation","production.rb")
9
+ HOST = "http://localhost:8080"
10
+ class UploadTest < Test::Unit::TestCase
11
+
12
+ def setup
13
+ @tmpdir = File.join(File.dirname(__FILE__),"tmp")
14
+ @tmpdir = "./tmp"
15
+ FileUtils.mkdir_p @tmpdir
16
+ @isatab_files = [
17
+ "i_Investigation.txt",
18
+ "s_TB-ACCUTOX-acetaminophen.txt",
19
+ "a_TB-ACCUTOX-plate1.txt",
20
+ "a_TB-ACCUTOX-plate2.txt",
21
+ "a_TB-ACCUTOX-plate3.txt",
22
+ "acetaminophen-plate1-data.txt",
23
+ "acetaminophen-plate2-data.txt",
24
+ "acetaminophen-plate3-data.txt",
25
+ "ic50.txt",
26
+ ]
27
+ resource = RestClient::Resource.new("#{AA}/auth/authenticate")
28
+ @@subjectid = resource.post(:username=>AA_USER, :password => AA_PASS).sub("token.id=","").sub("\n","")
29
+ end
30
+
31
+ def teardown
32
+ FileUtils.remove_entry_secure @tmpdir
33
+ end
34
+
35
+ def test_get_all
36
+ response = `curl -i #{HOST}`
37
+ assert_match /200/, response
38
+ end
39
+
40
+ def test_get_inexisting
41
+ response = `curl -H "Accept:text/uri-list" -i -H "subjectid:#{@@subjectid}" #{HOST}/foo`.chomp
42
+ assert_match /404/, response
43
+ end
44
+
45
+ def test_valid_zip_upload
46
+
47
+ # upload
48
+ ["BII-I-1.zip","isa-tab-renamed.zip"].each do |f|
49
+ file = File.join File.dirname(__FILE__), "data/valid", f
50
+ response = `curl -X POST -i -F file="@#{file};type=application/zip" -H "subjectid:#{@@subjectid}" #{HOST}`.chomp
51
+ assert_match /202/, response
52
+ uri = response.split("\n")[-1]
53
+ t = OpenTox::Task.new(uri)
54
+ assert_match t.hasStatus, "Running"
55
+ t.wait
56
+ assert_match t.hasStatus, "Completed"
57
+ uri = t.resultURI
58
+ zip = File.join @tmpdir,"tmp.zip"
59
+ #puts "curl -H 'Accept:application/zip' -H 'subjectid:#{@@subjectid}' #{uri} > #{zip}"
60
+ `curl -H "Accept:application/zip" -H "subjectid:#{@@subjectid}" #{uri} > #{zip}`
61
+ `unzip -o #{zip} -d #{@tmpdir}`
62
+ files = `unzip -l data/valid/#{f}|grep txt|cut -c 31- | sed 's#^.*/##'`.split("\n")
63
+ files.each{|f| assert_equal true, File.exists?(File.join(File.expand_path(@tmpdir),f)) }
64
+
65
+ # get isatab files
66
+ `curl -H "Accept:text/uri-list" -H "subjectid:#{@@subjectid}" #{uri}`.split("\n").each do |u|
67
+ unless u.match(/n3$/)
68
+ response = `curl -i -H Accept:text/tab-separated-values -H "subjectid:#{@@subjectid}" #{u}`
69
+ assert_match /HTTP\/1.1 200 OK/, response.to_s.encode!('UTF-8', 'UTF-8', :invalid => :replace)
70
+ end
71
+ end
72
+
73
+ # delete
74
+ response = `curl -i -X DELETE -H "subjectid:#{@@subjectid}" #{uri}`
75
+ assert_match /200/, response
76
+ response = `curl -i -H "Accept:text/uri-list" -H "subjectid:#{@@subjectid}" #{uri}`
77
+ assert_match /404/, response
78
+ =begin
79
+ =end
80
+ end
81
+ end
82
+
83
+ def test_invalid_zip_upload
84
+ file = File.join File.dirname(__FILE__), "data/invalid/isa_TB_ACCUTOX.zip"
85
+ response = `curl -X POST -i -F file="@#{file};type=application/zip" -H "subjectid:#{@@subjectid}" #{HOST}`.chomp
86
+ assert_match /202/, response
87
+ uri = response.split("\n")[-1]
88
+ t = OpenTox::Task.new(uri)
89
+ t.wait
90
+ assert_match t.hasStatus, "Error"
91
+ end
92
+
93
+ =begin
94
+ def test_rest_client_wrapper
95
+ ["BII-I-1.zip","isa-tab-renamed.zip"].each do |f|
96
+ file = File.join File.dirname(__FILE__), "data/valid", f
97
+ investigation_uri = OpenTox::RestClientWrapper.post HOST, {:file => File.read(file),:name => file}, {:content_type => "application/zip", :subjectid => @@subjectid}
98
+ puts investigation_uri
99
+ zip = File.join @tmpdir,"tmp.zip"
100
+ #puts "curl -H 'Accept:application/zip' -H 'subjectid:#{@@subjectid}' #{uri} > #{zip}"
101
+ `curl -H "Accept:application/zip" -H "subjectid:#{@@subjectid}" #{uri} > #{zip}`
102
+ `unzip -o #{zip} -d #{@tmpdir}`
103
+ files = `unzip -l data/valid/#{f}|grep txt|cut -c 31- | sed 's#^.*/##'`.split("\n")
104
+ files.each{|f| assert_equal true, File.exists?(File.join(File.expand_path(@tmpdir),f)) }
105
+
106
+ # get isatab files
107
+ `curl -H "Accept:text/uri-list" -H "subjectid:#{@@subjectid}" #{uri}`.split("\n").each do |u|
108
+ unless u.match(/n3$/)
109
+ response = `curl -i -H Accept:text/tab-separated-values -H "subjectid:#{@@subjectid}" #{u}`
110
+ assert_match /HTTP\/1.1 200 OK/, response.to_s.encode!('UTF-8', 'UTF-8', :invalid => :replace)
111
+ end
112
+ end
113
+
114
+ # delete
115
+ response = `curl -i -X DELETE -H "subjectid:#{@@subjectid}" #{uri}`
116
+ assert_match /200/, response
117
+ response = `curl -i -H "Accept:text/uri-list" -H "subjectid:#{@@subjectid}" #{uri}`
118
+ assert_match /404/, response
119
+ end
120
+ end
121
+ =end
122
+
123
+ =begin
124
+ def test_ruby_api
125
+ ["BII-I-1.zip","isa-tab-renamed.zip"].each do |f|
126
+ file = File.join File.dirname(__FILE__), "data/valid", f
127
+ investigation = OpenTox::Investigation.create HOST, :file => file, :headers => {:content_type => "application/zip", :subjectid => @@subjectid}
128
+ zip = File.join @tmpdir,"tmp.zip"
129
+ #puts "curl -H 'Accept:application/zip' -H 'subjectid:#{@@subjectid}' #{uri} > #{zip}"
130
+ `curl -H "Accept:application/zip" -H "subjectid:#{@@subjectid}" #{uri} > #{zip}`
131
+ `unzip -o #{zip} -d #{@tmpdir}`
132
+ files = `unzip -l data/valid/#{f}|grep txt|cut -c 31- | sed 's#^.*/##'`.split("\n")
133
+ files.each{|f| assert_equal true, File.exists?(File.join(File.expand_path(@tmpdir),f)) }
134
+
135
+ # get isatab files
136
+ `curl -H "Accept:text/uri-list" -H "subjectid:#{@@subjectid}" #{uri}`.split("\n").each do |u|
137
+ unless u.match(/n3$/)
138
+ response = `curl -i -H Accept:text/tab-separated-values -H "subjectid:#{@@subjectid}" #{u}`
139
+ assert_match /HTTP\/1.1 200 OK/, response.to_s.encode!('UTF-8', 'UTF-8', :invalid => :replace)
140
+ end
141
+ end
142
+
143
+ # delete
144
+ response = `curl -i -X DELETE -H "subjectid:#{@@subjectid}" #{uri}`
145
+ assert_match /200/, response
146
+ response = `curl -i -H "Accept:text/uri-list" -H "subjectid:#{@@subjectid}" #{uri}`
147
+ assert_match /404/, response
148
+ end
149
+ end
150
+ =end
151
+
152
+ end
@@ -0,0 +1,60 @@
1
+ require 'rubygems'
2
+ require 'fileutils'
3
+ require 'test/unit'
4
+ require 'uri'
5
+
6
+
7
+ class UploadTest < Test::Unit::TestCase
8
+
9
+ def setup
10
+ @tmpdir = "./tmp"
11
+ FileUtils.mkdir_p @tmpdir
12
+ @isatab_files = [
13
+ "i_Investigation.txt",
14
+ "s_BII-S-1.txt",
15
+ "s_BII-S-2.txt",
16
+ "a_metabolome.txt",
17
+ "a_microarray.txt",
18
+ "a_proteome.txt",
19
+ "a_transcriptome.txt",
20
+ ]
21
+ #@test_files = {"data/isa_TB_ACCUTOX.zip" => 400}
22
+ end
23
+
24
+ def teardown
25
+ FileUtils.remove_entry_secure @tmpdir
26
+ end
27
+
28
+ def test_01_invalid_xls_upload
29
+ # upload
30
+ response = `curl -X POST -i -F file="@data/invalid/isa_TB_ACCUTOX.xls;type=application/vnd.ms-excel" -H "subjectid:#{@@subjectid}" #{HOST}`.chomp
31
+ assert_match /400/, response
32
+ uri = response.split("\n").last
33
+ end
34
+
35
+ def test_02_valid_xls_upload
36
+ # upload
37
+ response = `curl -X POST -i -F file="@data/valid/isa_TB_BII.xls;type=application/vnd.ms-excel" -H "subjectid:#{@@subjectid}" #{HOST}`.chomp
38
+ assert_match /200/, response
39
+ uri = response.split("\n").last
40
+
41
+ # get zip file
42
+ `curl -H "Accept:application/zip" -H "subjectid:#{@@subjectid}" #{uri} > #{@tmpdir}/tmp.zip`
43
+ `unzip -o #{@tmpdir}/tmp.zip -d #{@tmpdir}`
44
+ @isatab_files.each{|f| assert_equal true, File.exists?(File.join(File.expand_path(@tmpdir),f)) }
45
+
46
+ # get isatab files
47
+ `curl -H "Accept:text/uri-list" -H "subjectid:#{@@subjectid}" #{uri}`.split("\n").each do |u|
48
+ puts u
49
+ response = `curl -i -H Accept:text/tab-separated-values -H "subjectid:#{@@subjectid}" #{u}`
50
+ assert_match /200/, response
51
+ end
52
+
53
+ # delete
54
+ response = `curl -i -X DELETE -H "subjectid:#{@@subjectid}" #{uri}`
55
+ assert_match /200/, response
56
+ response = `curl -i -H "Accept:text/uri-list" -H "subjectid:#{@@subjectid}" #{uri}`
57
+ assert_match /404/, response
58
+ end
59
+
60
+ end
@@ -0,0 +1,29 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+
4
+ Gem::Specification.new do |s|
5
+ s.name = "toxbank-investigation"
6
+ s.version = "0.0.1pre"
7
+ s.authors = ["Christoph Helma","Denis Gebele","Micha Rautenberg"]
8
+ s.email = ["helma@in-silico.ch","gebele@in-silico.ch","rautenenberg@in-silico.ch"]
9
+ s.homepage = "http://github.com/ToxBank/toxbank-investigation"
10
+ s.summary = %q{Toxbank investigation service}
11
+ s.description = %q{Toxbank investigation service}
12
+ s.license = 'GPL-3'
13
+ s.platform = Gem::Platform::CURRENT
14
+
15
+ s.rubyforge_project = "toxbank-investigation"
16
+
17
+ s.files = `git ls-files`.split("\n")
18
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
19
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
+ #s.require_paths = ["lib"]
21
+ s.required_ruby_version = '>= 1.9.2'
22
+
23
+ # specify any dependencies here; for example:
24
+ s.add_runtime_dependency "opentox-server"
25
+
26
+ # external requirements
27
+ ["git", "zip", "java", "curl", "wget"].each{|r| s.requirements << r}
28
+ s.post_install_message = "Run toxbank-investigation-install to set up your service"
29
+ end
metadata ADDED
@@ -0,0 +1,133 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: toxbank-investigation
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1pre
5
+ prerelease: 5
6
+ platform: x86-linux
7
+ authors:
8
+ - Christoph Helma
9
+ - Denis Gebele
10
+ - Micha Rautenberg
11
+ autorequire:
12
+ bindir: bin
13
+ cert_chain: []
14
+ date: 2012-03-09 00:00:00.000000000 Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: opentox-server
18
+ requirement: &78809930 !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
21
+ - - ! '>='
22
+ - !ruby/object:Gem::Version
23
+ version: '0'
24
+ type: :runtime
25
+ prerelease: false
26
+ version_requirements: *78809930
27
+ description: Toxbank investigation service
28
+ email:
29
+ - helma@in-silico.ch
30
+ - gebele@in-silico.ch
31
+ - rautenenberg@in-silico.ch
32
+ executables:
33
+ - toxbank-investigation-install
34
+ extensions: []
35
+ extra_rdoc_files: []
36
+ files:
37
+ - .gitignore
38
+ - Gemfile
39
+ - Gemfile.lock
40
+ - LICENSE
41
+ - README
42
+ - Rakefile
43
+ - application.rb
44
+ - bin/toxbank-investigation-install
45
+ - config.ru
46
+ - config/production.rb
47
+ - java/config/isa_configurator/cellcount_flowcytometry.xml
48
+ - java/config/isa_configurator/cellsorting_flowcyt.xml
49
+ - java/config/isa_configurator/clinical_chemistry.xml
50
+ - java/config/isa_configurator/copynumvariation_micro.xml
51
+ - java/config/isa_configurator/dnamethylation_micro.xml
52
+ - java/config/isa_configurator/dnamethylation_seq.xml
53
+ - java/config/isa_configurator/envgen_survey_seq.xml
54
+ - java/config/isa_configurator/genome_seq.xml
55
+ - java/config/isa_configurator/hematology.xml
56
+ - java/config/isa_configurator/heterozygosity_micro.xml
57
+ - java/config/isa_configurator/histology.xml
58
+ - java/config/isa_configurator/histonemodification_seq.xml
59
+ - java/config/isa_configurator/metaboliteprofiling_ms.xml
60
+ - java/config/isa_configurator/metaboliteprofiling_nmr.xml
61
+ - java/config/isa_configurator/metagenome_seq.xml
62
+ - java/config/isa_configurator/nru_assay.xml
63
+ - java/config/isa_configurator/ppi_detection_micro.xml
64
+ - java/config/isa_configurator/protein_dna_binding_ident_micro.xml
65
+ - java/config/isa_configurator/protein_dna_binding_ident_seq.xml
66
+ - java/config/isa_configurator/protein_expression_ge.xml
67
+ - java/config/isa_configurator/protein_expression_micro.xml
68
+ - java/config/isa_configurator/protein_expression_ms.xml
69
+ - java/config/isa_configurator/proteinident_ms.xml
70
+ - java/config/isa_configurator/snpanalysis_micro.xml
71
+ - java/config/isa_configurator/studySample.xml
72
+ - java/config/isa_configurator/tfbsident_micro.xml
73
+ - java/config/isa_configurator/tfbsident_seq.xml
74
+ - java/config/isa_configurator/transcription_micro.xml
75
+ - java/config/isa_configurator/transcription_rtpcr.xml
76
+ - java/config/isa_configurator/transcription_seq.xml
77
+ - test/Rakefile
78
+ - test/all.rb
79
+ - test/authorization.rb
80
+ - test/basic_rest.rb
81
+ - test/data/invalid/BII-invalid.n3
82
+ - test/data/invalid/a_TB-ACCUTOX-plate1.txt
83
+ - test/data/invalid/a_TB-ACCUTOX-plate2.txt
84
+ - test/data/invalid/a_TB-ACCUTOX-plate3.txt
85
+ - test/data/invalid/acetaminophen-plate1-data.txt
86
+ - test/data/invalid/acetaminophen-plate2-data.txt
87
+ - test/data/invalid/acetaminophen-plate3-data.txt
88
+ - test/data/invalid/i_Investigation.txt
89
+ - test/data/invalid/ic50.txt
90
+ - test/data/invalid/isa_TB_ACCUTOX.xls
91
+ - test/data/invalid/isa_TB_ACCUTOX.zip
92
+ - test/data/invalid/s_TB-ACCUTOX-acetaminophen.txt
93
+ - test/data/valid/BII-I-1.n3
94
+ - test/data/valid/BII-I-1.rdf
95
+ - test/data/valid/BII-I-1.zip
96
+ - test/data/valid/isa-tab-renamed.zip
97
+ - test/data/valid/isa_TB_BII.xls
98
+ - test/httpd.rb
99
+ - test/querytest.rb
100
+ - test/upload.rb
101
+ - test/xls_upload.rb
102
+ - toxbank-investigation.gemspec
103
+ homepage: http://github.com/ToxBank/toxbank-investigation
104
+ licenses:
105
+ - GPL-3
106
+ post_install_message: Run toxbank-investigation-install to set up your service
107
+ rdoc_options: []
108
+ require_paths:
109
+ - lib
110
+ required_ruby_version: !ruby/object:Gem::Requirement
111
+ none: false
112
+ requirements:
113
+ - - ! '>='
114
+ - !ruby/object:Gem::Version
115
+ version: 1.9.2
116
+ required_rubygems_version: !ruby/object:Gem::Requirement
117
+ none: false
118
+ requirements:
119
+ - - ! '>'
120
+ - !ruby/object:Gem::Version
121
+ version: 1.3.1
122
+ requirements:
123
+ - git
124
+ - zip
125
+ - java
126
+ - curl
127
+ - wget
128
+ rubyforge_project: toxbank-investigation
129
+ rubygems_version: 1.8.11
130
+ signing_key:
131
+ specification_version: 3
132
+ summary: Toxbank investigation service
133
+ test_files: []