forest_liana 1.9.8 → 2.0.0
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 +4 -4
- data/app/controllers/forest_liana/associations_controller.rb +12 -2
- data/app/controllers/forest_liana/resources_controller.rb +14 -5
- data/app/controllers/forest_liana/router.rb +1 -2
- data/app/models/forest_liana/model/collection.rb +3 -1
- data/app/serializers/forest_liana/collection_serializer.rb +1 -0
- data/app/services/forest_liana/base_getter.rb +2 -4
- data/app/services/forest_liana/has_many_getter.rb +2 -3
- data/app/services/forest_liana/resources_getter.rb +8 -8
- data/app/services/forest_liana/schema_adapter.rb +35 -6
- data/app/services/forest_liana/schema_utils.rb +17 -12
- data/lib/forest_liana.rb +12 -2
- data/lib/forest_liana/bootstraper.rb +31 -7
- data/lib/forest_liana/collection.rb +27 -3
- data/lib/forest_liana/version.rb +1 -1
- data/test/dummy/db/test.sqlite3 +0 -0
- data/test/dummy/log/test.log +22100 -0
- data/test/services/forest_liana/has_many_getter_test.rb +2 -2
- data/test/services/forest_liana/resource_updater_test.rb +5 -5
- data/test/services/forest_liana/resources_getter_test.rb +5 -5
- data/test/services/forest_liana/schema_adapter_test.rb +5 -5
- metadata +2 -2
@@ -2,12 +2,12 @@ module ForestLiana
|
|
2
2
|
class ResourcesGetterTest < ActiveSupport::TestCase
|
3
3
|
|
4
4
|
collectionOwner = ForestLiana::Model::Collection.new({
|
5
|
-
name: '
|
5
|
+
name: 'Owner',
|
6
6
|
fields: []
|
7
7
|
})
|
8
8
|
|
9
9
|
collectionTree = ForestLiana::Model::Collection.new({
|
10
|
-
name: '
|
10
|
+
name: 'Tree',
|
11
11
|
fields: []
|
12
12
|
})
|
13
13
|
|
@@ -2,7 +2,7 @@ module ForestLiana
|
|
2
2
|
class ResourceUpdaterTest < ActiveSupport::TestCase
|
3
3
|
|
4
4
|
collection = ForestLiana::Model::Collection.new({
|
5
|
-
name: '
|
5
|
+
name: 'SerializeField',
|
6
6
|
fields: [{
|
7
7
|
type: 'String',
|
8
8
|
field: 'field'
|
@@ -17,7 +17,7 @@ module ForestLiana
|
|
17
17
|
id: 1,
|
18
18
|
data: {
|
19
19
|
id: 1,
|
20
|
-
type: "
|
20
|
+
type: "SerializeField",
|
21
21
|
attributes: {}
|
22
22
|
}
|
23
23
|
)
|
@@ -33,7 +33,7 @@ module ForestLiana
|
|
33
33
|
id: 1,
|
34
34
|
data: {
|
35
35
|
id: 1,
|
36
|
-
type: "
|
36
|
+
type: "SerializeField",
|
37
37
|
attributes: {
|
38
38
|
field: nil
|
39
39
|
}
|
@@ -51,7 +51,7 @@ module ForestLiana
|
|
51
51
|
id: 1,
|
52
52
|
data: {
|
53
53
|
id: 1,
|
54
|
-
type: "
|
54
|
+
type: "SerializeField",
|
55
55
|
attributes: {
|
56
56
|
field: "Lucas"
|
57
57
|
}
|
@@ -70,7 +70,7 @@ module ForestLiana
|
|
70
70
|
id: 1,
|
71
71
|
data: {
|
72
72
|
id: 1,
|
73
|
-
type: "
|
73
|
+
type: "SerializeField",
|
74
74
|
attributes: {
|
75
75
|
field: "[\"test\", \"test\"]"
|
76
76
|
}
|
@@ -84,7 +84,7 @@ module ForestLiana
|
|
84
84
|
|
85
85
|
test 'Filter on ambiguous field' do
|
86
86
|
getter = ResourcesGetter.new(Tree, {
|
87
|
-
fields: { '
|
87
|
+
fields: { 'Tree' => 'id' },
|
88
88
|
page: { size: 10, number: 1 },
|
89
89
|
filter: {
|
90
90
|
'created_at' => '>2015-06-18 08:00:00',
|
@@ -106,7 +106,7 @@ module ForestLiana
|
|
106
106
|
|
107
107
|
test 'Filter before x days' do
|
108
108
|
getter = ResourcesGetter.new(Tree, {
|
109
|
-
fields: { '
|
109
|
+
fields: { 'Tree' => 'id' },
|
110
110
|
page: { size: 10, number: 1 },
|
111
111
|
filter: {
|
112
112
|
'created_at' => '$3HoursBefore',
|
@@ -127,7 +127,7 @@ module ForestLiana
|
|
127
127
|
|
128
128
|
test 'Sort on an ambiguous field name with a filter' do
|
129
129
|
getter = ResourcesGetter.new(Tree, {
|
130
|
-
fields: { '
|
130
|
+
fields: { 'Tree' => 'id' },
|
131
131
|
page: { size: 10, number: 1 },
|
132
132
|
sort: '-name',
|
133
133
|
filter: { 'owner:name' => 'Arnaud Besnier' },
|
@@ -161,7 +161,7 @@ module ForestLiana
|
|
161
161
|
|
162
162
|
test 'Filter on an updated_at field of an associated collection' do
|
163
163
|
getter = ResourcesGetter.new(Tree, {
|
164
|
-
fields: { '
|
164
|
+
fields: { 'Tree' => 'id' },
|
165
165
|
page: { size: 10, number: 1 },
|
166
166
|
filter: { 'owner:updated_at' => '$previousYear' },
|
167
167
|
filterType: 'and',
|
@@ -178,7 +178,7 @@ module ForestLiana
|
|
178
178
|
|
179
179
|
test 'Filter equal on an updated_at field of an associated collection' do
|
180
180
|
getter = ResourcesGetter.new(Tree, {
|
181
|
-
fields: { '
|
181
|
+
fields: { 'Tree' => 'id' },
|
182
182
|
page: { size: 10, number: 1 },
|
183
183
|
filter: {
|
184
184
|
'owner:updated_at' => 'Sat Jul 02 2016 11:52:00 GMT-0400 (EDT)',
|
@@ -40,7 +40,7 @@ module ForestLiana
|
|
40
40
|
assert schema.fields.include?({
|
41
41
|
field: :has_one_field,
|
42
42
|
type: 'Number',
|
43
|
-
reference: '
|
43
|
+
reference: 'HasOneField.id',
|
44
44
|
inverseOf: 'belongs_to_field'
|
45
45
|
})
|
46
46
|
end
|
@@ -50,7 +50,7 @@ module ForestLiana
|
|
50
50
|
assert schema.fields.include?({
|
51
51
|
field: 'belongs_to_field',
|
52
52
|
type: 'Number',
|
53
|
-
reference: '
|
53
|
+
reference: 'BelongsToField.id',
|
54
54
|
inverseOf: 'has_one_field',
|
55
55
|
"is-filterable": true
|
56
56
|
})
|
@@ -61,7 +61,7 @@ module ForestLiana
|
|
61
61
|
assert schema.fields.include?({
|
62
62
|
field: 'belongs_to_fields',
|
63
63
|
type: ['Number'],
|
64
|
-
reference: '
|
64
|
+
reference: 'BelongsToField.id',
|
65
65
|
inverseOf: 'has_many_field',
|
66
66
|
"is-filterable": false
|
67
67
|
})
|
@@ -72,7 +72,7 @@ module ForestLiana
|
|
72
72
|
assert schema.fields.include?({
|
73
73
|
field: 'foo',
|
74
74
|
type: ['Number'],
|
75
|
-
reference: '
|
75
|
+
reference: 'BelongsToField.id',
|
76
76
|
inverseOf: 'has_many_class_name_field',
|
77
77
|
"is-filterable": false
|
78
78
|
})
|
@@ -83,7 +83,7 @@ module ForestLiana
|
|
83
83
|
assert schema.fields.include?({
|
84
84
|
field: :foo,
|
85
85
|
type: 'Number',
|
86
|
-
reference: '
|
86
|
+
reference: 'HasOneField.id',
|
87
87
|
inverseOf: 'belongs_to_class_name_field'
|
88
88
|
})
|
89
89
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: forest_liana
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sandro Munda
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-11-
|
11
|
+
date: 2017-11-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|