voruby 1.1.1 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (257) hide show
  1. data/Rakefile.rb +107 -224
  2. data/lib/misc.rb +1 -0
  3. data/lib/misc/misc.rb +60 -0
  4. data/lib/misc/propertyfile.rb +31 -0
  5. data/lib/symphony.rb +1 -0
  6. data/lib/symphony/symphony.rb +247 -0
  7. data/lib/voruby.rb +186 -0
  8. data/lib/voruby/active_votable/active_votable.rb +468 -347
  9. data/lib/voruby/adql/1.0/adql.rb +2418 -0
  10. data/lib/voruby/adql/support.rb +2 -0
  11. data/lib/voruby/misc.rb +351 -0
  12. data/lib/voruby/misc/connection_monitor.rb +97 -0
  13. data/lib/voruby/misc/libxml_ext.rb +121 -0
  14. data/lib/voruby/misc/rexml_ext.rb +223 -0
  15. data/lib/voruby/resolver/resolver.rb +12 -0
  16. data/lib/voruby/resolver/sesame.rb +299 -0
  17. data/lib/voruby/sky_query/sky_query.rb +192 -0
  18. data/lib/voruby/stc/1.10/coords.rb +2272 -0
  19. data/lib/voruby/stc/1.10/region.rb +892 -0
  20. data/lib/voruby/stc/1.10/stc.rb +3271 -0
  21. data/lib/voruby/stc/1.30/stc.rb +8666 -0
  22. data/lib/voruby/stc/support.rb +2 -0
  23. data/lib/voruby/ucd/ucd.rb +173 -0
  24. data/lib/voruby/voevent/1.1/voevent.rb +1124 -0
  25. data/lib/voruby/voevent/support.rb +5 -0
  26. data/lib/voruby/votable/1.0/votable.rb +1807 -0
  27. data/lib/voruby/votable/1.1/votable.rb +2100 -0
  28. data/lib/voruby/votable/votable.rb +305 -0
  29. data/lib/voruby/wesix/wesix.rb +491 -0
  30. data/lib/voruby/xlink/1.2/xlink.rb +21 -0
  31. data/test/voruby/active_votable/complex.vot +60 -0
  32. data/test/voruby/active_votable/error.vot +6 -0
  33. data/test/voruby/active_votable/large.vot +130040 -0
  34. data/test/voruby/active_votable/simple1.vot +38 -0
  35. data/test/voruby/active_votable/simple2.vot +38 -0
  36. data/test/voruby/active_votable/test.rb +193 -0
  37. data/test/voruby/adql/1.0/adql-alias.sql +1 -0
  38. data/test/voruby/adql/1.0/adql-alias.xml +26 -0
  39. data/test/voruby/adql/1.0/adql-avg.sql +1 -0
  40. data/test/voruby/adql/1.0/adql-avg.xml +31 -0
  41. data/test/voruby/adql/1.0/adql-circle.sql +1 -0
  42. data/test/voruby/adql/1.0/adql-circle.xml +46 -0
  43. data/test/voruby/adql/1.0/adql-expr.sql +1 -0
  44. data/test/voruby/adql/1.0/adql-expr.xml +34 -0
  45. data/test/voruby/adql/1.0/adql-function.sql +1 -0
  46. data/test/voruby/adql/1.0/adql-function.xml +41 -0
  47. data/test/voruby/adql/1.0/adql-group.sql +1 -0
  48. data/test/voruby/adql/1.0/adql-group.xml +51 -0
  49. data/test/voruby/adql/1.0/adql-having.sql +1 -0
  50. data/test/voruby/adql/1.0/adql-having.xml +25 -0
  51. data/test/voruby/adql/1.0/adql-like.sql +1 -0
  52. data/test/voruby/adql/1.0/adql-like.xml +17 -0
  53. data/test/voruby/adql/1.0/adql-order.sql +1 -0
  54. data/test/voruby/adql/1.0/adql-order.xml +37 -0
  55. data/test/voruby/adql/1.0/adql-simple.sql +1 -0
  56. data/test/voruby/adql/1.0/adql-simple.xml +12 -0
  57. data/test/voruby/adql/1.0/adql-top.sql +1 -0
  58. data/test/voruby/adql/1.0/adql-top.xml +33 -0
  59. data/test/voruby/adql/1.0/test.rb +2220 -0
  60. data/test/voruby/misc/test.rb +32 -0
  61. data/test/voruby/resolver/sesame/test.rb +56 -0
  62. data/test/voruby/sky_query/test.rb +107 -0
  63. data/test/voruby/stc/1.10/coords_test.rb +3704 -0
  64. data/test/voruby/stc/1.10/region_test.rb +993 -0
  65. data/test/voruby/stc/1.10/stc-catalog-entry-location.xml +112 -0
  66. data/test/voruby/stc/1.10/stc-obs-data-location.xml +126 -0
  67. data/test/voruby/stc/1.10/stc-region-circle.xml +5 -0
  68. data/test/voruby/stc/1.10/stc-region-convex.xml +11 -0
  69. data/test/voruby/stc/1.10/stc-region-convexhull.xml +5 -0
  70. data/test/voruby/stc/1.10/stc-region-ellipse.xml +7 -0
  71. data/test/voruby/stc/1.10/stc-region-intersection.xml +25 -0
  72. data/test/voruby/stc/1.10/stc-region-negation.xml +7 -0
  73. data/test/voruby/stc/1.10/stc-region-polygon.xml +13 -0
  74. data/test/voruby/stc/1.10/stc-region-sector.xml +6 -0
  75. data/test/voruby/stc/1.10/stc-region-union.xml +25 -0
  76. data/test/voruby/stc/1.10/stc-resource-profile.xml +60 -0
  77. data/test/voruby/stc/1.10/stc-search-location.xml +54 -0
  78. data/test/voruby/stc/1.10/stc_test.rb +4626 -0
  79. data/test/voruby/stc/1.30/stc-catalog-entry-location.xml +210 -0
  80. data/test/voruby/stc/1.30/stc-obs-data-location-arecibo.xml +353 -0
  81. data/test/voruby/stc/1.30/stc-obs-data-location-fits.xml +250 -0
  82. data/test/voruby/stc/1.30/stc-obs-data-location-xlink.xml +63 -0
  83. data/test/voruby/stc/1.30/stc-obs-data-location.xml +216 -0
  84. data/test/voruby/stc/1.30/stc-resource-profile-unusual-ref-pos.xml +39 -0
  85. data/test/voruby/stc/1.30/stc-resource-profile.xml +129 -0
  86. data/test/voruby/stc/1.30/stc-search-location-arecibo.xml +86 -0
  87. data/test/voruby/stc/1.30/stc-search-location.xml +101 -0
  88. data/test/voruby/stc/1.30/test.rb +6274 -0
  89. data/test/voruby/ucd/test.rb +48 -0
  90. data/test/voruby/voevent/1.1/test.rb +812 -0
  91. data/test/{voevent/voevent_v1_1.xml → voruby/voevent/1.1/voevent.xml} +2 -2
  92. data/test/voruby/voregistry/0.3/test.rb +137 -0
  93. data/test/voruby/votable/1.0/test.rb +714 -0
  94. data/test/voruby/votable/1.0/votable.basic.xml +660 -0
  95. data/test/voruby/votable/1.0/votable.html +86 -0
  96. data/test/voruby/votable/1.0/votable.ns.xml +56 -0
  97. data/test/voruby/votable/1.1/test.rb +785 -0
  98. data/test/voruby/votable/1.1/votable.basic.xml +38 -0
  99. data/test/voruby/votable/1.1/votable.html +86 -0
  100. data/test/voruby/votable/1.1/votable.ns.xml +56 -0
  101. data/test/voruby/votable/test.rb +15 -0
  102. data/test/voruby/wesix/test.rb +268 -0
  103. data/test/voruby/wesix/testr.fits +28 -0
  104. metadata +234 -247
  105. data/REQUIREMENTS +0 -6
  106. data/lib/voruby/active_votable/loader.rb +0 -5
  107. data/lib/voruby/adql/adql.rb +0 -2787
  108. data/lib/voruby/adql/ext.rb +0 -14
  109. data/lib/voruby/adql/loader.rb +0 -6
  110. data/lib/voruby/adql/operations.rb +0 -54
  111. data/lib/voruby/adql/parser.rb +0 -160
  112. data/lib/voruby/adql/transforms.rb +0 -573
  113. data/lib/voruby/ext.rb +0 -17
  114. data/lib/voruby/loader.rb +0 -4
  115. data/lib/voruby/misc/propertyfile.rb +0 -36
  116. data/lib/voruby/plastic/applications.rb +0 -174
  117. data/lib/voruby/plastic/constants.rb +0 -30
  118. data/lib/voruby/plastic/loader.rb +0 -10
  119. data/lib/voruby/plastic/plastic.rb +0 -1
  120. data/lib/voruby/resources/conesearch/conesearch.rb +0 -9
  121. data/lib/voruby/resources/conesearch/conesearch_v0_2.rb +0 -55
  122. data/lib/voruby/resources/conesearch/conesearch_v0_3.rb +0 -50
  123. data/lib/voruby/resources/conesearch/conesearch_v1_0.rb +0 -72
  124. data/lib/voruby/resources/conesearch/loader.rb +0 -4
  125. data/lib/voruby/resources/loader.rb +0 -50
  126. data/lib/voruby/resources/nodes.rb +0 -190
  127. data/lib/voruby/resources/openskynode/loader.rb +0 -4
  128. data/lib/voruby/resources/openskynode/openskynode.rb +0 -9
  129. data/lib/voruby/resources/openskynode/openskynode_v0_1.rb +0 -54
  130. data/lib/voruby/resources/sia/loader.rb +0 -5
  131. data/lib/voruby/resources/sia/sia.rb +0 -9
  132. data/lib/voruby/resources/sia/sia_v0_6.rb +0 -90
  133. data/lib/voruby/resources/sia/sia_v0_7.rb +0 -89
  134. data/lib/voruby/resources/sia/sia_v1_0.rb +0 -122
  135. data/lib/voruby/resources/stsci.rb +0 -59
  136. data/lib/voruby/resources/vodataservice/coverage_v0_2.rb +0 -195
  137. data/lib/voruby/resources/vodataservice/coverage_v0_3.rb +0 -158
  138. data/lib/voruby/resources/vodataservice/loader.rb +0 -5
  139. data/lib/voruby/resources/vodataservice/vodataservice.rb +0 -9
  140. data/lib/voruby/resources/vodataservice/vodataservice_v0_4.rb +0 -189
  141. data/lib/voruby/resources/vodataservice/vodataservice_v0_5.rb +0 -163
  142. data/lib/voruby/resources/vodataservice/vodataservice_v1_0.rb +0 -221
  143. data/lib/voruby/resources/voregistry/loader.rb +0 -4
  144. data/lib/voruby/resources/voregistry/voregistry.rb +0 -9
  145. data/lib/voruby/resources/voregistry/voregistry_v0_2.rb +0 -40
  146. data/lib/voruby/resources/voregistry/voregistry_v0_3.rb +0 -30
  147. data/lib/voruby/resources/voregistry/voregistry_v1_0.rb +0 -86
  148. data/lib/voruby/resources/voresource/loader.rb +0 -17
  149. data/lib/voruby/resources/voresource/voresource.rb +0 -9
  150. data/lib/voruby/resources/voresource/voresource_v0_10.rb +0 -327
  151. data/lib/voruby/resources/voresource/voresource_v0_9.rb +0 -405
  152. data/lib/voruby/resources/voresource/voresource_v1_0.rb +0 -230
  153. data/lib/voruby/services/ext.rb +0 -11
  154. data/lib/voruby/services/gestalt/footprint.rb +0 -95
  155. data/lib/voruby/services/gestalt/wcs_fixer.rb +0 -105
  156. data/lib/voruby/services/gestalt/wesix.rb +0 -155
  157. data/lib/voruby/services/loader.rb +0 -7
  158. data/lib/voruby/services/registry/registry.rb +0 -53
  159. data/lib/voruby/services/resolver/resolver.rb +0 -35
  160. data/lib/voruby/services/schema/schema.rb +0 -644
  161. data/lib/voruby/sesame/loader.rb +0 -6
  162. data/lib/voruby/sesame/sesame_v1_0.rb +0 -64
  163. data/lib/voruby/simple/loader.rb +0 -6
  164. data/lib/voruby/simple/parameters.rb +0 -196
  165. data/lib/voruby/simple/sap.rb +0 -446
  166. data/lib/voruby/spacetime/loader.rb +0 -3
  167. data/lib/voruby/spacetime/spacetime.rb +0 -607
  168. data/lib/voruby/stc/coords_v1_20.rb +0 -900
  169. data/lib/voruby/stc/loader.rb +0 -55
  170. data/lib/voruby/stc/region_v1_20.rb +0 -274
  171. data/lib/voruby/stc/stc_v1_20.rb +0 -1196
  172. data/lib/voruby/util.rb +0 -27
  173. data/lib/voruby/voevent/loader.rb +0 -7
  174. data/lib/voruby/voevent/voevent_v1_0.rb +0 -213
  175. data/lib/voruby/voevent/voevent_v1_1.rb +0 -196
  176. data/lib/voruby/votables/chandra.rb +0 -373
  177. data/lib/voruby/votables/data.rb +0 -179
  178. data/lib/voruby/votables/galex.rb +0 -377
  179. data/lib/voruby/votables/int.rb +0 -354
  180. data/lib/voruby/votables/libxml_parser.rb +0 -411
  181. data/lib/voruby/votables/libxml_votable.rb +0 -67
  182. data/lib/voruby/votables/loader.rb +0 -10
  183. data/lib/voruby/votables/meta.rb +0 -763
  184. data/lib/voruby/votables/misc.rb +0 -51
  185. data/lib/voruby/votables/nsa.rb +0 -410
  186. data/lib/voruby/votables/rexml_parser.rb +0 -408
  187. data/lib/voruby/votables/rexml_votable.rb +0 -67
  188. data/lib/voruby/votables/sdss.rb +0 -356
  189. data/lib/voruby/votables/transforms.rb +0 -388
  190. data/lib/voruby/votables/tree.rb +0 -45
  191. data/lib/voruby/votables/types.rb +0 -391
  192. data/lib/voruby/votables/votable.rb +0 -687
  193. data/test/active_votable/database.yml +0 -6
  194. data/test/active_votable/test.vot +0 -168492
  195. data/test/active_votable/unittest.rb +0 -41
  196. data/test/adql/test1.adql +0 -49
  197. data/test/adql/test2.adql +0 -51
  198. data/test/adql/test3.adql +0 -81
  199. data/test/adql/test4.adql +0 -53
  200. data/test/adql/test5.adql +0 -55
  201. data/test/adql/test6.adql +0 -18
  202. data/test/adql/test7.adql +0 -48
  203. data/test/adql/unittest.rb +0 -1672
  204. data/test/plastic/test.rb +0 -44
  205. data/test/plastic/test.vot +0 -5385
  206. data/test/plastic/unittest.rb +0 -66
  207. data/test/resources/conesearch/conesearch_v0_3.xml +0 -31
  208. data/test/resources/conesearch/conesearch_v1_0.xml +0 -86
  209. data/test/resources/conesearch/unittest_v0_3.rb +0 -22
  210. data/test/resources/conesearch/unittest_v1_0.rb +0 -24
  211. data/test/resources/openskynode/open_sky_node_v0_1.xml +0 -32
  212. data/test/resources/openskynode/unittest_v0_1.rb +0 -31
  213. data/test/resources/sia/simple_image_access_v0_7.xml +0 -36
  214. data/test/resources/sia/simple_image_access_v1_0.xml +0 -122
  215. data/test/resources/sia/unittest_v0_7.rb +0 -24
  216. data/test/resources/sia/unittest_v1_0.rb +0 -29
  217. data/test/resources/stsci.xml +0 -336
  218. data/test/resources/unittest_stsci.rb +0 -25
  219. data/test/resources/vodataservice/catalog_service_resource_v1_0.xml +0 -128
  220. data/test/resources/vodataservice/data_collection_resource_v0_5.xml +0 -54
  221. data/test/resources/vodataservice/data_collection_resource_v1_0.xml +0 -117
  222. data/test/resources/vodataservice/data_service_resource_v1_0.xml +0 -115
  223. data/test/resources/vodataservice/sky_service_resource_v0_10.xml +0 -45
  224. data/test/resources/vodataservice/table_service_resource_v1_0.xml +0 -122
  225. data/test/resources/vodataservice/tabular_sky_service_resource_v0_10.xml +0 -60
  226. data/test/resources/vodataservice/unittest_v0_5.rb +0 -126
  227. data/test/resources/vodataservice/unittest_v1_0.rb +0 -151
  228. data/test/resources/voregistry/authority_resource_v0_3.xml +0 -20
  229. data/test/resources/voregistry/authority_resource_v1_0.xml +0 -82
  230. data/test/resources/voregistry/registry_service_v0_3.xml +0 -20
  231. data/test/resources/voregistry/registry_service_v1_0.xml +0 -107
  232. data/test/resources/voregistry/unittest_v0_3.rb +0 -31
  233. data/test/resources/voregistry/unittest_v1_0.rb +0 -34
  234. data/test/resources/voresource/organisation_resource_v1_0.xml +0 -90
  235. data/test/resources/voresource/resource_organisation_v0_10.xml +0 -22
  236. data/test/resources/voresource/resource_service_v0_10.xml +0 -19
  237. data/test/resources/voresource/resource_v0_10.xml +0 -19
  238. data/test/resources/voresource/resource_v1_0.xml +0 -79
  239. data/test/resources/voresource/service_resource_v1_0.xml +0 -91
  240. data/test/resources/voresource/unittest_v0_10.rb +0 -61
  241. data/test/resources/voresource/unittest_v0_9.rb +0 -4
  242. data/test/resources/voresource/unittest_v1_0.rb +0 -190
  243. data/test/services/gestalt/unittest.rb +0 -74
  244. data/test/services/registry/unittest.rb +0 -34
  245. data/test/services/resolver/unittest.rb +0 -38
  246. data/test/simple/unittest.rb +0 -46
  247. data/test/spacetime/unittest.rb +0 -39
  248. data/test/stc/catalog_entry_location_v1_20.xml +0 -112
  249. data/test/stc/obs_data_location_v1_20.xml +0 -108
  250. data/test/stc/search_location_v1_20.xml +0 -54
  251. data/test/stc/stc_resource_profile_v1_20.xml +0 -60
  252. data/test/stc/unittest_v1_20.rb +0 -620
  253. data/test/voevent/unittest_v1_0.rb +0 -79
  254. data/test/voevent/unittest_v1_1.rb +0 -70
  255. data/test/voevent/voevent_v1_0.xml +0 -96
  256. data/test/votables/test.vot +0 -366
  257. data/test/votables/unittest.rb +0 -54
@@ -1,288 +1,172 @@
1
+ begin
2
+ require 'rubygems'
3
+ rescue LoadError
4
+ nil
5
+ end
6
+
1
7
  require 'rake'
2
8
  require 'rake/testtask'
3
9
  require 'rake/rdoctask'
4
- require 'rake/packagetask'
5
10
  require 'rake/gempackagetask'
6
11
 
7
- require 'rubygems'
8
-
9
- PKG_VERSION = ENV['version'] || '1.1.1' # VORuby version
12
+ PKG_VERSION = ENV['version'] || '2.0.0' # VORuby version
10
13
 
11
- task :default => [:doc] # By default, create documentation: rake
14
+ task :default => [:doc]
12
15
 
13
- desc 'Run all straightforward tests'
14
- task :test => ['spacetime:test', 'adql:test', 'resource:test', 'voevent:test',
15
- 'votable:test', 'simple:test', 'gestalt:test',
16
- 'registry:test', 'resolver:test'] # rake test
17
-
18
- desc 'Create all available documentation'
19
- task :doc => [:apidoc] # rake doc
20
-
21
- desc 'Copy the contents of lib/voruby to a specified directory'
22
- task :deploy do |t| # rake dest=~/tmp deploy
23
- cp_r 'lib/voruby', ENV['dest'] if ENV['dest']
24
- end
16
+ desc 'Generate documentation'
17
+ task :doc => ['voruby:doc'] # rake doc
25
18
 
26
- Rake::PackageTask.new('voruby') do |pkg| # rake package or rake libonly=true package
27
- pkg.version = PKG_VERSION
28
- pkg.need_tar_gz = true
29
- pkg.package_files.include('lib/voruby/**/*.rb') if ENV['libonly']
30
- pkg.package_files.include(
31
- Dir.glob("**/*.*").delete_if { |item|
32
- item.include?(".svn")
33
- }.push('LICENSE').push('REQUIREMENTS')
34
- ) if !ENV['libonly']
19
+ Rake::TestTask.new(:test) do |t| # rake test
20
+ t.test_files = FileList['test/**/*test*.rb']
21
+ t.verbose = true
35
22
  end
36
23
 
37
- # rake apidoc (if you want diagrams and you have graphviz installed, use rake diagrams=true apidoc, but it will take awhile)
38
- Rake::RDocTask.new(:apidoc) do |rd|
39
- rd.rdoc_dir = "doc/api"
40
- rd.title = "VORuby API Documentation"
41
- rd.rdoc_files.include(FileList['lib/voruby/**/*.rb'])
42
- rd.options << '--diagram' if ENV['diagrams']
43
- end
44
-
45
- namespace 'spacetime' do
46
- Rake::TestTask.new(:test) do |t| # rake spacetime:test
47
- t.test_files = FileList['test/spacetime/unittest.rb']
48
- t.verbose = true
49
- t.warning = true
24
+ namespace 'voruby' do
25
+ Rake::RDocTask.new(:doc) do |rd| # rake voruby:doc
26
+ rd.rdoc_dir = "doc/voruby"
27
+ rd.title = "VORuby API Documentation"
28
+ rd.rdoc_files.include(FileList['lib/voruby.rb', 'lib/voruby'])
50
29
  end
