artirix_data_models 0.11.1 → 0.11.2

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: 4f651445f88dd5f2226b497ce2324ba0cc05d420
4
- data.tar.gz: 399f09062d4fdc2d55135a252e92f79825319ec7
3
+ metadata.gz: 74bf1987943e0d0d547849475fa2c49e6680ba55
4
+ data.tar.gz: b5cf434cc9e5a3f69da2c20b9f103140a76ac215
5
5
  SHA512:
6
- metadata.gz: 48d37fb8419d01c29818b9d4de28a63d3e8381cd8b9ba5da9393558e59094b665c28f206077f1cee1fca86e937d65e9349c2d048e2c3dfa3d00a1e53478c3353
7
- data.tar.gz: d858dcddec86aa212ba363b896dcd6d1d7807e55406a6bece8a70b6e32e68018f1769b5cf839384a0b208ad5469668b43e0fb62232cc3b016f53888eaa626f3f
6
+ metadata.gz: 8683e1313088cade6522eb60185217e42a2ea614abc490b6e39c541ca04b090a472510698b285dbfb2079a6326ee71f40bef43a048f9f00fb1a0c33367f9f1c1
7
+ data.tar.gz: c2bf55255fb00cf74ba913aa25e23534809d07703c551fe40d7ae56187715575c51a3037932b28f68409571b17b2bdf2a15526ad4fcf28d690062c6b5d392fe7
data/README.md CHANGED
@@ -250,6 +250,9 @@ end
250
250
 
251
251
  ## Changes
252
252
 
253
+ ### 0.11.2
254
+ - `ArtirixDataModels::ActiveNull` better acting like a model.
255
+
253
256
  ### 0.11.1
254
257
  - `ArtirixDataModels::DataGateway::GatewayError` subclass now for status `400`: `BadRequest`
255
258
 
@@ -29,10 +29,6 @@ module ArtirixDataModels
29
29
  config.impersonate model
30
30
  config.predicates_return false
31
31
 
32
- model.defined_attributes.each do |field, default|
33
- define_method(field.to_sym) { default }
34
- end
35
-
36
32
  def nil?
37
33
  true
38
34
  end
@@ -49,6 +45,53 @@ module ArtirixDataModels
49
45
  '{}'
50
46
  end
51
47
 
48
+ ##########################
49
+ # ACTIVE MODEL COMPLIANT #
50
+ ##########################
51
+
52
+ def to_model
53
+ self
54
+ end
55
+
56
+ def to_partial_path
57
+ model._to_partial_path
58
+ end
59
+
60
+ def persisted?
61
+ true
62
+ end
63
+
64
+ def valid?
65
+ true
66
+ end
67
+
68
+ def new_record?
69
+ false
70
+ end
71
+
72
+ def destroyed?
73
+ false
74
+ end
75
+
76
+ def errors
77
+ obj = Object.new
78
+
79
+ def obj.[](key)
80
+ []
81
+ end
82
+
83
+ def obj.full_messages()
84
+ []
85
+ end
86
+
87
+ obj
88
+ end
89
+
90
+
91
+ ##########
92
+ # DRAPER #
93
+ ##########
94
+
52
95
  if Object.const_defined? 'Draper'
53
96
  def decorate(options = {})
54
97
  decorator_class.decorate(self, options)
@@ -77,6 +120,7 @@ module ArtirixDataModels
77
120
  end
78
121
  null.send(:include, Draper::Decoratable) if Object.const_defined? 'Draper'
79
122
  null.send(:include, overrides) if overrides
123
+ null.send(:include, ArtirixDataModels::Model::ActiveModelCompliant)
80
124
  set_null_model null
81
125
  end
82
126
 
@@ -121,6 +121,12 @@ module ArtirixDataModels
121
121
 
122
122
  obj
123
123
  end
124
+
125
+ module ClassMethods
126
+ def active_model_compliant?
127
+ true
128
+ end
129
+ end
124
130
  end
125
131
 
126
132
  module Attributes
@@ -1,3 +1,3 @@
1
1
  module ArtirixDataModels
2
- VERSION = '0.11.1'
2
+ VERSION = '0.11.2'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: artirix_data_models
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.1
4
+ version: 0.11.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eduardo Turiño
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-02-19 00:00:00.000000000 Z
11
+ date: 2016-02-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport