artirix_data_models 0.11.1 → 0.11.2

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.
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