forest_liana 2.14.1 → 2.14.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/controllers/forest_liana/resources_controller.rb +7 -0
- data/app/services/forest_liana/operator_value_parser.rb +5 -1
- data/config/initializers/errors.rb +3 -3
- data/lib/forest_liana/version.rb +1 -1
- data/test/dummy/db/test.sqlite3 +0 -0
- data/test/dummy/log/test.log +455 -0
- data/test/services/forest_liana/resources_getter_test.rb +30 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 228f6c6293b33f6b3463a5c770fb346dfe95780b
|
4
|
+
data.tar.gz: ca2966e27149f6755ce83077e75a33077dea79b5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f92cf743980f20ba9b802a320b4d012472c6232bf8564712f978b14df11012fb8819bfb2329e78a95e4a36411615d8b56be2789fe2ddb1cb6c4255375dd0700b
|
7
|
+
data.tar.gz: 86b785f60a283a02896059788d13178703f344a6f4f3d9e399c052cc2580fe041aa59c473a7f7aefea716431d7e8e6c1880e941ab1e28e7cb982e46842753801
|
@@ -62,6 +62,13 @@ module ForestLiana
|
|
62
62
|
rescue ForestLiana::Errors::LiveQueryError => error
|
63
63
|
render json: { errors: [{ status: 422, detail: error.message }] },
|
64
64
|
status: :unprocessable_entity, serializer: nil
|
65
|
+
rescue ForestLiana::Errors::ExpectedError => error
|
66
|
+
error.display_error
|
67
|
+
error_data = JSONAPI::Serializer.serialize_errors([{
|
68
|
+
status: error.error_code,
|
69
|
+
detail: error.message
|
70
|
+
}])
|
71
|
+
render(serializer: nil, json: error_data, status: error.status)
|
65
72
|
rescue => error
|
66
73
|
FOREST_LOGGER.error "Records Index Count error: #{error}\n#{format_stacktrace(error)}"
|
67
74
|
internal_server_error
|
@@ -45,7 +45,7 @@ module ForestLiana
|
|
45
45
|
resource_association = resource.reflect_on_association(association)
|
46
46
|
|
47
47
|
if resource_association.nil?
|
48
|
-
raise ForestLiana::Errors::
|
48
|
+
raise ForestLiana::Errors::HTTP422Error.new("Association '#{association.to_s}' not found")
|
49
49
|
end
|
50
50
|
|
51
51
|
resource = resource.reflect_on_association(association).klass
|
@@ -93,6 +93,10 @@ module ForestLiana
|
|
93
93
|
field_name = field
|
94
94
|
column_found = columns.find { |column| column.name == field_name }
|
95
95
|
|
96
|
+
if true #column_found.nil?
|
97
|
+
raise ForestLiana::Errors::HTTP422Error.new("Field '#{field_name}' not found")
|
98
|
+
end
|
99
|
+
|
96
100
|
if column_found.type == :boolean
|
97
101
|
ForestLiana::AdapterHelper.cast_boolean(value)
|
98
102
|
else
|
@@ -39,9 +39,9 @@ module ForestLiana
|
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
42
|
-
class
|
43
|
-
def initialize(message = "
|
44
|
-
super(
|
42
|
+
class HTTP422Error < ExpectedError
|
43
|
+
def initialize(message = "Unprocessable Entity")
|
44
|
+
super(422, :unprocessable_entity, message)
|
45
45
|
end
|
46
46
|
end
|
47
47
|
|
data/lib/forest_liana/version.rb
CHANGED
data/test/dummy/db/test.sqlite3
CHANGED
Binary file
|
data/test/dummy/log/test.log
CHANGED
@@ -65827,3 +65827,458 @@ ForestLiana::PieStatGetterTest: test_Pie_stat_getter_with_an_aggregate_on_a_fore
|
|
65827
65827
|
---------------------------------------------------------------------------------------
|
65828
65828
|
[1m[36m (0.5ms)[0m [1mSELECT COUNT(DISTINCT "belongs_to_fields"."id") AS count_id, belongs_to_fields.has_one_field_id AS belongs_to_fields_has_one_field_id FROM "belongs_to_fields" LEFT OUTER JOIN "has_one_fields" ON "has_one_fields"."id" = "belongs_to_fields"."has_one_field_id" LEFT OUTER JOIN "has_many_fields" ON "has_many_fields"."id" = "belongs_to_fields"."has_many_field_id" LEFT OUTER JOIN "has_many_class_name_fields" ON "has_many_class_name_fields"."id" = "belongs_to_fields"."has_many_class_name_field_id" GROUP BY belongs_to_fields.has_one_field_id ORDER BY count_id DESC[0m
|
65829
65829
|
[1m[35m (0.0ms)[0m rollback transaction
|
65830
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.4ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
65831
|
+
[1m[35mActiveRecord::SchemaMigration Load (0.1ms)[0m SELECT "schema_migrations".* FROM "schema_migrations"
|
65832
|
+
[1m[36m (0.1ms)[0m [1m SELECT sql
|
65833
|
+
FROM sqlite_master
|
65834
|
+
WHERE name='index_belongs_to_class_name_fields_on_foo_id' AND type='index'
|
65835
|
+
UNION ALL
|
65836
|
+
SELECT sql
|
65837
|
+
FROM sqlite_temp_master
|
65838
|
+
WHERE name='index_belongs_to_class_name_fields_on_foo_id' AND type='index'
|
65839
|
+
[0m
|
65840
|
+
[1m[35m (0.1ms)[0m SELECT sql
|
65841
|
+
FROM sqlite_master
|
65842
|
+
WHERE name='index_belongs_to_fields_on_has_many_field_id' AND type='index'
|
65843
|
+
UNION ALL
|
65844
|
+
SELECT sql
|
65845
|
+
FROM sqlite_temp_master
|
65846
|
+
WHERE name='index_belongs_to_fields_on_has_many_field_id' AND type='index'
|
65847
|
+
|
65848
|
+
[1m[36m (0.1ms)[0m [1m SELECT sql
|
65849
|
+
FROM sqlite_master
|
65850
|
+
WHERE name='index_belongs_to_fields_on_has_many_class_name_field_id' AND type='index'
|
65851
|
+
UNION ALL
|
65852
|
+
SELECT sql
|
65853
|
+
FROM sqlite_temp_master
|
65854
|
+
WHERE name='index_belongs_to_fields_on_has_many_class_name_field_id' AND type='index'
|
65855
|
+
[0m
|
65856
|
+
[1m[35m (0.1ms)[0m SELECT sql
|
65857
|
+
FROM sqlite_master
|
65858
|
+
WHERE name='index_belongs_to_fields_on_has_one_field_id' AND type='index'
|
65859
|
+
UNION ALL
|
65860
|
+
SELECT sql
|
65861
|
+
FROM sqlite_temp_master
|
65862
|
+
WHERE name='index_belongs_to_fields_on_has_one_field_id' AND type='index'
|
65863
|
+
|
65864
|
+
[1m[36m (0.1ms)[0m [1m SELECT sql
|
65865
|
+
FROM sqlite_master
|
65866
|
+
WHERE name='index_has_many_fields_on_has_many_through_field_id' AND type='index'
|
65867
|
+
UNION ALL
|
65868
|
+
SELECT sql
|
65869
|
+
FROM sqlite_temp_master
|
65870
|
+
WHERE name='index_has_many_fields_on_has_many_through_field_id' AND type='index'
|
65871
|
+
[0m
|
65872
|
+
[1m[35m (0.1ms)[0m SELECT sql
|
65873
|
+
FROM sqlite_master
|
65874
|
+
WHERE name='index_polymorphic_fields_on_has_one_field_id' AND type='index'
|
65875
|
+
UNION ALL
|
65876
|
+
SELECT sql
|
65877
|
+
FROM sqlite_temp_master
|
65878
|
+
WHERE name='index_polymorphic_fields_on_has_one_field_id' AND type='index'
|
65879
|
+
|
65880
|
+
[1m[36m (0.1ms)[0m [1m SELECT sql
|
65881
|
+
FROM sqlite_master
|
65882
|
+
WHERE name='index_trees_on_owner_id' AND type='index'
|
65883
|
+
UNION ALL
|
65884
|
+
SELECT sql
|
65885
|
+
FROM sqlite_temp_master
|
65886
|
+
WHERE name='index_trees_on_owner_id' AND type='index'
|
65887
|
+
[0m
|
65888
|
+
[1m[36mActiveRecord::SchemaMigration Load (0.1ms)[0m [1mSELECT "schema_migrations".* FROM "schema_migrations"[0m
|
65889
|
+
[1m[35m (0.1ms)[0m begin transaction
|
65890
|
+
[1m[36mFixture Delete (0.7ms)[0m [1mDELETE FROM "has_many_through_fields"[0m
|
65891
|
+
[1m[35mFixture Insert (0.6ms)[0m INSERT INTO "has_many_through_fields" ("id") VALUES (1)
|
65892
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "has_many_through_fields" ("id") VALUES (2)[0m
|
65893
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "has_many_through_fields" ("id") VALUES (3)
|
65894
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "has_many_through_fields" ("id") VALUES (4)[0m
|
65895
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "has_many_through_fields" ("id") VALUES (5)
|
65896
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_many_through_fields" ("id") VALUES (6)[0m
|
65897
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "has_many_through_fields" ("id") VALUES (7)
|
65898
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_many_through_fields" ("id") VALUES (8)[0m
|
65899
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_many_through_fields" ("id") VALUES (9)
|
65900
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_many_through_fields" ("id") VALUES (10)[0m
|
65901
|
+
[1m[35mFixture Delete (0.6ms)[0m DELETE FROM "string_fields"
|
65902
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (1, 'Test 1')[0m
|
65903
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (2, 'Test 2')
|
65904
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (3, 'Test 3')[0m
|
65905
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (4, 'Test 4')
|
65906
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (5, 'Test 5')[0m
|
65907
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (6, 'Test 6')
|
65908
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (7, 'Test 7')[0m
|
65909
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (8, 'Test 8')
|
65910
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (9, 'Test 9')[0m
|
65911
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (10, 'Test 10')
|
65912
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (11, 'Test 11')[0m
|
65913
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (12, 'Test 12')
|
65914
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (13, 'Test 13')[0m
|
65915
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (14, 'Test 14')
|
65916
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (15, 'Test 15')[0m
|
65917
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (16, 'Test 16')
|
65918
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (17, 'Test 17')[0m
|
65919
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (18, 'Test 18')
|
65920
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (19, 'Test 19')[0m
|
65921
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (20, 'Test 20')
|
65922
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (21, 'Test 21')[0m
|
65923
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (22, 'Test 22')
|
65924
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (23, 'Test 23')[0m
|
65925
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (24, 'Test 24')
|
65926
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (25, 'Test 25')[0m
|
65927
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (26, 'Test 26')
|
65928
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (27, 'Test 27')[0m
|
65929
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (28, 'Test 28')
|
65930
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "string_fields" ("id", "field") VALUES (29, 'Test 29')[0m
|
65931
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "string_fields" ("id", "field") VALUES (30, 'Test 30')
|
65932
|
+
[1m[36mFixture Delete (1.8ms)[0m [1mDELETE FROM "belongs_to_fields"[0m
|
65933
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (1, 1, 1)
|
65934
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (2, 2, 1)[0m
|
65935
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (3, 3, 1)
|
65936
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (4, 4, 2)[0m
|
65937
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (5, 5, 2)
|
65938
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (6, 6, 2)[0m
|
65939
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (7, 7, 3)
|
65940
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (8, 8, 3)[0m
|
65941
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (9, 9, 3)
|
65942
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (10, 10, 4)[0m
|
65943
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (11, 11, 4)
|
65944
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (12, 12, 4)[0m
|
65945
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (13, 13, 5)
|
65946
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (14, 14, 5)[0m
|
65947
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (15, 15, 5)
|
65948
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (16, 16, 6)[0m
|
65949
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (17, 17, 6)
|
65950
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (18, 18, 6)[0m
|
65951
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (19, 19, 7)
|
65952
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (20, 20, 7)[0m
|
65953
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (21, 21, 7)
|
65954
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (22, 22, 7)[0m
|
65955
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (23, 23, 8)
|
65956
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (24, 24, 8)[0m
|
65957
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (25, 25, 9)
|
65958
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (26, 26, 9)[0m
|
65959
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (27, 27, 9)
|
65960
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (28, 28, 10)[0m
|
65961
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (29, 29, 10)
|
65962
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (30, 30, 10)[0m
|
65963
|
+
[1m[35mFixture Delete (0.9ms)[0m DELETE FROM "trees"
|
65964
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (1, 'Oak', 1, '2011-02-11 11:00:00.000000', '2011-02-11 11:00:00.000000')[0m
|
65965
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (2, 'Mapple', 2, '2011-02-15 21:00:00.000000', '2011-02-15 21:00:00.000000')
|
65966
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (3, 'Mapple', 2, '2013-04-11 12:00:00.000000', '2013-04-11 12:00:00.000000')[0m
|
65967
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (4, 'Oak', 2, '2016-06-18 09:00:00.000000', '2016-06-18 09:00:00.000000')
|
65968
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (5, 'Oak', 3, '2015-06-18 09:00:00.000000', '2015-06-18 09:00:00.000000')[0m
|
65969
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (6, 'Oak', 3, '2018-10-31 21:13:36.000000', '2018-10-31 21:13:36.000000')
|
65970
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (7, 'Sequoia', 1, '2018-10-31 21:13:36.000000', '2018-10-31 21:13:36.000000')[0m
|
65971
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (8, 'Fir', 1, '2018-10-31 21:13:36.000000', '2018-10-31 21:13:36.000000')
|
65972
|
+
[1m[36mFixture Delete (0.4ms)[0m [1mDELETE FROM "has_one_fields"[0m
|
65973
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (1, 't', 0)
|
65974
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (2, 't', 0)[0m
|
65975
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (3, 't', 0)
|
65976
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (4, 't', 0)[0m
|
65977
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (5, 't', 0)
|
65978
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (6, 't', 0)[0m
|
65979
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (7, 't', 0)
|
65980
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (8, 't', 0)[0m
|
65981
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (9, 't', 0)
|
65982
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (10, 't', 0)[0m
|
65983
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (11, 't', 0)
|
65984
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (12, 't', 0)[0m
|
65985
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (13, 't', 0)
|
65986
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (14, 't', 0)[0m
|
65987
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (15, 't', 0)
|
65988
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (16, 't', 0)[0m
|
65989
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (17, 't', 0)
|
65990
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (18, 't', 0)[0m
|
65991
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (19, 't', 0)
|
65992
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (20, 't', 0)[0m
|
65993
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (21, 't', 0)
|
65994
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (22, 't', 0)[0m
|
65995
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (23, 't', 0)
|
65996
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (24, 't', 0)[0m
|
65997
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (25, 't', 0)
|
65998
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (26, 't', 0)[0m
|
65999
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (27, 't', 0)
|
66000
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (28, 't', 0)[0m
|
66001
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (29, 't', 0)
|
66002
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (30, 't', 1)[0m
|
66003
|
+
[1m[35mFixture Delete (0.3ms)[0m DELETE FROM "owners"
|
66004
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "owners" ("id", "name", "created_at", "updated_at") VALUES (1, 'Sandro Munda', '2017-05-30 09:00:00.000000', '2018-06-27 20:00:00.000000')[0m
|
66005
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "owners" ("id", "name", "created_at", "updated_at") VALUES (2, 'Arnaud Besnier', '2018-05-02 09:00:00.000000', '2018-06-28 08:00:00.000000')
|
66006
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "owners" ("id", "name", "created_at", "updated_at") VALUES (3, 'John Doe', '2016-05-02 09:00:00.000000', '2017-06-28 08:00:00.000000')[0m
|
66007
|
+
[1m[35mFixture Delete (0.9ms)[0m DELETE FROM "has_many_fields"
|
66008
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "has_many_fields" ("id") VALUES (1)[0m
|
66009
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "has_many_fields" ("id") VALUES (2)
|
66010
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_many_fields" ("id") VALUES (3)[0m
|
66011
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_many_fields" ("id") VALUES (4)
|
66012
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_many_fields" ("id", "has_many_through_field_id") VALUES (5, 3)[0m
|
66013
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_many_fields" ("id", "has_many_through_field_id") VALUES (6, 2)
|
66014
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_many_fields" ("id") VALUES (7)[0m
|
66015
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_many_fields" ("id", "has_many_through_field_id") VALUES (8, 2)
|
66016
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "has_many_fields" ("id") VALUES (9)[0m
|
66017
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "has_many_fields" ("id") VALUES (10)
|
66018
|
+
[1m[36mFixture Delete (0.1ms)[0m [1mDELETE FROM "serialize_fields"[0m
|
66019
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "serialize_fields" ("id", "field") VALUES (1, 'value 1')
|
66020
|
+
[1m[36mFixture Insert (0.1ms)[0m [1mINSERT INTO "serialize_fields" ("id", "field") VALUES (2, 'value 2')[0m
|
66021
|
+
[1m[35mFixture Insert (0.0ms)[0m INSERT INTO "serialize_fields" ("id", "field") VALUES (3, 'value 3')
|
66022
|
+
[1m[36mFixture Insert (0.0ms)[0m [1mINSERT INTO "serialize_fields" ("id", "field") VALUES (4, 'value 4')[0m
|
66023
|
+
[1m[35mFixture Insert (0.1ms)[0m INSERT INTO "serialize_fields" ("id", "field") VALUES (5, 'value 5')
|
66024
|
+
[1m[36m (2.1ms)[0m [1mcommit transaction[0m
|
66025
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66026
|
+
-----------------------------------------------------------------
|
66027
|
+
ForestLiana::ResourcesGetterTest: test_StringField_page_1_size_15
|
66028
|
+
-----------------------------------------------------------------
|
66029
|
+
[1m[36mSQL (0.1ms)[0m [1mSELECT "string_fields"."id" AS t0_r0, "string_fields"."field" AS t0_r1 FROM "string_fields" ORDER BY string_fields.id DESC LIMIT 15 OFFSET 0[0m
|
66030
|
+
[1m[35m (0.1ms)[0m SELECT COUNT(*) FROM "string_fields"
|
66031
|
+
[1m[36m (0.1ms)[0m [1mrollback transaction[0m
|
66032
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66033
|
+
----------------------------------------------------------------
|
66034
|
+
ForestLiana::ResourcesGetterTest: test_StringField_sort_by_field
|
66035
|
+
----------------------------------------------------------------
|
66036
|
+
[1m[36mSQL (0.2ms)[0m [1mSELECT "string_fields"."id" AS t0_r0, "string_fields"."field" AS t0_r1 FROM "string_fields" ORDER BY string_fields.field DESC LIMIT 10 OFFSET 0[0m
|
66037
|
+
[1m[35m (0.0ms)[0m SELECT COUNT(*) FROM "string_fields"
|
66038
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
66039
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66040
|
+
------------------------------------------------------------------------------------------------
|
66041
|
+
ForestLiana::ResourcesGetterTest: test_Filter_on_an_updated_at_field_of_an_associated_collection
|
66042
|
+
------------------------------------------------------------------------------------------------
|
66043
|
+
[1m[36mSQL (0.2ms)[0m [1mSELECT "trees"."id" AS t0_r0, "trees"."name" AS t0_r1, "trees"."owner_id" AS t0_r2, "trees"."created_at" AS t0_r3, "trees"."updated_at" AS t0_r4, "owners"."id" AS t1_r0, "owners"."name" AS t1_r1, "owners"."created_at" AS t1_r2, "owners"."updated_at" AS t1_r3 FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE (owners.updated_at BETWEEN '2017-01-01 08:00:00 UTC' AND '2018-01-01 07:59:59 UTC') ORDER BY trees.created_at DESC LIMIT 10 OFFSET 0[0m
|
66044
|
+
[1m[35m (0.1ms)[0m SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE (owners.updated_at BETWEEN '2017-01-01 08:00:00 UTC' AND '2018-01-01 07:59:59 UTC')
|
66045
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
66046
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66047
|
+
-------------------------------------------------------------------------------------------
|
66048
|
+
ForestLiana::ResourcesGetterTest: test_Filter_on_an_updated_at_field_of_the_main_collection
|
66049
|
+
-------------------------------------------------------------------------------------------
|
66050
|
+
[1m[36mSQL (0.1ms)[0m [1mSELECT "owners"."id" AS t0_r0, "owners"."name" AS t0_r1, "owners"."created_at" AS t0_r2, "owners"."updated_at" AS t0_r3 FROM "owners" WHERE ("owners"."updated_at" BETWEEN '2017-01-01 08:00:00 UTC' AND '2018-01-01 07:59:59 UTC') ORDER BY owners.created_at DESC LIMIT 10 OFFSET 0[0m
|
66051
|
+
[1m[35m (0.0ms)[0m SELECT COUNT(*) FROM "owners" WHERE ("owners"."updated_at" BETWEEN '2017-01-01 08:00:00 UTC' AND '2018-01-01 07:59:59 UTC')
|
66052
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
66053
|
+
[1m[35m (0.2ms)[0m begin transaction
|
66054
|
+
-----------------------------------------------------------------------
|
66055
|
+
ForestLiana::ResourcesGetterTest: test_Sort_by_a_belongs_to_association
|
66056
|
+
-----------------------------------------------------------------------
|
66057
|
+
[1m[36mSQL (0.2ms)[0m [1mSELECT "belongs_to_fields"."id" AS t0_r0, "belongs_to_fields"."has_one_field_id" AS t0_r1, "belongs_to_fields"."has_many_class_name_field_id" AS t0_r2, "belongs_to_fields"."has_many_field_id" AS t0_r3, "has_one_fields"."id" AS t1_r0, "has_one_fields"."checked" AS t1_r1, "has_one_fields"."status" AS t1_r2, "has_many_fields"."id" AS t2_r0, "has_many_fields"."has_many_through_field_id" AS t2_r1, "has_many_class_name_fields"."id" AS t3_r0 FROM "belongs_to_fields" LEFT OUTER JOIN "has_one_fields" ON "has_one_fields"."id" = "belongs_to_fields"."has_one_field_id" LEFT OUTER JOIN "has_many_fields" ON "has_many_fields"."id" = "belongs_to_fields"."has_many_field_id" LEFT OUTER JOIN "has_many_class_name_fields" ON "has_many_class_name_fields"."id" = "belongs_to_fields"."has_many_class_name_field_id" ORDER BY "has_one_fields"."id" ASC LIMIT 10 OFFSET 0[0m
|
66058
|
+
[1m[35m (0.1ms)[0m SELECT COUNT(DISTINCT "belongs_to_fields"."id") FROM "belongs_to_fields" LEFT OUTER JOIN "has_one_fields" ON "has_one_fields"."id" = "belongs_to_fields"."has_one_field_id" LEFT OUTER JOIN "has_many_fields" ON "has_many_fields"."id" = "belongs_to_fields"."has_many_field_id" LEFT OUTER JOIN "has_many_class_name_fields" ON "has_many_class_name_fields"."id" = "belongs_to_fields"."has_many_class_name_field_id"
|
66059
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
66060
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66061
|
+
------------------------------------------------------------------------------------
|
66062
|
+
ForestLiana::ResourcesGetterTest: test_Sort_on_an_ambiguous_field_name_with_a_filter
|
66063
|
+
------------------------------------------------------------------------------------
|
66064
|
+
[1m[36mSQL (0.2ms)[0m [1mSELECT "trees"."id" AS t0_r0, "trees"."name" AS t0_r1, "trees"."owner_id" AS t0_r2, "trees"."created_at" AS t0_r3, "trees"."updated_at" AS t0_r4, "owners"."id" AS t1_r0, "owners"."name" AS t1_r1, "owners"."created_at" AS t1_r2, "owners"."updated_at" AS t1_r3 FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE (owners.name = 'Arnaud Besnier') ORDER BY trees.name DESC LIMIT 10 OFFSET 0[0m
|
66065
|
+
[1m[35m (0.1ms)[0m SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE (owners.name = 'Arnaud Besnier')
|
66066
|
+
[1m[36m (0.2ms)[0m [1mrollback transaction[0m
|
66067
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66068
|
+
--------------------------------------------------------------------
|
66069
|
+
ForestLiana::ResourcesGetterTest: test_Sort_by_a_has_one_association
|
66070
|
+
--------------------------------------------------------------------
|
66071
|
+
[1m[36mSQL (0.5ms)[0m [1mSELECT "has_one_fields"."id" AS t0_r0, "has_one_fields"."checked" AS t0_r1, "has_one_fields"."status" AS t0_r2, "belongs_to_fields"."id" AS t1_r0, "belongs_to_fields"."has_one_field_id" AS t1_r1, "belongs_to_fields"."has_many_class_name_field_id" AS t1_r2, "belongs_to_fields"."has_many_field_id" AS t1_r3, "belongs_to_class_name_fields"."id" AS t2_r0, "belongs_to_class_name_fields"."foo_id" AS t2_r1 FROM "has_one_fields" LEFT OUTER JOIN "belongs_to_fields" ON "belongs_to_fields"."has_one_field_id" = "has_one_fields"."id" LEFT OUTER JOIN "belongs_to_class_name_fields" ON "belongs_to_class_name_fields"."foo_id" = "has_one_fields"."id" ORDER BY "belongs_to_fields"."id" DESC LIMIT 10 OFFSET 0[0m
|
66072
|
+
[1m[35m (0.2ms)[0m SELECT COUNT(DISTINCT "has_one_fields"."id") FROM "has_one_fields" LEFT OUTER JOIN "belongs_to_fields" ON "belongs_to_fields"."has_one_field_id" = "has_one_fields"."id" LEFT OUTER JOIN "belongs_to_class_name_fields" ON "belongs_to_class_name_fields"."foo_id" = "has_one_fields"."id"
|
66073
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
66074
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66075
|
+
-----------------------------------------------------------------
|
66076
|
+
ForestLiana::ResourcesGetterTest: test_StringField_page_2_size_10
|
66077
|
+
-----------------------------------------------------------------
|
66078
|
+
[1m[36mSQL (0.1ms)[0m [1mSELECT "string_fields"."id" AS t0_r0, "string_fields"."field" AS t0_r1 FROM "string_fields" ORDER BY string_fields.id DESC LIMIT 10 OFFSET 10[0m
|
66079
|
+
[1m[35m (0.0ms)[0m SELECT COUNT(*) FROM "string_fields"
|
66080
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
66081
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66082
|
+
------------------------------------------------------------------------------------------------------
|
66083
|
+
ForestLiana::ResourcesGetterTest: test_Filter_equal_on_an_updated_at_field_of_an_associated_collection
|
66084
|
+
------------------------------------------------------------------------------------------------------
|
66085
|
+
[1m[36mSQL (0.1ms)[0m [1mSELECT "trees"."id" AS t0_r0, "trees"."name" AS t0_r1, "trees"."owner_id" AS t0_r2, "trees"."created_at" AS t0_r3, "trees"."updated_at" AS t0_r4, "owners"."id" AS t1_r0, "owners"."name" AS t1_r1, "owners"."created_at" AS t1_r2, "owners"."updated_at" AS t1_r3 FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE (owners.updated_at = 'Sat Jul 02 2016 11:52:00 GMT-0400 (EDT)') ORDER BY trees.created_at DESC LIMIT 10 OFFSET 0[0m
|
66086
|
+
[1m[35m (0.1ms)[0m SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE (owners.updated_at = 'Sat Jul 02 2016 11:52:00 GMT-0400 (EDT)')
|
66087
|
+
[1m[36m (0.1ms)[0m [1mrollback transaction[0m
|
66088
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66089
|
+
-----------------------------------------------------------------------------
|
66090
|
+
ForestLiana::ResourcesGetterTest: test_Filter_on_a_field_that_does_not_exists
|
66091
|
+
-----------------------------------------------------------------------------
|
66092
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
66093
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66094
|
+
------------------------------------------------------------
|
66095
|
+
ForestLiana::ResourcesGetterTest: test_Filter_before_x_hours
|
66096
|
+
------------------------------------------------------------
|
66097
|
+
[1m[36mSQL (0.1ms)[0m [1mSELECT "trees"."id" AS t0_r0, "trees"."name" AS t0_r1, "trees"."owner_id" AS t0_r2, "trees"."created_at" AS t0_r3, "trees"."updated_at" AS t0_r4 FROM "trees" WHERE ("trees"."created_at" < '2018-10-31 21:12:36 UTC') ORDER BY trees.created_at DESC LIMIT 10 OFFSET 0[0m
|
66098
|
+
[1m[35m (0.0ms)[0m SELECT COUNT(*) FROM "trees" WHERE ("trees"."created_at" < '2018-10-31 21:12:36 UTC')
|
66099
|
+
[1m[36mOwner Load (0.1ms)[0m [1mSELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1[0m [["id", 2]]
|
66100
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66101
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66102
|
+
--------------------------------------------------------------------------------------------------------
|
66103
|
+
ForestLiana::ResourcesGetterTest: test_Filter_on_a_field_of_an_associated_collection_that_does_not_exist
|
66104
|
+
--------------------------------------------------------------------------------------------------------
|
66105
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66106
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66107
|
+
----------------------------------------------------------
|
66108
|
+
ForestLiana::ResourcesGetterTest: test_Filter_after_x_days
|
66109
|
+
----------------------------------------------------------
|
66110
|
+
[1m[35mSQL (0.2ms)[0m SELECT "trees"."id" AS t0_r0, "trees"."name" AS t0_r1, "trees"."owner_id" AS t0_r2, "trees"."created_at" AS t0_r3, "trees"."updated_at" AS t0_r4 FROM "trees" WHERE ("trees"."created_at" > '2018-10-31 21:12:36 UTC') ORDER BY trees.created_at DESC LIMIT 10 OFFSET 0
|
66111
|
+
[1m[36m (0.1ms)[0m [1mSELECT COUNT(*) FROM "trees" WHERE ("trees"."created_at" > '2018-10-31 21:12:36 UTC')[0m
|
66112
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66113
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66114
|
+
----------------------------------------------------------------
|
66115
|
+
ForestLiana::ResourcesGetterTest: test_Filter_on_ambiguous_field
|
66116
|
+
----------------------------------------------------------------
|
66117
|
+
[1m[35mSQL (0.2ms)[0m SELECT "trees"."id" AS t0_r0, "trees"."name" AS t0_r1, "trees"."owner_id" AS t0_r2, "trees"."created_at" AS t0_r3, "trees"."updated_at" AS t0_r4, "owners"."id" AS t1_r0, "owners"."name" AS t1_r1, "owners"."created_at" AS t1_r2, "owners"."updated_at" AS t1_r3 FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE ("trees"."created_at" > '2015-06-18 08:00:00') AND (owners.name = 'Arnaud Besnier') ORDER BY trees.created_at DESC LIMIT 10 OFFSET 0
|
66118
|
+
[1m[36m (0.1ms)[0m [1mSELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE ("trees"."created_at" > '2015-06-18 08:00:00') AND (owners.name = 'Arnaud Besnier')[0m
|
66119
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66120
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66121
|
+
----------------------------------------------------------------------------------------------------
|
66122
|
+
ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_filter_on_a_belongs_to_boolean_field
|
66123
|
+
----------------------------------------------------------------------------------------------------
|
66124
|
+
[1m[35m (0.2ms)[0m SELECT DISTINCT COUNT(DISTINCT "belongs_to_fields"."id") FROM "belongs_to_fields" LEFT OUTER JOIN "has_one_fields" ON "has_one_fields"."id" = "belongs_to_fields"."has_one_field_id" LEFT OUTER JOIN "has_many_fields" ON "has_many_fields"."id" = "belongs_to_fields"."has_many_field_id" LEFT OUTER JOIN "has_many_class_name_fields" ON "has_many_class_name_fields"."id" = "belongs_to_fields"."has_many_class_name_field_id" WHERE ("has_one_fields"."checked" = 0)
|
66125
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
66126
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66127
|
+
-------------------------------------------------------------------------------------------------
|
66128
|
+
ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_filter_on_a_belongs_to_enum_field
|
66129
|
+
-------------------------------------------------------------------------------------------------
|
66130
|
+
[1m[36m (0.3ms)[0m [1mSELECT DISTINCT COUNT(DISTINCT "belongs_to_fields"."id") FROM "belongs_to_fields" LEFT OUTER JOIN "has_one_fields" ON "has_one_fields"."id" = "belongs_to_fields"."has_one_field_id" LEFT OUTER JOIN "has_many_fields" ON "has_many_fields"."id" = "belongs_to_fields"."has_many_field_id" LEFT OUTER JOIN "has_many_class_name_fields" ON "has_many_class_name_fields"."id" = "belongs_to_fields"."has_many_class_name_field_id" WHERE ("has_one_fields"."status" = '1')[0m
|
66131
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66132
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
66133
|
+
----------------------------------------------------------------------------------------------------
|
66134
|
+
ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_filter_on_a_belongs_to_integer_field
|
66135
|
+
----------------------------------------------------------------------------------------------------
|
66136
|
+
[1m[35m (0.2ms)[0m SELECT DISTINCT COUNT(DISTINCT "belongs_to_fields"."id") FROM "belongs_to_fields" LEFT OUTER JOIN "has_one_fields" ON "has_one_fields"."id" = "belongs_to_fields"."has_one_field_id" LEFT OUTER JOIN "has_many_fields" ON "has_many_fields"."id" = "belongs_to_fields"."has_many_field_id" LEFT OUTER JOIN "has_many_class_name_fields" ON "has_many_class_name_fields"."id" = "belongs_to_fields"."has_many_class_name_field_id" WHERE ("has_one_fields"."id" = '3')
|
66137
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
66138
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66139
|
+
-----------------------------------------------------------------------------
|
66140
|
+
ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_simple_filter
|
66141
|
+
-----------------------------------------------------------------------------
|
66142
|
+
[1m[36m (0.5ms)[0m [1mSELECT DISTINCT COUNT(DISTINCT "boolean_fields"."id") FROM "boolean_fields" WHERE ("boolean_fields"."field" = 1)[0m
|
66143
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66144
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66145
|
+
-----------------------------------
|
66146
|
+
ForestLiana::RouteTest: test_Routes
|
66147
|
+
-----------------------------------
|
66148
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66149
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66150
|
+
---------------------------
|
66151
|
+
ForestLianaTest: test_truth
|
66152
|
+
---------------------------
|
66153
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66154
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
66155
|
+
---------------------------------------------------------------------------------------
|
66156
|
+
ForestLiana::PieStatGetterTest: test_Pie_stat_getter_with_an_aggregate_on_a_foreign_key
|
66157
|
+
---------------------------------------------------------------------------------------
|
66158
|
+
[1m[35m (0.6ms)[0m SELECT COUNT(DISTINCT "belongs_to_fields"."id") AS count_id, belongs_to_fields.has_one_field_id AS belongs_to_fields_has_one_field_id FROM "belongs_to_fields" LEFT OUTER JOIN "has_one_fields" ON "has_one_fields"."id" = "belongs_to_fields"."has_one_field_id" LEFT OUTER JOIN "has_many_fields" ON "has_many_fields"."id" = "belongs_to_fields"."has_many_field_id" LEFT OUTER JOIN "has_many_class_name_fields" ON "has_many_class_name_fields"."id" = "belongs_to_fields"."has_many_class_name_field_id" GROUP BY belongs_to_fields.has_one_field_id ORDER BY count_id DESC
|
66159
|
+
[1m[36m (0.0ms)[0m [1mrollback transaction[0m
|
66160
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66161
|
+
-----------------------------------------------------------------------------------------
|
66162
|
+
ForestLiana::PieStatGetterTest: test_Pie_stat_getter_with_an_aggregate_on_a_boolean_field
|
66163
|
+
-----------------------------------------------------------------------------------------
|
66164
|
+
[1m[36m (0.1ms)[0m [1mSELECT COUNT(*) AS count_all, boolean_fields.field AS boolean_fields_field FROM "boolean_fields" GROUP BY boolean_fields.field ORDER BY count_all DESC[0m
|
66165
|
+
[1m[35m (0.2ms)[0m rollback transaction
|
66166
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66167
|
+
--------------------------------------------------------------------------
|
66168
|
+
ForestLiana::SchemaAdapterTest: test_Decimal_should_have_the_type_`Number`
|
66169
|
+
--------------------------------------------------------------------------
|
66170
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66171
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66172
|
+
---------------------------------------------------------
|
66173
|
+
ForestLiana::SchemaAdapterTest: test_hasMany_relationship
|
66174
|
+
---------------------------------------------------------
|
66175
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66176
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66177
|
+
-----------------------------------------------------------
|
66178
|
+
ForestLiana::SchemaAdapterTest: test_belongsTo_relationship
|
66179
|
+
-----------------------------------------------------------
|
66180
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66181
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66182
|
+
--------------------------------------------------------
|
66183
|
+
ForestLiana::SchemaAdapterTest: test_hasOne_relationship
|
66184
|
+
--------------------------------------------------------
|
66185
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66186
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66187
|
+
------------------------------------------------------------------------------------
|
66188
|
+
ForestLiana::SchemaAdapterTest: test_belongsTo_relationhip_with_specified_class_name
|
66189
|
+
------------------------------------------------------------------------------------
|
66190
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66191
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66192
|
+
--------------------------------------------------------------------------
|
66193
|
+
ForestLiana::SchemaAdapterTest: test_Integer_should_have_the_type_`Number`
|
66194
|
+
--------------------------------------------------------------------------
|
66195
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66196
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66197
|
+
-------------------------------------------------------------------------
|
66198
|
+
ForestLiana::SchemaAdapterTest: test_String_should_have_the_type_`String`
|
66199
|
+
-------------------------------------------------------------------------
|
66200
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66201
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66202
|
+
------------------------------------------------------------------------
|
66203
|
+
ForestLiana::SchemaAdapterTest: test_Float_should_have_the_type_`Number`
|
66204
|
+
------------------------------------------------------------------------
|
66205
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66206
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66207
|
+
----------------------------------------------------------------------------------
|
66208
|
+
ForestLiana::SchemaAdapterTest: test_hasMany_relationhip_with_specified_class_name
|
66209
|
+
----------------------------------------------------------------------------------
|
66210
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66211
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66212
|
+
---------------------------------------------------------------------
|
66213
|
+
ForestLiana::SchemaAdapterTest: test_Date_should_have_the_type_`Date`
|
66214
|
+
---------------------------------------------------------------------
|
66215
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66216
|
+
[1m[36m (3.0ms)[0m [1mbegin transaction[0m
|
66217
|
+
---------------------------------------------------------------------------
|
66218
|
+
ForestLiana::SchemaAdapterTest: test_Boolean_should_have_the_type_`Boolean`
|
66219
|
+
---------------------------------------------------------------------------
|
66220
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66221
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
66222
|
+
-------------------------------------------------------------------------
|
66223
|
+
ForestLiana::SchemaAdapterTest: test_DateTime_should_have_the_type_`Date`
|
66224
|
+
-------------------------------------------------------------------------
|
66225
|
+
[1m[35m (0.0ms)[0m rollback transaction
|
66226
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66227
|
+
------------------------------------------------------------------
|
66228
|
+
ForestLiana::HasManyGetterTest: test_HasMany_Getter_page_1_size_15
|
66229
|
+
------------------------------------------------------------------
|
66230
|
+
[1m[35mOwner Load (0.1ms)[0m SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 1]]
|
66231
|
+
[1m[36m (0.2ms)[0m [1mSELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ?[0m [["owner_id", 1]]
|
66232
|
+
[1m[35m (0.2ms)[0m SELECT COUNT(DISTINCT count_column) FROM (SELECT "trees"."id" AS count_column FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? LIMIT 15 OFFSET 0) subquery_for_count [["owner_id", 1]]
|
66233
|
+
[1m[36mSQL (0.1ms)[0m [1mSELECT "trees"."id" AS t0_r0, "trees"."name" AS t0_r1, "trees"."owner_id" AS t0_r2, "trees"."created_at" AS t0_r3, "trees"."updated_at" AS t0_r4, "owners"."id" AS t1_r0, "owners"."name" AS t1_r1, "owners"."created_at" AS t1_r2, "owners"."updated_at" AS t1_r3 FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? ORDER BY "trees"."id" ASC LIMIT 1 OFFSET 0[0m [["owner_id", 1]]
|
66234
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66235
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66236
|
+
-------------------------------------------------------------------------
|
66237
|
+
ForestLiana::HasManyGetterTest: test_HasMany_Getter_with_search_parameter
|
66238
|
+
-------------------------------------------------------------------------
|
66239
|
+
[1m[35mOwner Load (0.2ms)[0m SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 1]]
|
66240
|
+
[1m[36m (0.3ms)[0m [1mSELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? AND (LOWER("trees"."name") LIKE '%fir%')[0m [["owner_id", 1]]
|
66241
|
+
[1m[35m (0.2ms)[0m SELECT COUNT(DISTINCT count_column) FROM (SELECT "trees"."id" AS count_column FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? AND (LOWER("trees"."name") LIKE '%fir%') LIMIT 15 OFFSET 0) subquery_for_count [["owner_id", 1]]
|
66242
|
+
[1m[36mSQL (0.2ms)[0m [1mSELECT "trees"."id" AS t0_r0, "trees"."name" AS t0_r1, "trees"."owner_id" AS t0_r2, "trees"."created_at" AS t0_r3, "trees"."updated_at" AS t0_r4, "owners"."id" AS t1_r0, "owners"."name" AS t1_r1, "owners"."created_at" AS t1_r2, "owners"."updated_at" AS t1_r3 FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? AND (LOWER("trees"."name") LIKE '%fir%') ORDER BY "trees"."id" ASC LIMIT 1 OFFSET 0[0m [["owner_id", 1]]
|
66243
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66244
|
+
[1m[36m (0.0ms)[0m [1mbegin transaction[0m
|
66245
|
+
-----------------------------------------------------------------------
|
66246
|
+
ForestLiana::HasManyGetterTest: test_HasMany_Getter_with_sort_parameter
|
66247
|
+
-----------------------------------------------------------------------
|
66248
|
+
[1m[35mOwner Load (0.1ms)[0m SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 1]]
|
66249
|
+
[1m[36m (0.1ms)[0m [1mSELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ?[0m [["owner_id", 1]]
|
66250
|
+
[1m[35m (0.1ms)[0m SELECT COUNT(DISTINCT count_column) FROM (SELECT "trees"."id" AS count_column FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? LIMIT 15 OFFSET 0) subquery_for_count [["owner_id", 1]]
|
66251
|
+
[1m[36mSQL (0.2ms)[0m [1mSELECT "trees"."id" AS t0_r0, "trees"."name" AS t0_r1, "trees"."owner_id" AS t0_r2, "trees"."created_at" AS t0_r3, "trees"."updated_at" AS t0_r4, "owners"."id" AS t1_r0, "owners"."name" AS t1_r1, "owners"."created_at" AS t1_r2, "owners"."updated_at" AS t1_r3 FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? ORDER BY trees.id DESC LIMIT 1 OFFSET 0[0m [["owner_id", 1]]
|
66252
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
66253
|
+
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
|
66254
|
+
------------------------------------------------------------------------------------------------------
|
66255
|
+
ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_missing_value
|
66256
|
+
------------------------------------------------------------------------------------------------------
|
66257
|
+
[1m[35mSerializeField Load (0.4ms)[0m SELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1 [["id", 1]]
|
66258
|
+
[1m[36m (0.1ms)[0m [1mSAVEPOINT active_record_1[0m
|
66259
|
+
[1m[35m (0.1ms)[0m RELEASE SAVEPOINT active_record_1
|
66260
|
+
[1m[36m (0.1ms)[0m [1mrollback transaction[0m
|
66261
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66262
|
+
---------------------------------------------------------------------------------------------------
|
66263
|
+
ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_null_value
|
66264
|
+
---------------------------------------------------------------------------------------------------
|
66265
|
+
[1m[36mSerializeField Load (0.1ms)[0m [1mSELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1[0m [["id", 1]]
|
66266
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
66267
|
+
[1m[36mSQL (0.4ms)[0m [1mUPDATE "serialize_fields" SET "field" = ? WHERE "serialize_fields"."id" = ?[0m [["field", nil], ["id", 1]]
|
66268
|
+
[1m[35m (0.1ms)[0m RELEASE SAVEPOINT active_record_1
|
66269
|
+
[1m[36m (0.7ms)[0m [1mrollback transaction[0m
|
66270
|
+
[1m[35m (0.0ms)[0m begin transaction
|
66271
|
+
------------------------------------------------------------------------------------------------------------
|
66272
|
+
ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_well_formated_value
|
66273
|
+
------------------------------------------------------------------------------------------------------------
|
66274
|
+
[1m[36mSerializeField Load (0.1ms)[0m [1mSELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1[0m [["id", 1]]
|
66275
|
+
[1m[35m (0.0ms)[0m SAVEPOINT active_record_1
|
66276
|
+
[1m[36mSQL (0.7ms)[0m [1mUPDATE "serialize_fields" SET "field" = ? WHERE "serialize_fields"."id" = ?[0m [["field", "---\n- test\n- test\n"], ["id", 1]]
|
66277
|
+
[1m[35m (0.1ms)[0m RELEASE SAVEPOINT active_record_1
|
66278
|
+
[1m[36m (7.2ms)[0m [1mrollback transaction[0m
|
66279
|
+
[1m[35m (0.1ms)[0m begin transaction
|
66280
|
+
---------------------------------------------------------------------------------------------------------
|
66281
|
+
ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_bad_format_value
|
66282
|
+
---------------------------------------------------------------------------------------------------------
|
66283
|
+
[1m[36mSerializeField Load (0.1ms)[0m [1mSELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1[0m [["id", 1]]
|
66284
|
+
[1m[35m (0.1ms)[0m rollback transaction
|
@@ -210,5 +210,35 @@ module ForestLiana
|
|
210
210
|
assert records.count == 0
|
211
211
|
assert count = 0
|
212
212
|
end
|
213
|
+
|
214
|
+
test 'Filter on a field of an associated collection that does not exist' do
|
215
|
+
exception = assert_raises(ForestLiana::Errors::HTTP422Error) {
|
216
|
+
getter = ForestLiana::ResourcesGetter.new(Tree, {
|
217
|
+
fields: { 'Tree' => 'id'},
|
218
|
+
filterType: 'and',
|
219
|
+
searchExtended: '0',
|
220
|
+
timezone: 'Europe/Paris',
|
221
|
+
filter: { 'leaf:id' => '1' },
|
222
|
+
collection: 'Tree'
|
223
|
+
})
|
224
|
+
}
|
225
|
+
assert_equal("Association 'leaf' not found", exception.message)
|
226
|
+
end
|
227
|
+
|
228
|
+
test 'Filter on a field that does not exists' do
|
229
|
+
exception = assert_raises(ForestLiana::Errors::HTTP422Error) {
|
230
|
+
getter = ForestLiana::ResourcesGetter.new(Tree, {
|
231
|
+
fields: { 'Tree' => 'id'},
|
232
|
+
filterType: 'and',
|
233
|
+
searchExtended: '0',
|
234
|
+
timezone: 'Europe/Paris',
|
235
|
+
filter: { 'content' => '*c*' },
|
236
|
+
collection: 'Article'
|
237
|
+
})
|
238
|
+
}
|
239
|
+
|
240
|
+
assert_equal("Field 'content' not found", exception.message)
|
241
|
+
end
|
242
|
+
|
213
243
|
end
|
214
244
|
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: 2.14.
|
4
|
+
version: 2.14.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sandro Munda
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-10-
|
11
|
+
date: 2018-10-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|