couch_rest_adapter 0.4.6 → 0.4.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2528a952590835e4aadaa18c3cfaec9a2420db6d
4
- data.tar.gz: 4732332691d637324ea3d4635e424f05839f9209
3
+ metadata.gz: afd6f67968cdc04eeb35048d9b6b2a8b2ba6aaa0
4
+ data.tar.gz: 32c3d327829c207be8c6078c67cda1fcc6ad5418
5
5
  SHA512:
6
- metadata.gz: afbd2b829bed06194e6a3f5cf2ff72a7825c406e434a530a49952d93fa98972080c17d4302e7bb3c8768c7bda26f1b0a2fe91196089a981980d6e55cddb5a066
7
- data.tar.gz: 22fc3f8612e49c89dadde9da4bf7b49ac44438521ae0e8caf46b6b1832fe1d7d947b14d54d2d6baa0cd421c517674b5a174e86eafb38e5f127fcb2dd0f7469e1
6
+ metadata.gz: 979e357abd7c55fc6bc1d8d1364984cf3f6aa7ff4c55d45ed7c1ba100517be6f0e2d3096c16d84b57fbfcb466ae7d7c27ca90a12d8eb1f81e202ad32c7d91a03
7
+ data.tar.gz: f4d4fd53b85da4244219acecb87956dda25596f321175bade53036d83c16501a45b43978ad8288b64e69c62fd5d658aaab974e55220d7504e657d91eb1748253
data/README.rdoc CHANGED
@@ -13,12 +13,17 @@ This project rocks and uses MIT-LICENSE.
13
13
 
14
14
  == Instalation
15
15
 
16
+ Right now there will be a conflict if you use it as it is mixed with ActoveRecord,
17
+ so you should create your reails project without AR, as in <tt>rails new my_app -O</tt>
18
+
16
19
  === In Gemfile
17
20
 
18
21
  gem 'couch_rest_adapter'
19
22
 
20
23
  === Sample config/database.yml
21
24
 
25
+ All this are required attributes.
26
+
22
27
  defaults: &defaults
23
28
  host: localhost
24
29
  port: 5984
@@ -58,7 +63,20 @@ with the next structure:
58
63
  }
59
64
 
60
65
 
61
- We are planning to add a rake task that setup this view on install.
66
+ You can add more views as needed into ```db/designs/``` folder.
67
+
68
+ This is how the designs are delcared:
69
+
70
+ db
71
+ designs
72
+ my_map_name.map.coffee
73
+ my_filter_name.filter.coffee
74
+ my_reduce_name.reduce.coffee
75
+
76
+ Then if you run ```rake db:push:design``` the ```_design/my_app`` document will be updated.
77
+ The views need to be written on coffeescript code.
78
+
79
+ One thing: this will allow you to add tests to your couch views ;-)
62
80
 
63
81
  === Model Declaration
64
82
 
@@ -55,7 +55,7 @@ module CouchRestAdapter
55
55
 
56
56
  def self.method_missing method, *args, &block
57
57
  if method.to_s =~ /^find_by_(.+)$/
58
- find_by_attribute($1, args.first)
58
+ find_by_attribute($1, args.first, default_design_doc)
59
59
  else
60
60
  super
61
61
  end
@@ -10,21 +10,19 @@ module CouchRestAdapter
10
10
  end
11
11
 
12
12
  module ClassMethods
13
-
14
- DEFAULT_DESIGN = Rails.application.class.to_s.split("::").first.downcase
15
13
 
16
- def find_by_attribute attr_name, value, doc_name = nil
14
+ def find_by_attribute attr_name, value, doc_name
17
15
  document_name = 'by_attribute'
18
16
  key_value = [object_name, attr_name, value]
19
17
  view_by_key document_name, key_value, doc_name
20
18
  end
21
19
 
22
- def query_view name, doc_name = nil
20
+ def query_view name, doc_name
23
21
  view_by_key name, object_name, doc_name
24
22
  end
25
23
 
26
24
  def view_by_key name, key = nil, doc_name = nil
27
- doc = name.namespace_me(doc_name || DEFAULT_DESIGN)
25
+ doc = name.namespace_me(doc_name)
28
26
  view(doc, {key: key})['rows'].map{ |res| new res['doc'] }
29
27
  end
30
28
 
@@ -1,3 +1,3 @@
1
1
  module CouchRestAdapter
2
- VERSION = "0.4.6"
2
+ VERSION = "0.4.7"
3
3
  end
@@ -2746,3 +2746,63 @@ LintTest: test_to_param
2746
2746
  ------------------------------
2747
2747
  LintTest: test_to_partial_path
2748
2748
  ------------------------------
2749
+ ---------------------------------------------------
2750
+ CouchRestAdapter::AttributeMethodTest: test_base_id
2751
+ ---------------------------------------------------
2752
+ -----------------------------------------------------------------------------------------------------------------------
2753
+ CouchRestAdapter::DocumentManagementTest: test__set_id_and_namespace_will_set_the__id_variable_with_an_id_and_namespace
2754
+ -----------------------------------------------------------------------------------------------------------------------
2755
+ ---------------------------------------------------------------------------------------------------
2756
+ CouchRestAdapter::DocumentManagementTest: test_class_method_namespace=_allows_override_of_namespace
2757
+ ---------------------------------------------------------------------------------------------------
2758
+ ---------------------------------------------------------------------------------------------
2759
+ CouchRestAdapter::DocumentManagementTest: test_class_method_namespace_defaults_to_object_name
2760
+ ---------------------------------------------------------------------------------------------
2761
+ -----------------------------------------------------------------------------------------------------------
2762
+ CouchRestAdapter::DocumentManagementTest: test_class_method_object_name_returns_model_name_in_singular_form
2763
+ -----------------------------------------------------------------------------------------------------------
2764
+ --------------------------------------------------------------
2765
+ CouchRestAdapterTest: test_attributes_are_available_as_methods
2766
+ --------------------------------------------------------------
2767
+ ---------------------------------------------------------
2768
+ CouchRestAdapterTest: test_can_not_instantiate_base_class
2769
+ ---------------------------------------------------------
2770
+ ---------------------------------------------------------------------------------------------
2771
+ CouchRestAdapterTest: test_find_by_attr_will_return_array_of_docs_with_type_set_to_model_name
2772
+ ---------------------------------------------------------------------------------------------
2773
+ ---------------------------------------------------------
2774
+ CouchRestAdapterTest: test_find_will_work_with_partial_id
2775
+ ---------------------------------------------------------
2776
+ -------------------------------------------------------------
2777
+ CouchRestAdapterTest: test_one_can_update_existing_attributes
2778
+ -------------------------------------------------------------
2779
+ --------------------------------------------------------------------------------------------------
2780
+ CouchRestAdapterTest: test_query_all_by_type_will_return_array_of_docs_with_type_set_to_model_name
2781
+ --------------------------------------------------------------------------------------------------
2782
+ ----------------------------------------------------------------------
2783
+ CouchRestAdapterTest: test_query_all_will_bring_array_of_Foo_instances
2784
+ ----------------------------------------------------------------------
2785
+ -------------------------------------------------------
2786
+ CouchRestAdapterTest: test_update_to_attr=_will_persist
2787
+ -------------------------------------------------------
2788
+ --------------------------------------------------------------
2789
+ CouchRestAdapterTest: test_will_add_class_underscorename_to_id
2790
+ --------------------------------------------------------------
2791
+ --------------------------
2792
+ LintTest: test_errors_aref
2793
+ --------------------------
2794
+ ---------------------------
2795
+ LintTest: test_model_naming
2796
+ ---------------------------
2797
+ -------------------------
2798
+ LintTest: test_persisted?
2799
+ -------------------------
2800
+ ---------------------
2801
+ LintTest: test_to_key
2802
+ ---------------------
2803
+ -----------------------
2804
+ LintTest: test_to_param
2805
+ -----------------------
2806
+ ------------------------------
2807
+ LintTest: test_to_partial_path
2808
+ ------------------------------
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: couch_rest_adapter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.6
4
+ version: 0.4.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Javier Guerra