sunspot_rails 2.0.0.pre.120924 → 2.0.0.pre.120925

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.
Files changed (293) hide show
  1. data/.gitignore +6 -10
  2. data/{sunspot_rails/.rspec → .rspec} +0 -0
  3. data/{sunspot_rails/History.txt → History.txt} +0 -0
  4. data/{sunspot/LICENSE → LICENSE} +0 -0
  5. data/{sunspot_rails/MIT-LICENSE → MIT-LICENSE} +0 -0
  6. data/{sunspot_rails/README.rdoc → README.rdoc} +0 -0
  7. data/Rakefile +12 -32
  8. data/{sunspot_rails/TODO → TODO} +0 -0
  9. data/{sunspot_rails/dev_tasks → dev_tasks}/rdoc.rake +0 -0
  10. data/{sunspot_rails/dev_tasks → dev_tasks}/release.rake +0 -0
  11. data/{sunspot_rails/dev_tasks → dev_tasks}/spec.rake +0 -0
  12. data/{sunspot/tasks → dev_tasks}/todo.rake +0 -0
  13. data/{sunspot_rails/gemfiles → gemfiles}/rails-2.3.14 +0 -0
  14. data/{sunspot_rails/gemfiles → gemfiles}/rails-3.0.15 +0 -0
  15. data/{sunspot_rails/gemfiles → gemfiles}/rails-3.1.6 +0 -0
  16. data/{sunspot_rails/gemfiles → gemfiles}/rails-3.2.6 +0 -0
  17. data/{sunspot_rails/generators → generators}/sunspot/sunspot_generator.rb +0 -0
  18. data/{sunspot_rails/generators → generators}/sunspot/templates/sunspot.yml +0 -0
  19. data/{sunspot_rails/install.rb → install.rb} +0 -0
  20. data/{sunspot_rails/lib → lib}/generators/sunspot_rails.rb +0 -0
  21. data/{sunspot_rails/lib → lib}/generators/sunspot_rails/install/install_generator.rb +0 -0
  22. data/{sunspot_rails/lib → lib}/generators/sunspot_rails/install/templates/config/sunspot.yml +0 -0
  23. data/{sunspot_rails/lib → lib}/sunspot/rails.rb +0 -0
  24. data/{sunspot_rails/lib → lib}/sunspot/rails/adapters.rb +0 -0
  25. data/{sunspot_rails/lib → lib}/sunspot/rails/configuration.rb +0 -0
  26. data/{sunspot_rails/lib → lib}/sunspot/rails/init.rb +0 -0
  27. data/{sunspot_rails/lib → lib}/sunspot/rails/log_subscriber.rb +0 -0
  28. data/{sunspot_rails/lib → lib}/sunspot/rails/railtie.rb +0 -0
  29. data/{sunspot_rails/lib → lib}/sunspot/rails/railties/controller_runtime.rb +0 -0
  30. data/{sunspot_rails/lib → lib}/sunspot/rails/request_lifecycle.rb +0 -0
  31. data/{sunspot_rails/lib → lib}/sunspot/rails/searchable.rb +0 -0
  32. data/{sunspot_rails/lib → lib}/sunspot/rails/server.rb +0 -0
  33. data/{sunspot_rails/lib → lib}/sunspot/rails/solr_instrumentation.rb +0 -0
  34. data/{sunspot_rails/lib → lib}/sunspot/rails/solr_logging.rb +0 -0
  35. data/{sunspot_rails/lib → lib}/sunspot/rails/spec_helper.rb +0 -0
  36. data/{sunspot_rails/lib → lib}/sunspot/rails/stub_session_proxy.rb +0 -0
  37. data/{sunspot_rails/lib → lib}/sunspot/rails/tasks.rb +0 -0
  38. data/{sunspot_rails/lib → lib}/sunspot_rails.rb +0 -0
  39. data/{sunspot_rails/spec → spec}/configuration_spec.rb +0 -0
  40. data/{sunspot_rails/spec → spec}/model_lifecycle_spec.rb +0 -0
  41. data/{sunspot_rails/spec → spec}/model_spec.rb +0 -0
  42. data/{sunspot_rails/spec → spec}/rails_template/app/controllers/application_controller.rb +0 -0
  43. data/{sunspot_rails/spec → spec}/rails_template/app/controllers/posts_controller.rb +0 -0
  44. data/{sunspot_rails/spec → spec}/rails_template/app/models/author.rb +0 -0
  45. data/{sunspot_rails/spec → spec}/rails_template/app/models/blog.rb +0 -0
  46. data/{sunspot_rails/spec → spec}/rails_template/app/models/location.rb +0 -0
  47. data/{sunspot_rails/spec → spec}/rails_template/app/models/photo_post.rb +0 -0
  48. data/{sunspot_rails/spec → spec}/rails_template/app/models/post.rb +0 -0
  49. data/{sunspot_rails/spec → spec}/rails_template/app/models/post_with_auto.rb +0 -0
  50. data/{sunspot_rails/spec → spec}/rails_template/app/models/post_with_default_scope.rb +0 -0
  51. data/{sunspot_rails/spec → spec}/rails_template/config/boot.rb +0 -0
  52. data/{sunspot_rails/spec → spec}/rails_template/config/preinitializer.rb +0 -0
  53. data/{sunspot_rails/spec → spec}/rails_template/config/routes.rb +0 -0
  54. data/{sunspot_rails/spec → spec}/rails_template/config/sunspot.yml +0 -0
  55. data/{sunspot_rails/spec → spec}/rails_template/db/schema.rb +0 -0
  56. data/{sunspot_rails/spec → spec}/request_lifecycle_spec.rb +0 -0
  57. data/{sunspot_rails/spec → spec}/schema.rb +0 -0
  58. data/{sunspot_rails/spec → spec}/searchable_spec.rb +0 -0
  59. data/{sunspot_rails/spec → spec}/server_spec.rb +0 -0
  60. data/{sunspot_rails/spec → spec}/session_spec.rb +0 -0
  61. data/{sunspot_rails/spec → spec}/shared_examples/indexed_after_save.rb +0 -0
  62. data/{sunspot_rails/spec → spec}/shared_examples/not_indexed_after_save.rb +0 -0
  63. data/{sunspot_rails/spec → spec}/spec_helper.rb +0 -0
  64. data/{sunspot_rails/spec → spec}/stub_session_proxy_spec.rb +0 -0
  65. data/{sunspot_rails/sunspot_rails.gemspec → sunspot_rails.gemspec} +0 -0
  66. metadata +102 -305
  67. data/.travis.yml +0 -35
  68. data/README.md +0 -863
  69. data/ci/travis.sh +0 -67
  70. data/sunspot/.gitignore +0 -13
  71. data/sunspot/Gemfile +0 -5
  72. data/sunspot/History.txt +0 -258
  73. data/sunspot/Rakefile +0 -13
  74. data/sunspot/TODO +0 -13
  75. data/sunspot/lib/light_config.rb +0 -40
  76. data/sunspot/lib/sunspot.rb +0 -579
  77. data/sunspot/lib/sunspot/adapters.rb +0 -349
  78. data/sunspot/lib/sunspot/batcher.rb +0 -62
  79. data/sunspot/lib/sunspot/class_set.rb +0 -23
  80. data/sunspot/lib/sunspot/composite_setup.rb +0 -202
  81. data/sunspot/lib/sunspot/configuration.rb +0 -53
  82. data/sunspot/lib/sunspot/data_extractor.rb +0 -50
  83. data/sunspot/lib/sunspot/dsl.rb +0 -5
  84. data/sunspot/lib/sunspot/dsl/adjustable.rb +0 -47
  85. data/sunspot/lib/sunspot/dsl/field_group.rb +0 -57
  86. data/sunspot/lib/sunspot/dsl/field_query.rb +0 -345
  87. data/sunspot/lib/sunspot/dsl/fields.rb +0 -103
  88. data/sunspot/lib/sunspot/dsl/fulltext.rb +0 -243
  89. data/sunspot/lib/sunspot/dsl/function.rb +0 -27
  90. data/sunspot/lib/sunspot/dsl/functional.rb +0 -44
  91. data/sunspot/lib/sunspot/dsl/more_like_this_query.rb +0 -56
  92. data/sunspot/lib/sunspot/dsl/paginatable.rb +0 -32
  93. data/sunspot/lib/sunspot/dsl/query_facet.rb +0 -36
  94. data/sunspot/lib/sunspot/dsl/restriction.rb +0 -25
  95. data/sunspot/lib/sunspot/dsl/restriction_with_near.rb +0 -160
  96. data/sunspot/lib/sunspot/dsl/scope.rb +0 -214
  97. data/sunspot/lib/sunspot/dsl/search.rb +0 -30
  98. data/sunspot/lib/sunspot/dsl/standard_query.rb +0 -122
  99. data/sunspot/lib/sunspot/field.rb +0 -193
  100. data/sunspot/lib/sunspot/field_factory.rb +0 -129
  101. data/sunspot/lib/sunspot/indexer.rb +0 -136
  102. data/sunspot/lib/sunspot/query.rb +0 -11
  103. data/sunspot/lib/sunspot/query/abstract_field_facet.rb +0 -55
  104. data/sunspot/lib/sunspot/query/bbox.rb +0 -15
  105. data/sunspot/lib/sunspot/query/boost_query.rb +0 -24
  106. data/sunspot/lib/sunspot/query/common_query.rb +0 -96
  107. data/sunspot/lib/sunspot/query/composite_fulltext.rb +0 -36
  108. data/sunspot/lib/sunspot/query/connective.rb +0 -206
  109. data/sunspot/lib/sunspot/query/date_field_facet.rb +0 -14
  110. data/sunspot/lib/sunspot/query/dismax.rb +0 -132
  111. data/sunspot/lib/sunspot/query/field_facet.rb +0 -41
  112. data/sunspot/lib/sunspot/query/field_group.rb +0 -37
  113. data/sunspot/lib/sunspot/query/filter.rb +0 -38
  114. data/sunspot/lib/sunspot/query/function_query.rb +0 -52
  115. data/sunspot/lib/sunspot/query/geo.rb +0 -53
  116. data/sunspot/lib/sunspot/query/geofilt.rb +0 -16
  117. data/sunspot/lib/sunspot/query/highlighting.rb +0 -62
  118. data/sunspot/lib/sunspot/query/more_like_this.rb +0 -61
  119. data/sunspot/lib/sunspot/query/more_like_this_query.rb +0 -12
  120. data/sunspot/lib/sunspot/query/pagination.rb +0 -42
  121. data/sunspot/lib/sunspot/query/query_facet.rb +0 -53
  122. data/sunspot/lib/sunspot/query/range_facet.rb +0 -15
  123. data/sunspot/lib/sunspot/query/restriction.rb +0 -308
  124. data/sunspot/lib/sunspot/query/scope.rb +0 -9
  125. data/sunspot/lib/sunspot/query/sort.rb +0 -109
  126. data/sunspot/lib/sunspot/query/sort_composite.rb +0 -34
  127. data/sunspot/lib/sunspot/query/standard_query.rb +0 -16
  128. data/sunspot/lib/sunspot/query/text_field_boost.rb +0 -17
  129. data/sunspot/lib/sunspot/schema.rb +0 -151
  130. data/sunspot/lib/sunspot/search.rb +0 -9
  131. data/sunspot/lib/sunspot/search/abstract_search.rb +0 -286
  132. data/sunspot/lib/sunspot/search/date_facet.rb +0 -35
  133. data/sunspot/lib/sunspot/search/facet_row.rb +0 -27
  134. data/sunspot/lib/sunspot/search/field_facet.rb +0 -88
  135. data/sunspot/lib/sunspot/search/field_group.rb +0 -70
  136. data/sunspot/lib/sunspot/search/group.rb +0 -54
  137. data/sunspot/lib/sunspot/search/highlight.rb +0 -38
  138. data/sunspot/lib/sunspot/search/hit.rb +0 -150
  139. data/sunspot/lib/sunspot/search/hit_enumerable.rb +0 -68
  140. data/sunspot/lib/sunspot/search/more_like_this_search.rb +0 -31
  141. data/sunspot/lib/sunspot/search/paginated_collection.rb +0 -57
  142. data/sunspot/lib/sunspot/search/query_facet.rb +0 -67
  143. data/sunspot/lib/sunspot/search/range_facet.rb +0 -37
  144. data/sunspot/lib/sunspot/search/standard_search.rb +0 -21
  145. data/sunspot/lib/sunspot/session.rb +0 -262
  146. data/sunspot/lib/sunspot/session_proxy.rb +0 -95
  147. data/sunspot/lib/sunspot/session_proxy/abstract_session_proxy.rb +0 -29
  148. data/sunspot/lib/sunspot/session_proxy/class_sharding_session_proxy.rb +0 -66
  149. data/sunspot/lib/sunspot/session_proxy/id_sharding_session_proxy.rb +0 -89
  150. data/sunspot/lib/sunspot/session_proxy/master_slave_session_proxy.rb +0 -43
  151. data/sunspot/lib/sunspot/session_proxy/retry_5xx_session_proxy.rb +0 -67
  152. data/sunspot/lib/sunspot/session_proxy/sharding_session_proxy.rb +0 -222
  153. data/sunspot/lib/sunspot/session_proxy/silent_fail_session_proxy.rb +0 -42
  154. data/sunspot/lib/sunspot/session_proxy/thread_local_session_proxy.rb +0 -37
  155. data/sunspot/lib/sunspot/setup.rb +0 -350
  156. data/sunspot/lib/sunspot/text_field_setup.rb +0 -29
  157. data/sunspot/lib/sunspot/type.rb +0 -393
  158. data/sunspot/lib/sunspot/util.rb +0 -252
  159. data/sunspot/lib/sunspot/version.rb +0 -3
  160. data/sunspot/script/console +0 -10
  161. data/sunspot/spec/api/adapters_spec.rb +0 -68
  162. data/sunspot/spec/api/batcher_spec.rb +0 -112
  163. data/sunspot/spec/api/binding_spec.rb +0 -50
  164. data/sunspot/spec/api/class_set_spec.rb +0 -24
  165. data/sunspot/spec/api/hit_enumerable_spec.rb +0 -47
  166. data/sunspot/spec/api/indexer/attributes_spec.rb +0 -149
  167. data/sunspot/spec/api/indexer/batch_spec.rb +0 -72
  168. data/sunspot/spec/api/indexer/dynamic_fields_spec.rb +0 -42
  169. data/sunspot/spec/api/indexer/fixed_fields_spec.rb +0 -57
  170. data/sunspot/spec/api/indexer/fulltext_spec.rb +0 -43
  171. data/sunspot/spec/api/indexer/removal_spec.rb +0 -53
  172. data/sunspot/spec/api/indexer/spec_helper.rb +0 -1
  173. data/sunspot/spec/api/indexer_spec.rb +0 -14
  174. data/sunspot/spec/api/query/advanced_manipulation_examples.rb +0 -35
  175. data/sunspot/spec/api/query/connectives_examples.rb +0 -201
  176. data/sunspot/spec/api/query/dsl_spec.rb +0 -18
  177. data/sunspot/spec/api/query/dynamic_fields_examples.rb +0 -165
  178. data/sunspot/spec/api/query/faceting_examples.rb +0 -497
  179. data/sunspot/spec/api/query/fulltext_examples.rb +0 -313
  180. data/sunspot/spec/api/query/function_spec.rb +0 -79
  181. data/sunspot/spec/api/query/geo_examples.rb +0 -68
  182. data/sunspot/spec/api/query/group_spec.rb +0 -32
  183. data/sunspot/spec/api/query/highlighting_examples.rb +0 -245
  184. data/sunspot/spec/api/query/more_like_this_spec.rb +0 -140
  185. data/sunspot/spec/api/query/ordering_pagination_examples.rb +0 -116
  186. data/sunspot/spec/api/query/scope_examples.rb +0 -275
  187. data/sunspot/spec/api/query/spatial_examples.rb +0 -27
  188. data/sunspot/spec/api/query/spec_helper.rb +0 -1
  189. data/sunspot/spec/api/query/standard_spec.rb +0 -29
  190. data/sunspot/spec/api/query/text_field_scoping_examples.rb +0 -30
  191. data/sunspot/spec/api/query/types_spec.rb +0 -20
  192. data/sunspot/spec/api/search/dynamic_fields_spec.rb +0 -33
  193. data/sunspot/spec/api/search/faceting_spec.rb +0 -360
  194. data/sunspot/spec/api/search/highlighting_spec.rb +0 -69
  195. data/sunspot/spec/api/search/hits_spec.rb +0 -147
  196. data/sunspot/spec/api/search/paginated_collection_spec.rb +0 -36
  197. data/sunspot/spec/api/search/results_spec.rb +0 -72
  198. data/sunspot/spec/api/search/search_spec.rb +0 -23
  199. data/sunspot/spec/api/search/spec_helper.rb +0 -1
  200. data/sunspot/spec/api/session_proxy/class_sharding_session_proxy_spec.rb +0 -85
  201. data/sunspot/spec/api/session_proxy/id_sharding_session_proxy_spec.rb +0 -30
  202. data/sunspot/spec/api/session_proxy/master_slave_session_proxy_spec.rb +0 -41
  203. data/sunspot/spec/api/session_proxy/retry_5xx_session_proxy_spec.rb +0 -78
  204. data/sunspot/spec/api/session_proxy/sharding_session_proxy_spec.rb +0 -77
  205. data/sunspot/spec/api/session_proxy/silent_fail_session_proxy_spec.rb +0 -24
  206. data/sunspot/spec/api/session_proxy/spec_helper.rb +0 -9
  207. data/sunspot/spec/api/session_proxy/thread_local_session_proxy_spec.rb +0 -39
  208. data/sunspot/spec/api/session_spec.rb +0 -232
  209. data/sunspot/spec/api/spec_helper.rb +0 -3
  210. data/sunspot/spec/api/sunspot_spec.rb +0 -29
  211. data/sunspot/spec/ext.rb +0 -11
  212. data/sunspot/spec/helpers/indexer_helper.rb +0 -17
  213. data/sunspot/spec/helpers/integration_helper.rb +0 -8
  214. data/sunspot/spec/helpers/mock_session_helper.rb +0 -13
  215. data/sunspot/spec/helpers/query_helper.rb +0 -26
  216. data/sunspot/spec/helpers/search_helper.rb +0 -68
  217. data/sunspot/spec/integration/dynamic_fields_spec.rb +0 -57
  218. data/sunspot/spec/integration/faceting_spec.rb +0 -330
  219. data/sunspot/spec/integration/field_grouping_spec.rb +0 -100
  220. data/sunspot/spec/integration/geospatial_spec.rb +0 -96
  221. data/sunspot/spec/integration/highlighting_spec.rb +0 -44
  222. data/sunspot/spec/integration/indexing_spec.rb +0 -55
  223. data/sunspot/spec/integration/keyword_search_spec.rb +0 -317
  224. data/sunspot/spec/integration/local_search_spec.rb +0 -64
  225. data/sunspot/spec/integration/more_like_this_spec.rb +0 -43
  226. data/sunspot/spec/integration/scoped_search_spec.rb +0 -386
  227. data/sunspot/spec/integration/stored_fields_spec.rb +0 -12
  228. data/sunspot/spec/integration/test_pagination.rb +0 -43
  229. data/sunspot/spec/integration/unicode_spec.rb +0 -15
  230. data/sunspot/spec/mocks/adapters.rb +0 -33
  231. data/sunspot/spec/mocks/blog.rb +0 -3
  232. data/sunspot/spec/mocks/comment.rb +0 -21
  233. data/sunspot/spec/mocks/connection.rb +0 -126
  234. data/sunspot/spec/mocks/mock_adapter.rb +0 -30
  235. data/sunspot/spec/mocks/mock_class_sharding_session_proxy.rb +0 -24
  236. data/sunspot/spec/mocks/mock_record.rb +0 -52
  237. data/sunspot/spec/mocks/mock_sharding_session_proxy.rb +0 -15
  238. data/sunspot/spec/mocks/photo.rb +0 -11
  239. data/sunspot/spec/mocks/post.rb +0 -86
  240. data/sunspot/spec/mocks/super_class.rb +0 -2
  241. data/sunspot/spec/mocks/user.rb +0 -13
  242. data/sunspot/spec/spec_helper.rb +0 -40
  243. data/sunspot/sunspot.gemspec +0 -37
  244. data/sunspot/tasks/rdoc.rake +0 -27
  245. data/sunspot/tasks/schema.rake +0 -19
  246. data/sunspot_rails/.gitignore +0 -7
  247. data/sunspot_rails/LICENSE +0 -18
  248. data/sunspot_rails/Rakefile +0 -17
  249. data/sunspot_rails/dev_tasks/todo.rake +0 -4
  250. data/sunspot_solr/Gemfile +0 -3
  251. data/sunspot_solr/README.rdoc +0 -24
  252. data/sunspot_solr/bin/sunspot-installer +0 -20
  253. data/sunspot_solr/bin/sunspot-solr +0 -80
  254. data/sunspot_solr/lib/sunspot/solr/installer.rb +0 -25
  255. data/sunspot_solr/lib/sunspot/solr/installer/config_installer.rb +0 -46
  256. data/sunspot_solr/lib/sunspot/solr/installer/task_helper.rb +0 -13
  257. data/sunspot_solr/lib/sunspot/solr/java.rb +0 -10
  258. data/sunspot_solr/lib/sunspot/solr/railtie.rb +0 -15
  259. data/sunspot_solr/lib/sunspot/solr/server.rb +0 -223
  260. data/sunspot_solr/lib/sunspot/solr/tasks.rb +0 -49
  261. data/sunspot_solr/lib/sunspot_solr.rb +0 -5
  262. data/sunspot_solr/solr/README.txt +0 -42
  263. data/sunspot_solr/solr/etc/jetty.xml +0 -219
  264. data/sunspot_solr/solr/etc/webdefault.xml +0 -379
  265. data/sunspot_solr/solr/lib/jetty-6.1.26-patched-JETTY-1340.jar +0 -0
  266. data/sunspot_solr/solr/lib/jetty-util-6.1.26-patched-JETTY-1340.jar +0 -0
  267. data/sunspot_solr/solr/lib/jsp-2.1/ant-1.6.5.jar +0 -0
  268. data/sunspot_solr/solr/lib/jsp-2.1/core-3.1.1.jar +0 -0
  269. data/sunspot_solr/solr/lib/jsp-2.1/jsp-2.1.jar +0 -0
  270. data/sunspot_solr/solr/lib/jsp-2.1/jsp-api-2.1.jar +0 -0
  271. data/sunspot_solr/solr/lib/servlet-api-2.5-20081211.jar +0 -0
  272. data/sunspot_solr/solr/solr/.gitignore +0 -1
  273. data/sunspot_solr/solr/solr/README.txt +0 -54
  274. data/sunspot_solr/solr/solr/conf/admin-extra.html +0 -31
  275. data/sunspot_solr/solr/solr/conf/elevate.xml +0 -36
  276. data/sunspot_solr/solr/solr/conf/mapping-ISOLatin1Accent.txt +0 -246
  277. data/sunspot_solr/solr/solr/conf/protwords.txt +0 -21
  278. data/sunspot_solr/solr/solr/conf/schema.xml +0 -250
  279. data/sunspot_solr/solr/solr/conf/scripts.conf +0 -24
  280. data/sunspot_solr/solr/solr/conf/solrconfig.xml +0 -934
  281. data/sunspot_solr/solr/solr/conf/spellings.txt +0 -2
  282. data/sunspot_solr/solr/solr/conf/stopwords.txt +0 -58
  283. data/sunspot_solr/solr/solr/conf/synonyms.txt +0 -31
  284. data/sunspot_solr/solr/solr/conf/xslt/example.xsl +0 -132
  285. data/sunspot_solr/solr/solr/conf/xslt/example_atom.xsl +0 -67
  286. data/sunspot_solr/solr/solr/conf/xslt/example_rss.xsl +0 -66
  287. data/sunspot_solr/solr/solr/conf/xslt/luke.xsl +0 -337
  288. data/sunspot_solr/solr/start.jar +0 -0
  289. data/sunspot_solr/solr/webapps/solr.war +0 -0
  290. data/sunspot_solr/spec/server_spec.rb +0 -98
  291. data/sunspot_solr/spec/spec_helper.rb +0 -18
  292. data/sunspot_solr/sunspot_solr.gemspec +0 -37
  293. data/tools/gem_tasks.rb +0 -69