51
- end
52
-
53
- namespace 'adql' do
54
- Rake::TestTask.new(:test) do |t| # rake adql:test
55
- t.test_files = FileList['test/adql/unittest.rb']
30
+
31
+ Rake::TestTask.new(:test) do |t| # rake voruby:test
32
+ t.test_files = FileList['test/voruby/**/*test*.rb']
56
33
  t.verbose = true
57
- t.warning = true
58
34
  end
59
- end
60
-
61
- namespace 'resource' do # rake resource:test
62
- task :test => ['voresource:test', 'vodataservice:test', 'voregistry:test', 'openskynode:test', 'sia:test', 'conesearch:test']
63
35
 
64
- namespace 'stsci' do
65
- Rake::TestTask.new(:test) do |t| # rake resource:stsci:test
66
- t.test_files = FileList['test/resources/unittest_stsci.rb']
67
- t.verbose = true
68
- end
69
- end
70
- end
71
-
72
- namespace 'voresource' do
73
- task :test => ['v0_10:test', 'v1_0:test']
36
+ # namespace 'misc' do
37
+ # Rake::TestTask.new(:test) do |t| # rake voruby:misc:test
38
+ # t.test_files = FileList['test/voruby/misc/**/*test*.rb']
39
+ # t.verbose = true
40
+ # end
41
+ # end
74
42
 
75
- namespace 'v1_0' do
76
- Rake::TestTask.new(:test) do |t| # rake voresource:v1_0:test
77
- t.test_files = FileList['test/resources/voresource/unittest_v1_0.rb']
43
+ namespace 'votable' do
44
+ Rake::TestTask.new(:test) do |t| # rake voruby:votable:test
45
+ t.test_files = FileList['test/voruby/votable/**/*test*.rb']
78
46
  t.verbose = true
79
47
  end
80
- end
81
-
82
- namespace 'v0_10' do
83
- Rake::TestTask.new(:test) do |t| # rake voresource:v0_10:test
84
- t.test_files = FileList['test/resources/voresource/unittest_v0_10.rb']
85
- t.verbose = true
48
+
49
+ namespace '1_1' do
50
+ Rake::TestTask.new(:test) do |t| # rake voruby:votable:1_1:test
51
+ t.test_files = FileList['test/voruby/votable/1.1/*test*.rb']
52
+ t.verbose = true
53
+ end
86
54
  end
87
- end
88
-
89
- # VOResource v0.9 seems to be essentially obsolete and therefore I haven't written
90
- # tests for it.
91
- end
92
-
93
- namespace 'vodataservice' do
94
- task :test => ['v0_5:test', 'v1_0:test']
95
-
96
- namespace 'v1_0' do
97
- Rake::TestTask.new(:test) do |t| # rake vodataservice:v1_0:test
98
- t.test_files = FileList['test/resources/vodataservice/unittest_v1_0.rb']
99
- t.verbose = true
55
+
56
+ namespace '1_0' do
57
+ Rake::TestTask.new(:test) do |t| # rake voruby:votable:1_0:test
58
+ t.test_files = FileList['test/voruby/votable/1.0/*test*.rb']
59
+ t.verbose = true
60
+ end
100
61
  end
101
62
  end
102
63
 
103
- namespace 'v0_5' do
104
- Rake::TestTask.new(:test) do |t| # rake vodataservice:vo_5:test
105
- t.test_files = FileList['test/resources/vodataservice/unittest_v0_5.rb']
64
+ namespace 'adql' do
65
+ Rake::TestTask.new(:test) do |t| # rake voruby:adql:test
66
+ t.test_files = FileList['test/voruby/adql/**/*test*.rb']
106
67
  t.verbose = true
107
68
  end
108
- end
109
-
110
- # VODataService 0.4 seems to be essentially obsolete and therefore I haven't written
111
- # tests for it.
112
- end
113
-
114
- namespace 'voregistry' do
115
- task :test => ['v0_3:test', 'v1_0:test']
116
-
117
- namespace 'v1_0' do
118
- Rake::TestTask.new(:test) do |t| # rake voregistry:v1_0:test
119
- t.test_files = FileList['test/resources/voregistry/unittest_v1_0.rb']
120
- t.verbose = true
69
+
70
+ namespace '1_0' do
71
+ Rake::TestTask.new(:test) do |t| # rake voruby:adql:1_0:test
72
+ t.test_files = FileList['test/voruby/adql/1.0/*test*.rb']
73
+ t.verbose = true
74
+ end
121
75
  end
122
76
  end
123
77
 
124
- namespace 'v0_3' do
125
- Rake::TestTask.new(:test) do |t| # rake voregistry:v0_3:test
126
- t.test_files = FileList['test/resources/voregistry/unittest_v0_3.rb']
78
+ namespace 'stc' do
79
+ Rake::TestTask.new(:test) do |t| # rake voruby:stc:test
80
+ t.test_files = FileList['test/voruby/stc/**/*test*.rb']
127
81
  t.verbose = true
128
82
  end
129
- end
130
-
131
- # VORegistry 0.2 seems to be essentially obsolete and therefore I haven't written
132
- # tests for it.
133
- end
134
-
135
- namespace 'openskynode' do
136
- task :test => ['v0_1:test']
137
-
138
- namespace 'v0_1' do
139
- Rake::TestTask.new(:test) do |t| # rake openskyquery:v0_1:test
140
- t.test_files = FileList['test/resources/openskynode/unittest_v0_1.rb']
141
- t.verbose = true
83
+
84
+ namespace '1_10' do
85
+ Rake::TestTask.new(:test) do |t| # rake voruby:stc:1_10:test
86
+ t.test_files = FileList['test/voruby/stc/1.10/*test*.rb']
87
+ t.verbose = true
88
+ end
142
89
  end
143
- end
144
- end
145
-
146
- namespace 'sia' do
147
- task :test => ['v0_7:test', 'v1_0:test']
148
-
149
- namespace 'v1_0' do
150
- Rake::TestTask.new(:test) do |t| # rake sia:v1_0:test
151
- t.test_files = FileList['test/resources/sia/unittest_v1_0.rb']
152
- t.verbose = true
90
+
91
+ namespace '1_30' do
92
+ Rake::TestTask.new(:test) do |t| # rake voruby:stc:1_30:test
93
+ t.test_files = FileList['test/voruby/stc/1.30/*test*.rb']
94
+ t.verbose = true
95
+ end
153
96
  end
154
97
  end
155
98
 
156
- namespace 'v0_7' do
157
- Rake::TestTask.new(:test) do |t| # rake sia:v0_7:test
158
- t.test_files = FileList['test/resources/sia/unittest_v0_7.rb']
99
+ namespace 'resolver' do
100
+ Rake::TestTask.new(:test) do |t| # rake voruby:resolver:test
101
+ t.test_files = FileList['test/voruby/resolver/**/*test*.rb']
159
102
  t.verbose = true
160
103
  end
161
- end
162
-
163
- # SIA 0.6 seems to be essentially obsolete and therefore I haven't written
164
- # tests for it.
165
- end
166
-
167
- namespace 'conesearch' do
168
- task :test => ['v0_3:test', 'v1_0:test']
169
-
170
- namespace 'v1_0' do
171
- Rake::TestTask.new(:test) do |t| # rake conesearch:v1_0:test
172
- t.test_files = FileList['test/resources/conesearch/unittest_v1_0.rb']
173
- t.verbose = true
174
- end
175
- end
176
-
177
- namespace 'v0_3' do
178
- Rake::TestTask.new(:test) do |t| # rake conesearch:v0_3:test
179
- t.test_files = FileList['test/resources/conesearch/unittest_v0_3.rb']
180
- t.verbose = true
104
+
105
+ namespace 'sesame' do
106
+ Rake::TestTask.new(:test) do |t| # rake voruby:resolver:sesame:test
107
+ t.test_files = FileList['test/voruby/resolver/sesame/*test*.rb']
108
+ t.verbose = true
109
+ end
181
110
  end