@@ -1,3 +0,0 @@
1
- module Sunspot
2
- VERSION = '2.0.0.pre.120924'
3
- end
@@ -1,10 +0,0 @@
1
- #!/usr/bin/env ruby
2
- require 'irb'
3
- require 'rubygems'
4
- require 'bundler'
5
- Bundler.setup(:default, :test)
6
- require 'sunspot'
7
- def test_env!
8
- require File.join(File.dirname(__FILE__), '..', 'spec', 'integration', 'spec_helper')
9
- end
10
- IRB.start
@@ -1,68 +0,0 @@
1
- require File.expand_path('spec_helper', File.dirname(__FILE__))
2
-
3
- describe Sunspot::Adapters::InstanceAdapter do
4
- it "finds adapter by superclass" do
5
- Sunspot::Adapters::InstanceAdapter::for(Model).should be(AbstractModelInstanceAdapter)
6
- end
7
-
8
- it "finds adapter by mixin" do
9
- Sunspot::Adapters::InstanceAdapter::for(MixModel).should be(MixInModelInstanceAdapter)
10
- end
11
-
12
- it 'throws NoAdapterError if anonymous module passed in' do
13
- lambda do
14
- Sunspot::Adapters::InstanceAdapter::for(Module.new)
15
- end.should raise_error(Sunspot::NoAdapterError)
16
- end
17
- end
18
-
19
- describe Sunspot::Adapters::DataAccessor do
20
- it "finds adapter by superclass" do
21
- Sunspot::Adapters::DataAccessor::for(Model).should be(AbstractModelDataAccessor)
22
- end
23
-
24
- it "finds adapter by mixin" do
25
- Sunspot::Adapters::DataAccessor::for(MixModel).should be(MixInModelDataAccessor)
26
- end
27
-
28
- it 'throws NoAdapterError if anonymous module passed in' do
29
- lambda do
30
- Sunspot::Adapters::DataAccessor::for(Module.new)
31
- end.should raise_error(Sunspot::NoAdapterError)
32
- end
33
- end
34
-
35
- describe Sunspot::Adapters::Registry do
36
- let(:registry){ Sunspot::Adapters::Registry.new }
37
- let(:abstractclass_accessor){ Sunspot::Adapters::DataAccessor::for(AbstractModel) }
38
- let(:superclass_accessor){ Sunspot::Adapters::DataAccessor::for(Model) }
39
- let(:mixin_accessor){ Sunspot::Adapters::DataAccessor::for(MixModel) }
40
-
41
- it "registers and retrieves a data accessor for abstractclass" do
42
- registry.retrieve(AbstractModel).should be_a(abstractclass_accessor)
43
- end
44
-
45
- it "registers and retrieves a data accessor for superclass" do
46
- registry.retrieve(Model).should be_a(superclass_accessor)
47
- end
48
-
49
- it "registers and retrieves a data accessor for mixin" do
50
- registry.retrieve(MixModel).should be_a(mixin_accessor)
51
- end
52
-
53
- it "injects inherited attributes" do
54
- AbstractModelDataAccessor.any_instance.stub(:inherited_attributes).and_return([:to_be_injected])
55
- in_registry_data_accessor = registry.retrieve(AbstractModel)
56
- in_registry_data_accessor.to_be_injected = "value"
57
- registry.retrieve(Model).to_be_injected.should == "value"
58
- end
59
-
60
- it "not overrides inherited attributes" do
61
- AbstractModelDataAccessor.any_instance.stub(:inherited_attributes).and_return([:to_be_injected])
62
- parent_data_accessor = registry.retrieve(AbstractModel)
63
- current_data_accessor = registry.retrieve(Model)
64
- parent_data_accessor.to_be_injected = "value"
65
- current_data_accessor.to_be_injected = "safe-value"
66
- registry.retrieve(Model).to_be_injected.should == "safe-value"
67
- end
68
- end
@@ -1,112 +0,0 @@
1
- require File.expand_path('spec_helper', File.dirname(__FILE__))
2
-
3
- describe Sunspot::Batcher do
4
- it "includes Enumerable" do
5
- described_class.should include Enumerable
6
- end
7
-
8
- describe "#each" do
9
- let(:current) { [:foo, :bar] }
10
- before { subject.stub(:current).and_return current }
11
-
12
- it "iterates over current" do
13
- yielded_values = []
14
-
15
- subject.each do |value|
16
- yielded_values << value
17
- end
18
-
19
- yielded_values.should eq current
20
- end
21
- end
22
-
23
- describe "adding to current batch" do
24
- it "#push pushes to current" do
25
- subject.push :foo
26
- subject.current.should include :foo
27
- end
28
-
29
- it "#<< pushes to current" do
30
- subject.push :foo
31
- subject.current.should include :foo
32
- end
33
-
34
- it "#concat concatinates on current batch" do
35
- subject << :foo
36
- subject.concat [:bar, :mix]
37
- should include :foo, :bar, :mix
38
- end
39
- end
40
-
41
-
42
- describe "#current" do
43
- context "no current" do
44
- it "starts a new" do
45
- expect { subject.current }.to change(subject, :depth).by 1
46
- end
47
-
48
- it "is empty by default" do
49
- subject.current.should be_empty
50
- end
51
- end
52
-
53
- context "with a current" do
54
- before { subject.start_new }
55
-
56
- it "does not start a new" do
57
- expect { subject.current }.to_not change(subject, :depth)
58
- end
59
-
60
- it "returns the same as last time" do
61
- subject.current.should eq subject.current
62
- end
63
- end
64
- end
65
-
66
- describe "#start_new" do
67
- it "creates a new batches" do
68
- expect { 2.times { subject.start_new } }.to change(subject, :depth).by 2
69
- end
70
-
71
- it "changes current" do
72
- subject << :foo
73
- subject.start_new
74
- should_not include :foo
75
- end
76
- end
77
-
78
- describe "#end_current" do
79
- context "no current batch" do
80
- it "fails" do
81
- expect { subject.end_current }.to raise_error Sunspot::Batcher::NoCurrentBatchError
82
- end
83
- end
84
-
85
- context "with current batch" do
86
- before { subject.start_new }
87
-
88
- it "changes current" do
89
- subject << :foo
90
- subject.end_current
91
- should_not include :foo
92
- end
93
-
94
- it "returns current" do
95
- subject << :foo
96
- subject.end_current.should include :foo
97
- end
98
- end
99
- end
100
-
101
- describe "#batching?" do
102
- it "is false when depth is 0" do
103
- subject.should_receive(:depth).and_return 0
104
- should_not be_batching
105
- end
106
-
107
- it "is true when depth is more than 0" do
108
- subject.should_receive(:depth).and_return 1
109
- should be_batching
110
- end
111
- end
112
- end
@@ -1,50 +0,0 @@
1
- require File.expand_path('spec_helper', File.dirname(__FILE__))
2
-
3
- describe "DSL bindings" do
4
- it 'should give access to calling context\'s methods in search DSL' do
5
- value = nil
6
- session.search(Post) do
7
- value = test_method
8
- end
9
- value.should == 'value'
10
- end
11
-
12
- it 'should give access to calling context\'s id method in search DSL' do
13
- value = nil
14
- session.search(Post) do
15
- value = id
16
- end
17
- value.should == 16
18
- end
19
-
20
- it 'should give access to calling context\'s methods in nested DSL block' do
21
- value = nil
22
- session.search(Post) do
23
- any_of do
24
- value = test_method
25
- end
26
- end
27
- value.should == 'value'
28
- end
29
-
30
- it 'should give access to calling context\'s methods in double-nested DSL block' do
31
- value = nil
32
- session.search(Post) do
33
- any_of do
34
- all_of do
35
- value = test_method
36
- end
37
- end
38
- end
39
- end
40
-
41
- private
42
-
43
- def test_method
44
- 'value'
45
- end
46
-
47
- def id
48
- 16
49
- end
50
- end
@@ -1,24 +0,0 @@
1
- require "spec_helper"
2
-
3
- describe Sunspot::ClassSet do
4
- it "is enumerable" do
5
- class1, class2 = stub(:name => "Class1"), stub(:name => "Class2")
6
-
7
- set = described_class.new
8
- set << class1 << class2
9
-
10
- set.to_a.should =~ [class1, class2]
11
- end
12
-
13
- it "replaces classes with the same name" do
14
- set = described_class.new
15
-
16
- class1 = stub(:name => "Class1")
17
- set << class1
18
- set.to_a.should == [class1]
19
-
20
- class1_dup = stub(:name => "Class1")
21
- set << class1_dup
22
- set.to_a.should == [class1_dup]
23
- end
24
- end
@@ -1,47 +0,0 @@
1
- require File.join(File.dirname(__FILE__), "spec_helper")
2
-
3
- describe Sunspot::Search::HitEnumerable do
4
- subject do
5
- Class.new do
6
- include Sunspot::Search::HitEnumerable
7
- end.new
8
- end
9
-
10
- describe "#hits" do
11
- before do
12
- subject.stub(:solr_docs).and_return([{"id" => "Post 1", "score" => 3.14}])
13
- subject.stub(:highlights_for)
14
- end
15
-
16
- it "retrieves the raw Solr response from #solr_docs and constructs Hit objects" do
17
- Sunspot::Search::Hit.should_receive(:new).
18
- with({"id" => "Post 1", "score" => 3.14}, anything, anything)
19
-
20
- subject.hits
21
- end
22
-
23
- it "constructs Hit objects with highlights" do
24
- subject.should_receive(:highlights_for).with({"id" => "Post 1", "score" => 3.14})
25
-
26
- subject.hits
27
- end
28
-
29
- it "returns only verified hits if :verify => true is passed" do
30
- Sunspot::Search::Hit.any_instance.stub(:result).and_return(nil)
31
-
32
- subject.hits(:verify => true).should be_empty
33
- end
34
-
35
- it "returns an empty array if no results are available from Solr" do
36
- subject.stub(:solr_docs).and_return(nil)
37
-
38
- subject.hits.should == []
39
- end
40
-
41
- it "provides #populate_hits so that querying for one hit result will eager load the rest" do
42
- Sunspot::Search::Hit.any_instance.should_receive(:result=)
43
-
44
- subject.populate_hits
45
- end
46
- end
47
- end
@@ -1,149 +0,0 @@
1
- require File.expand_path('spec_helper', File.dirname(__FILE__))
2
- require 'bigdecimal'
3
-
4
- describe 'indexing attribute fields', :type => :indexer do
5
- it 'should correctly index a stored string attribute field' do
6
- session.index(post(:title => 'A Title'))
7
- connection.should have_add_with(:title_ss => 'A Title')
8
- end
9
-
10
- it 'should correctly index an integer attribute field' do
11
- session.index(post(:blog_id => 4))
12
- connection.should have_add_with(:blog_id_i => '4')
13
- end
14
-
15
- it 'should correctly index a long attribute field' do
16
- session.index(Namespaced::Comment.new(:hash => 2**30))
17
- connection.should have_add_with(:hash_l => '1073741824')
18
- end
19
-
20
- it 'should correctly index a float attribute field' do
21
- session.index(post(:ratings_average => 2.23))
22
- connection.should have_add_with(:average_rating_ft => '2.23')
23
- end
24
-
25
- it 'should correctly index a double attribute field' do
26
- session.index(Namespaced::Comment.new(:average_rating => 2.23))
27
- connection.should have_add_with(:average_rating_e => '2.23')
28
- end
29
-
30
- it 'should correctly index a trie integer attribute field' do
31
- session.index(Photo.new(:size => 104856))
32
- connection.should have_add_with(:size_it => '104856')
33
- end
34
-
35
- it 'should correctly index a trie float attribute field' do
36
- session.index(Photo.new(:average_rating => 2.23))
37
- connection.should have_add_with(:average_rating_ft => '2.23')
38
- end
39
-
40
- it 'should correctly index a trie time attribute field' do
41
- session.index(Photo.new(:created_at => Time.parse('2009-12-16 15:00:00 -0400')))
42
- connection.should have_add_with(:created_at_dt => '2009-12-16T19:00:00Z')
43
- end
44
-
45
- it 'should allow indexing by a multiple-value field' do
46
- session.index(post(:category_ids => [3, 14]))
47
- connection.should have_add_with(:category_ids_im => ['3', '14'])
48
- end
49
-
50
- it 'should not index a single-value field with newlines as multiple' do
51
- session.index(post(:title => "Multi\nLine"))
52
- connection.adds.last.first.field_by_name(:title_ss).value.should == "Multi\nLine"
53
- end
54
-
55
- it 'should correctly index a time field' do
56
- session.index(
57
- post(:published_at => Time.parse('1983-07-08 05:00:00 -0400'))
58
- )
59
- connection.should have_add_with(:published_at_dt => '1983-07-08T09:00:00Z')
60
- end
61
-
62
- it 'should correctly index a time field that\'s after 32-bit Y2K' do
63
- session.index(
64
- post(:published_at => DateTime.parse('2050-07-08 05:00:00 -0400'))
65
- )
66
- connection.should have_add_with(:published_at_dt => '2050-07-08T09:00:00Z')
67
- end
68
-
69
- it 'should correctly index a date field' do
70
- session.index(post(:expire_date => Date.new(2009, 07, 13)))
71
- connection.should have_add_with(:expire_date_d => '2009-07-13T00:00:00Z')
72
- end
73
-
74
- it 'should correctly index a boolean field' do
75
- session.index(post(:featured => true))
76
- connection.should have_add_with(:featured_bs => 'true')
77
- end
78
-
79
- it 'should correctly index a false boolean field' do
80
- session.index(post(:featured => false))
81
- connection.should have_add_with(:featured_bs => 'false')
82
- end
83
-
84
- it 'should not index a nil boolean field' do
85
- session.index(post)
86
- connection.should_not have_add_with(:featured_bs)
87
- end
88
-
89
- it 'should index latitude and longitude as a pair' do
90
- session.index(post(:coordinates => Sunspot::Util::Coordinates.new(40.7, -73.5)))
91
- connection.should have_add_with(:coordinates_s => 'dr5xx3nytvgs')
92
- end
93
-
94
- it 'should index latitude and longitude passed as non-Floats' do
95
- coordinates = Sunspot::Util::Coordinates.new(
96
- BigDecimal.new('40.7'), BigDecimal.new('-73.5'))
97
- session.index(post(:coordinates => coordinates))
98
- connection.should have_add_with(:coordinates_s => 'dr5xx3nytvgs')
99
- end
100
-
101
- it 'should correctly index an attribute field with block access' do
102
- session.index(post(:title => 'The Blog Post'))
103
- connection.should have_add_with(:sort_title_s => 'blog post')
104
- end
105
-
106
- it 'should correctly index an attribute field with instance-external block access' do
107
- session.index(post(:category_ids => [1, 2, 3]))
108
- connection.should have_add_with(:primary_category_id_i => '1')
109
- end
110
-
111
- it 'should correctly index a field that is defined on a superclass' do
112
- Sunspot.setup(SuperClass) { string :author_name }
113
- session.index(post(:author_name => 'Mat Brown'))
114
- connection.should have_add_with(:author_name_s => 'Mat Brown')
115
- end
116
-
117
- it 'should throw a NoMethodError only if a nonexistent type is defined' do
118
- lambda { Sunspot.setup(Post) { string :author_name }}.should_not raise_error
119
- lambda { Sunspot.setup(Post) { bogus :journey }}.should raise_error(NoMethodError)
120
- end
121
-
122
- it 'should throw a NoMethodError if a nonexistent field argument is passed' do
123
- lambda { Sunspot.setup(Post) { string :author_name, :bogus => :argument }}.should raise_error(ArgumentError)
124
- end
125
-
126
- it 'should throw an ArgumentError if single-value field tries to index multiple values' do
127
- lambda do
128
- Sunspot.setup(Post) { string :author_name }
129
- session.index(post(:author_name => ['Mat Brown', 'Matthew Brown']))
130
- end.should raise_error(ArgumentError)
131
- end
132
-
133
- it 'should throw an ArgumentError if specifying more_like_this on type that does not support it' do
134
- lambda do
135
- Sunspot.setup(Post) { integer :popularity, :more_like_this => true }
136
- end.should raise_error(ArgumentError)
137
- end
138
-
139
- it 'should use a specified field name when the :as option is set' do
140
- session.index(post(:title => 'A Title'))
141
- connection.should have_add_with(:legacy_field_s => 'legacy A Title')
142
- end
143
-
144
- it 'should use a specified field name when the :as option is set for array values' do
145
- session.index(post(:title => 'Another Title'))
146
- connection.should have_add_with(:legacy_array_field_sm => ['first string', 'second string'])
147
- end
148
- end
149
-