182
111
  end
183
112
 
184
- # ConeSearch 0.2 seems to be essentially obsolete and therefore I haven't written
185
- # tests for it.
186
- end
187
-
188
- namespace 'votable' do
189
- Rake::TestTask.new(:test) do |t| # rake votable:test
190
- t.test_files = FileList['test/votables/unittest.rb']
191
- t.verbose = true
192
- end
193
- end
194
-
195
- namespace 'active_votable' do
196
- Rake::TestTask.new(:test) do |t| # rake active_votable:test
197
- t.test_files = FileList['test/active_votable/unittest.rb']
198
- end
199
- end
200
-
201
- namespace 'voevent' do
202
- task :test => ['v1_0:test', 'v1_1:test']
203
-
204
- namespace 'v1_0' do
205
- Rake::TestTask.new(:test) do |t| # rake voevent:v1_0:test
206
- t.test_files = FileList['test/voevent/unittest_v1_0.rb']
113
+ namespace 'wesix' do
114
+ Rake::TestTask.new(:test) do |t| # rake voruby:wesix:test
115
+ t.test_files = FileList['test/voruby/wesix/*test*.rb']
207
116
  t.verbose = true
208
117
  end
209
118
  end
210
119
 
211
- namespace 'v1_1' do
212
- Rake::TestTask.new(:test) do |t| # rake voevent:v1_0:test
213
- t.test_files = FileList['test/voevent/unittest_v1_1.rb']
120
+ namespace 'sky_query' do
121
+ Rake::TestTask.new(:test) do |t| # rake voruby:sky_portal:test
122
+ t.test_files = FileList['test/voruby/sky_query/*test*.rb']
214
123
  t.verbose = true
215
124
  end
216
125
  end
217
- end
218
-
219
- namespace 'stc' do
220
- task :test => ['v1_20:test']
221
126
 
222
- namespace 'v1_20' do
223
- Rake::TestTask.new(:test) do |t| # rake stc:v1_20:test
224
- t.test_files = FileList['test/stc/unittest_v1_20.rb']
127
+ namespace 'active_votable' do
128
+ Rake::TestTask.new(:test) do |t| # rake voruby:active_votable:test
129
+ t.test_files = FileList['test/voruby/active_votable/*test*.rb']
225
130
  t.verbose = true
226
131
  end
227
132
  end
228
- end
229
-
230
- namespace 'simple' do
231
- Rake::TestTask.new(:test) do |t| # rake simple:test
232
- t.test_files = FileList['test/simple/unittest.rb']
233
- t.verbose = true
234
- end
235
- end
236
-
237
- namespace 'gestalt' do
238
- Rake::TestTask.new(:test) do |t| # rake gestalt:test
239
- t.test_files = FileList['test/services/gestalt/unittest.rb']
240
- t.verbose = true
241
- t.warning = true
242
- end
243
- end
244
-
245
- namespace 'registry' do
246
- task :test => ['stsci:test']
247
133
 
248
- namespace 'stsci' do
249
- Rake::TestTask.new(:test) do |t| # rake registry:stsci:test
250
- t.test_files = FileList['test/services/registry/unittest.rb']
134
+ namespace 'voevent' do
135
+ Rake::TestTask.new(:test) do |t| # rake voruby:voevent:test
136
+ t.test_files = FileList['test/voruby/voevent/**/*test*.rb']
251
137
  t.verbose = true
252
138
  end
139
+
140
+ namespace '1_1' do
141
+ Rake::TestTask.new(:test) do |t| # rake voruby:voevent:1_1:test
142
+ t.test_files = FileList['test/voruby/voevent/1.1/*test*.rb']
143
+ t.verbose = true
144
+ end
145
+ end
253
146
  end
254
- end
255
-
256
- namespace 'resolver' do
257
- task :test => 'sesame:test'
258
147
 
259
- namespace 'sesame' do
260
- Rake::TestTask.new(:test) do |t| # rake resolver:sesame:test
261
- t.test_files = FileList['test/services/resolver/unittest.rb']
148
+ namespace 'ucd' do
149
+ Rake::TestTask.new(:test) do |t| # rake voruby:ucd:test
150
+ t.test_files = FileList['test/voruby/ucd/*test*.rb']
262
151
  t.verbose = true
263
152
  end
264
153
  end
265
154
  end
266
155
 
267
- namespace 'plastic' do
268
- Rake::TestTask.new(:test) do |t| # rake plastic:test
269
- t.test_files = FileList['test/plastic/unittest.rb']
270
- t.verbose = true
271
- end
272
- end
273
-
274
156
  dist_dirs = ['lib', 'test']
275
157
  spec = Gem::Specification.new do |s|
276
- s.required_ruby_version = '>= 1.8.6' # because of changes in REXML
277
-
278
- s.files = FileList['Rakefile.rb', 'LICENSE', 'REQUIREMENTS']
158
+ s.files = FileList['Rakefile.rb', 'LICENSE']
279
159
  dist_dirs.each do |dir|
280
160
  s.files = s.files + Dir.glob( "#{dir}/**/*" ).delete_if { |item| item.include?( "\.svn" ) }
281
161
  end
282
- s.add_dependency('libxml-ruby', '= 0.3.8.4')
283
- s.add_dependency('xml-mapping', '>= 0.8.1')
284
- s.add_dependency('activerecord', '>= 1.14')
285
- s.add_dependency('activesupport', '>= 1.3')
162
+
163
+ s.add_dependency('libxml-ruby', '>= 0.5.4')
164
+ s.add_dependency('activerecord', '>= 2.0.2')
165
+ s.add_dependency('activesupport', '>= 2.0.2')
166
+ s.add_dependency('builder', '>= 2.1.2')
167
+ s.add_dependency('net-ping', '>= 1.2.2')
168
+ s.add_dependency('ruby-units', '>= 1.1.0')
169
+ s.add_dependency('soap4r', '>= 1.5.8')
286
170
  s.requirements << 'libxml from http://xmlsoft.org/'
287
171
 
288
172
  s.has_rdoc = true
@@ -296,13 +180,12 @@ spec = Gem::Specification.new do |s|
296
180
  s.summary = 'Modules for interacting with the astronomical virtual observatory.'
297
181
  s.description = <<-EOF
298
182
  A set of Ruby modules to help provide access to the Virtual Observatory (VO).
299
- Includes support for VOTable, VORegistry, VOEvent, WESIX (an online source
183
+ Includes support for VOTable, ADQL, Sesame (online name resolution), WESIX (an online source
300
184
  extraction service) and more.
301
185
  EOF
302
186
  end
303
187
 
304
188
  Rake::GemPackageTask.new(spec) do |pkg| # rake gem
305
- pkg.gem_spec = spec
306
189
  pkg.need_zip = true
307
190
  pkg.need_tar = true
308
191
  end
@@ -0,0 +1 @@
1
+ require 'misc/misc'
@@ -0,0 +1,60 @@
1
+ begin
2
+ require 'rubygems'
3
+ rescue LoadError; end
4
+
5
+ class Array
6
+ def /(dimensions)
7
+ inject([]) do |ary, x|
8
+ ary << [] if [*ary.last].nitems % len == 0
9
+ ary.last << x
10
+ ary
11
+ end
12
+ end
13
+ end
14
+
15
+ class String
16
+ # Strip a string on a line-by-line basis.
17
+ def line_by_line_strip
18
+ lines = []
19
+ self.each_line do |l|
20
+ lines << l.strip
21
+ end
22
+ lines.join('')
23
+ end
24
+ end
25
+
26
+ class Enumeration
27
+ attr_reader :value, :choices
28
+
29
+ def initialize(choices, value)
30
+ @choices = choices
31
+ self.value = value
32
+ end
33
+
34
+ def value=(v)
35
+ raise ArgumentError, "Expected one of [#{self.choices.collect{ |c| c.to_s }.join(', ')}] but was #{v}" if !self.choices.include?(v)
36
+ @value = v
37
+ end
38
+
39
+ def ==(obj)
40
+ return false if !obj.is_a?(self.class)
41
+ self.value == obj.value
42
+ end
43
+ end
44
+
45
+ require 'ruby-units'
46
+
47
+ # Additional astronomy-related units for ruby-units
48
+ class Unit
49
+ UNIT_DEFINITIONS.merge!(
50
+ '<arcminute>' => [%w{arcminute arcminutes arcmin}, (Math::PI / (180.0 * 60.0)), :angle, %w{<radian>}],
51
+ '<arcsecond>' => [%w{arcsecond arcseconds arcsec}, (Math::PI / (180.0 * 3600.0)) , :angle, %w{<radian>}],
52
+ '<hours-of-ra>' => [%w{hra hours-ra hours-of-ra hour-of-ra hour-ra}, ((360 / 24) * (Math::PI/180.0)), :angle, %w{<radian>}],
53
+ '<minutes-of-ra>' => [%w{mra minutes-ra minutes-of-ra minute-of-ra minute-ra}, (((360 / 24) * Math::PI/(180.0)) / 60.0), :angle, %w{<radian>}],
54
+ '<seconds-of-ra>' => [%w{sra seconds-ra seconds-of-ra second-of-ra second-ra}, (((360 / 24) * Math::PI/(180.0)) / 3600.0), :angle, %w{<radian>}],
55
+ '<AU>' => [%w{AU au astronomical-unit astronomical-units}, 149598000000, :length, %w{<meter>}]
56
+ )
57
+
58
+ UNIT_DEFINITIONS['<light-year>'][0] << 'lyr'
59
+ end
60
+ Unit.setup