forest_liana 2.14.7 → 2.15.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2326b497ded06f0e2dd39273009974e70ed507d1
4
- data.tar.gz: 8f274a31724536f98568262bd6a594ed10bc8034
3
+ metadata.gz: 59e796ce07d5f7cf5d236297e5a1d26c1b4e61a7
4
+ data.tar.gz: 6400747da9d29cf2c57f974adfffb13de3b67212
5
5
  SHA512:
6
- metadata.gz: 4f358bca88eb6daeb47cfddeed51f8141218095fe3138c8d7b2805a2ba8a23e388fec09e4c4c0666ef7b36f3950e7b5a761e5fa1d352a0ce6c82bfdef818fb95
7
- data.tar.gz: b0e7e1c90666c774e545baf2ce32a1fd7ab499f1a63605d21d8744538dbeaa4a8a2ca5683573247960bc39ecd3fd571410371a689781fcc5053f8842f0ddb654
6
+ metadata.gz: d26d075f6a1b202c3e5ef0195f61e223facc232e0d8e1eee908659591a7e53dde268973f14ab20b7abf77992a1a8115f2ee795008663057473067fae9680bc58
7
+ data.tar.gz: 2407895f42b1715cf3268978220bbde83df807ac4c3fb0133aa6a897454b5e50dd5eee814057fb0e5b3c06598ddbe8afca734b5ec398fcf1fed3d6185732d660
@@ -6,14 +6,24 @@ module ForestLiana
6
6
  before_action :find_resource, except: [:get_with_live_query]
7
7
  end
8
8
 
9
+ CHART_TYPE_VALUE = 'Value';
10
+ CHART_TYPE_PIE = 'Pie';
11
+ CHART_TYPE_LINE = 'Line';
12
+ CHART_TYPE_LEADERBOARD = 'Leaderboard';
13
+ CHART_TYPE_OBJECTIVE = 'Objective';
14
+
9
15
  def get
10
- case params[:type].try(:downcase)
11
- when 'value'
16
+ case params[:type]
17
+ when CHART_TYPE_VALUE
12
18
  stat = ValueStatGetter.new(@resource, params)
13
- when 'pie'
19
+ when CHART_TYPE_PIE
14
20
  stat = PieStatGetter.new(@resource, params)
15
- when 'line'
21
+ when CHART_TYPE_LINE
16
22
  stat = LineStatGetter.new(@resource, params)
23
+ when CHART_TYPE_OBJECTIVE
24
+ stat = ObjectiveStatGetter.new(@resource, params)
25
+ when CHART_TYPE_LEADERBOARD
26
+ stat = LeaderboardStatGetter.new(@resource, params)
17
27
  end
18
28
 
19
29
  stat.perform
@@ -0,0 +1,45 @@
1
+ module ForestLiana
2
+ class LeaderboardStatGetter < StatGetter
3
+ def initialize(resource, params)
4
+ super(resource, params)
5
+
6
+ @model_relationship = @resource.reflect_on_association(@params[:relationship_field]).klass
7
+ @label_field = @params[:label_field]
8
+ @aggregate = @params[:aggregate].downcase
9
+ @aggregate_field = @params[:aggregate_field]
10
+ @limit = @params[:limit]
11
+ @groub_by = "#{@resource.table_name}.#{@label_field}"
12
+ end
13
+
14
+ def perform
15
+ result = @model_relationship
16
+ .joins(includes)
17
+ .group(@groub_by)
18
+ .order(order)
19
+ .limit(@limit)
20
+ .send(@aggregate, @aggregate_field)
21
+ .map { |key, value| { key: key, value: value } }
22
+
23
+ @record = Model::Stat.new(value: result)
24
+ end
25
+
26
+ def includes
27
+ SchemaUtils.one_associations(@model_relationship)
28
+ .select { |association| SchemaUtils.model_included?(association.klass) }
29
+ .map(&:name)
30
+ end
31
+
32
+ def order
33
+ order = 'DESC'
34
+
35
+ # NOTICE: The generated alias for a count is "count_all", for a sum the
36
+ # alias looks like "sum_#{aggregate_field}"
37
+ if @aggregate == 'sum'
38
+ field = @aggregate_field.downcase
39
+ else
40
+ field = 'all'
41
+ end
42
+ "#{@aggregate}_#{field} #{order}"
43
+ end
44
+ end
45
+ end
@@ -2,10 +2,6 @@ module ForestLiana
2
2
  class LineStatGetter < StatGetter
3
3
  attr_accessor :record
4
4
 
5
- def initialize(resource, params)
6
- super(resource, params)
7
- end
8
-
9
5
  def client_timezone
10
6
  @params[:timezone]
11
7
  end
@@ -0,0 +1,10 @@
1
+ module ForestLiana
2
+ class ObjectiveStatGetter < ValueStatGetter
3
+ attr_accessor :objective
4
+
5
+ def perform
6
+ super
7
+ @record.value = { value: @record.value[:countCurrent] }
8
+ end
9
+ end
10
+ end
@@ -2,6 +2,12 @@ module ForestLiana
2
2
  class QueryStatGetter
3
3
  attr_accessor :record
4
4
 
5
+ CHART_TYPE_VALUE = 'Value';
6
+ CHART_TYPE_PIE = 'Pie';
7
+ CHART_TYPE_LINE = 'Line';
8
+ CHART_TYPE_LEADERBOARD = 'Leaderboard';
9
+ CHART_TYPE_OBJECTIVE = 'Objective';
10
+
5
11
  def initialize(params)
6
12
  @params = params
7
13
  end
@@ -18,7 +24,7 @@ module ForestLiana
18
24
  result = ActiveRecord::Base.connection.execute(raw_query)
19
25
 
20
26
  case @params['type']
21
- when 'Value'
27
+ when CHART_TYPE_VALUE
22
28
  if result.count
23
29
  result_line = ForestLiana::AdapterHelper.format_live_query_value_result(result)
24
30
  if result_line
@@ -34,7 +40,7 @@ module ForestLiana
34
40
  @record = Model::Stat.new(value: { countCurrent: 0, countPrevious: 0 })
35
41
  end
36
42
  end
37
- when 'Pie'
43
+ when CHART_TYPE_PIE, CHART_TYPE_LEADERBOARD
38
44
  if result.count
39
45
  values = ForestLiana::AdapterHelper.format_live_query_pie_result(result)
40
46
 
@@ -46,7 +52,7 @@ module ForestLiana
46
52
 
47
53
  @record = Model::Stat.new(value: values)
48
54
  end
49
- when 'Line'
55
+ when CHART_TYPE_LINE
50
56
  if result.count
51
57
  values = ForestLiana::AdapterHelper.format_live_query_line_result(result)
52
58
 
@@ -62,6 +68,22 @@ module ForestLiana
62
68
 
63
69
  @record = Model::Stat.new(value: result_formatted)
64
70
  end
71
+ when CHART_TYPE_OBJECTIVE
72
+ if result.count
73
+ result_line = ForestLiana::AdapterHelper.format_live_query_value_result(result)
74
+ if result_line
75
+ if !result_line.key?('value') || !result_line.key?('objective')
76
+ raise error_message(result_line, "'value', 'objective'")
77
+ else
78
+ @record = Model::Stat.new(value: {
79
+ value: result_line['value'],
80
+ objective: result_line['objective']
81
+ })
82
+ end
83
+ else
84
+ @record = Model::Stat.new(value: { value: 0, objective: 0 })
85
+ end
86
+ end
65
87
  end
66
88
  end
67
89
 
@@ -111,6 +111,7 @@ module ForestLiana
111
111
  collection.fields << {
112
112
  field: :intercom_conversations,
113
113
  type: ['String'],
114
+ relationship: 'HasMany',
114
115
  reference: "#{model_name}_intercom_conversations.id",
115
116
  column: nil,
116
117
  'is-filterable': false,
@@ -120,6 +121,7 @@ module ForestLiana
120
121
  @collection.fields << {
121
122
  field: :intercom_attributes,
122
123
  type: 'String',
124
+ relationship: 'HasOne',
123
125
  reference: "#{model_name}_intercom_attributes.id",
124
126
  column: nil,
125
127
  'is-filterable': false,
@@ -141,6 +143,7 @@ module ForestLiana
141
143
  collection.fields << {
142
144
  field: :stripe_payments,
143
145
  type: ['String'],
146
+ relationship: 'HasMany',
144
147
  reference: "#{model_name}_stripe_payments.id",
145
148
  column: nil,
146
149
  'is-filterable': false,
@@ -150,6 +153,7 @@ module ForestLiana
150
153
  collection.fields << {
151
154
  field: :stripe_invoices,
152
155
  type: ['String'],
156
+ relationship: 'HasMany',
153
157
  reference: "#{model_name}_stripe_invoices.id",
154
158
  column: nil,
155
159
  'is-filterable': false,
@@ -159,6 +163,7 @@ module ForestLiana
159
163
  collection.fields << {
160
164
  field: :stripe_cards,
161
165
  type: ['String'],
166
+ relationship: 'HasMany',
162
167
  reference: "#{model_name}_stripe_cards.id",
163
168
  column: nil,
164
169
  'is-filterable': false,
@@ -168,6 +173,7 @@ module ForestLiana
168
173
  collection.fields << {
169
174
  field: :stripe_subscriptions,
170
175
  type: ['String'],
176
+ relationship: 'HasMany',
171
177
  reference: "#{model_name}_stripe_subscriptions.id",
172
178
  column: nil,
173
179
  'is-filterable': false,
@@ -177,6 +183,7 @@ module ForestLiana
177
183
  collection.fields << {
178
184
  field: :stripe_bank_accounts,
179
185
  type: ['String'],
186
+ relationship: 'HasMany',
180
187
  reference: "#{model_name}_stripe_bank_accounts.id",
181
188
  column: nil,
182
189
  'is-filterable': false,
@@ -199,6 +206,7 @@ module ForestLiana
199
206
  collection.fields << {
200
207
  field: :mixpanel_last_events,
201
208
  type: ['String'],
209
+ relationship: 'HasMany',
202
210
  reference: "#{model_name}_mixpanel_events.id",
203
211
  column: nil,
204
212
  'is-filterable': false,
@@ -244,6 +252,7 @@ module ForestLiana
244
252
  field[:reference] = get_reference_for(association)
245
253
  field[:field] = association.name
246
254
  field[:inverseOf] = inverse_of(association)
255
+ field[:relationship] = get_relationship_type(association)
247
256
  # NOTICE: Create the fields of hasOne, HasMany, … relationships.
248
257
  else
249
258
  collection.fields << get_schema_for_association(association)
@@ -285,12 +294,17 @@ module ForestLiana
285
294
  {
286
295
  field: association.name.to_s,
287
296
  type: get_type_for_association(association),
297
+ relationship: get_relationship_type(association),
288
298
  reference: "#{ForestLiana.name_for(association.klass)}.id",
289
299
  inverseOf: inverse_of(association),
290
300
  'is-filterable': !is_many_association(association)
291
301
  }
292
302
  end
293
303
 
304
+ def get_relationship_type(association)
305
+ association.macro.to_s.camelize
306
+ end
307
+
294
308
  def get_type_for(column)
295
309
  # NOTICE: Rails 3 do not have a defined_enums method
296
310
  if @model.respond_to?(:defined_enums) &&
@@ -378,6 +378,7 @@ module ForestLiana
378
378
  {
379
379
  field: :customer,
380
380
  type: 'String',
381
+ relationship: 'BelongsTo',
381
382
  reference: "#{model_name}.id",
382
383
  'is-filterable': false
383
384
  }
@@ -420,6 +421,7 @@ module ForestLiana
420
421
  {
421
422
  field: :customer,
422
423
  type: 'String',
424
+ relationship: 'BelongsTo',
423
425
  reference: "#{model_name}.id",
424
426
  'is-filterable': false
425
427
  }
@@ -456,6 +458,7 @@ module ForestLiana
456
458
  {
457
459
  field: :customer,
458
460
  type: 'String',
461
+ relationship: 'BelongsTo',
459
462
  reference: "#{model_name}.id",
460
463
  'is-filterable': false
461
464
  }
@@ -490,6 +493,7 @@ module ForestLiana
490
493
  {
491
494
  field: :customer,
492
495
  type: 'String',
496
+ relationship: 'BelongsTo',
493
497
  reference: "#{model_name}.id",
494
498
  'is-filterable': false
495
499
  }
@@ -523,6 +527,7 @@ module ForestLiana
523
527
  {
524
528
  field: :customer,
525
529
  type: 'String',
530
+ relationship: 'BelongsTo',
526
531
  reference: "#{model_name}.id",
527
532
  'is-filterable': false
528
533
  }
@@ -1,3 +1,3 @@
1
1
  module ForestLiana
2
- VERSION = "2.14.7"
2
+ VERSION = "2.15.0"
3
3
  end
Binary file
@@ -118776,3 +118776,815 @@ ForestLiana::PieStatGetterTest: test_Pie_stat_getter_with_an_aggregate_on_a_fore
118776
118776
  ---------------------------------------------------------------------------------------
118777
118777
   (0.5ms) 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
118778
118778
   (0.0ms) rollback transaction
118779
+ ActiveRecord::SchemaMigration Load (0.5ms) SELECT "schema_migrations".* FROM "schema_migrations"
118780
+  (0.3ms) begin transaction
118781
+ Fixture Delete (2.4ms) DELETE FROM "has_many_through_fields"
118782
+ Fixture Insert (2.2ms) INSERT INTO "has_many_through_fields" ("id") VALUES (1)
118783
+ Fixture Insert (0.2ms) INSERT INTO "has_many_through_fields" ("id") VALUES (2)
118784
+ Fixture Insert (0.1ms) INSERT INTO "has_many_through_fields" ("id") VALUES (3)
118785
+ Fixture Insert (0.1ms) INSERT INTO "has_many_through_fields" ("id") VALUES (4)
118786
+ Fixture Insert (0.0ms) INSERT INTO "has_many_through_fields" ("id") VALUES (5)
118787
+ Fixture Insert (0.0ms) INSERT INTO "has_many_through_fields" ("id") VALUES (6)
118788
+ Fixture Insert (0.0ms) INSERT INTO "has_many_through_fields" ("id") VALUES (7)
118789
+ Fixture Insert (0.0ms) INSERT INTO "has_many_through_fields" ("id") VALUES (8)
118790
+ Fixture Insert (0.0ms) INSERT INTO "has_many_through_fields" ("id") VALUES (9)
118791
+ Fixture Insert (0.0ms) INSERT INTO "has_many_through_fields" ("id") VALUES (10)
118792
+ Fixture Delete (0.5ms) DELETE FROM "string_fields"
118793
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (1, 'Test 1')
118794
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (2, 'Test 2')
118795
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (3, 'Test 3')
118796
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (4, 'Test 4')
118797
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (5, 'Test 5')
118798
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (6, 'Test 6')
118799
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (7, 'Test 7')
118800
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (8, 'Test 8')
118801
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (9, 'Test 9')
118802
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (10, 'Test 10')
118803
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (11, 'Test 11')
118804
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (12, 'Test 12')
118805
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (13, 'Test 13')
118806
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (14, 'Test 14')
118807
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (15, 'Test 15')
118808
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (16, 'Test 16')
118809
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (17, 'Test 17')
118810
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (18, 'Test 18')
118811
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (19, 'Test 19')
118812
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (20, 'Test 20')
118813
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (21, 'Test 21')
118814
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (22, 'Test 22')
118815
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (23, 'Test 23')
118816
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (24, 'Test 24')
118817
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (25, 'Test 25')
118818
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (26, 'Test 26')
118819
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (27, 'Test 27')
118820
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (28, 'Test 28')
118821
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (29, 'Test 29')
118822
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (30, 'Test 30')
118823
+ Fixture Delete (1.2ms) DELETE FROM "belongs_to_fields"
118824
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (1, 1, 1)
118825
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (2, 2, 1)
118826
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (3, 3, 1)
118827
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (4, 4, 2)
118828
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (5, 5, 2)
118829
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (6, 6, 2)
118830
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (7, 7, 3)
118831
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (8, 8, 3)
118832
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (9, 9, 3)
118833
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (10, 10, 4)
118834
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (11, 11, 4)
118835
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (12, 12, 4)
118836
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (13, 13, 5)
118837
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (14, 14, 5)
118838
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (15, 15, 5)
118839
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (16, 16, 6)
118840
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (17, 17, 6)
118841
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (18, 18, 6)
118842
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (19, 19, 7)
118843
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (20, 20, 7)
118844
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (21, 21, 7)
118845
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (22, 22, 7)
118846
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (23, 23, 8)
118847
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (24, 24, 8)
118848
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (25, 25, 9)
118849
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (26, 26, 9)
118850
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (27, 27, 9)
118851
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (28, 28, 10)
118852
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (29, 29, 10)
118853
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (30, 30, 10)
118854
+ Fixture Delete (6.6ms) DELETE FROM "trees"
118855
+ Fixture Insert (0.1ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (1, 'Oak', 1, '2012-02-11 11:00:00.000000', '2012-02-11 11:00:00.000000')
118856
+ Fixture Insert (0.1ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (2, 'Mapple', 2, '2012-02-15 21:00:00.000000', '2012-02-15 21:00:00.000000')
118857
+ Fixture Insert (0.0ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (3, 'Mapple', 2, '2014-04-11 12:00:00.000000', '2014-04-11 12:00:00.000000')
118858
+ Fixture Insert (0.0ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (4, 'Oak', 2, '2017-06-18 09:00:00.000000', '2017-06-18 09:00:00.000000')
118859
+ Fixture Insert (0.0ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (5, 'Oak', 3, '2016-06-18 09:00:00.000000', '2016-06-18 09:00:00.000000')
118860
+ Fixture Insert (0.0ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (6, 'Oak', 3, '2019-02-01 17:01:37.000000', '2019-02-01 17:01:37.000000')
118861
+ Fixture Insert (0.0ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (7, 'Sequoia', 1, '2019-02-01 17:01:37.000000', '2019-02-01 17:01:37.000000')
118862
+ Fixture Insert (0.0ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (8, 'Fir', 1, '2019-02-01 17:01:37.000000', '2019-02-01 17:01:37.000000')
118863
+ Fixture Delete (0.4ms) DELETE FROM "has_one_fields"
118864
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (1, 't', 0)
118865
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (2, 't', 0)
118866
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (3, 't', 0)
118867
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (4, 't', 0)
118868
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (5, 't', 0)
118869
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (6, 't', 0)
118870
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (7, 't', 0)
118871
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (8, 't', 0)
118872
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (9, 't', 0)
118873
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (10, 't', 0)
118874
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (11, 't', 0)
118875
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (12, 't', 0)
118876
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (13, 't', 0)
118877
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (14, 't', 0)
118878
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (15, 't', 0)
118879
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (16, 't', 0)
118880
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (17, 't', 0)
118881
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (18, 't', 0)
118882
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (19, 't', 0)
118883
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (20, 't', 0)
118884
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (21, 't', 0)
118885
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (22, 't', 0)
118886
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (23, 't', 0)
118887
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (24, 't', 0)
118888
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (25, 't', 0)
118889
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (26, 't', 0)
118890
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (27, 't', 0)
118891
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (28, 't', 0)
118892
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (29, 't', 0)
118893
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (30, 't', 1)
118894
+ Fixture Delete (0.5ms) DELETE FROM "references"
118895
+ Fixture Insert (0.1ms) INSERT INTO "references" ("id") VALUES (1)
118896
+ Fixture Delete (0.4ms) DELETE FROM "owners"
118897
+ Fixture Insert (0.1ms) INSERT INTO "owners" ("id", "name", "created_at", "updated_at") VALUES (1, 'Sandro Munda', '2018-05-30 09:00:00.000000', '2019-06-27 20:00:00.000000')
118898
+ Fixture Insert (0.2ms) INSERT INTO "owners" ("id", "name", "created_at", "updated_at") VALUES (2, 'Arnaud Besnier', '2019-05-02 09:00:00.000000', '2019-06-28 08:00:00.000000')
118899
+ Fixture Insert (0.1ms) INSERT INTO "owners" ("id", "name", "created_at", "updated_at") VALUES (3, 'John Doe', '2017-05-02 09:00:00.000000', '2018-06-28 08:00:00.000000')
118900
+ Fixture Delete (1.0ms) DELETE FROM "has_many_fields"
118901
+ Fixture Insert (0.1ms) INSERT INTO "has_many_fields" ("id") VALUES (1)
118902
+ Fixture Insert (0.1ms) INSERT INTO "has_many_fields" ("id") VALUES (2)
118903
+ Fixture Insert (0.1ms) INSERT INTO "has_many_fields" ("id") VALUES (3)
118904
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id") VALUES (4)
118905
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id", "has_many_through_field_id") VALUES (5, 3)
118906
+ Fixture Insert (0.1ms) INSERT INTO "has_many_fields" ("id", "has_many_through_field_id") VALUES (6, 2)
118907
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id") VALUES (7)
118908
+ Fixture Insert (0.1ms) INSERT INTO "has_many_fields" ("id", "has_many_through_field_id") VALUES (8, 2)
118909
+ Fixture Insert (0.1ms) INSERT INTO "has_many_fields" ("id") VALUES (9)
118910
+ Fixture Insert (0.1ms) INSERT INTO "has_many_fields" ("id") VALUES (10)
118911
+ Fixture Delete (0.2ms) DELETE FROM "serialize_fields"
118912
+ Fixture Insert (0.1ms) INSERT INTO "serialize_fields" ("id", "field") VALUES (1, 'value 1')
118913
+ Fixture Insert (0.1ms) INSERT INTO "serialize_fields" ("id", "field") VALUES (2, 'value 2')
118914
+ Fixture Insert (0.0ms) INSERT INTO "serialize_fields" ("id", "field") VALUES (3, 'value 3')
118915
+ Fixture Insert (0.0ms) INSERT INTO "serialize_fields" ("id", "field") VALUES (4, 'value 4')
118916
+ Fixture Insert (0.0ms) INSERT INTO "serialize_fields" ("id", "field") VALUES (5, 'value 5')
118917
+  (3.0ms) commit transaction
118918
+  (0.2ms) begin transaction
118919
+ -----------------------------------------------------------------
118920
+ ForestLiana::ResourcesGetterTest: test_StringField_page_1_size_15
118921
+ -----------------------------------------------------------------
118922
+ SQL (0.2ms) SELECT "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
118923
+  (0.1ms) SELECT COUNT(*) FROM "string_fields"
118924
+  (0.1ms) rollback transaction
118925
+  (0.0ms) begin transaction
118926
+ --------------------------------------------------------------------
118927
+ ForestLiana::ResourcesGetterTest: test_Sort_by_a_has_one_association
118928
+ --------------------------------------------------------------------
118929
+ SQL (0.9ms) SELECT "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
118930
+  (0.1ms) 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"
118931
+  (0.1ms) rollback transaction
118932
+  (0.1ms) begin transaction
118933
+ -----------------------------------------------------------------------------
118934
+ ForestLiana::ResourcesGetterTest: test_Filter_on_a_field_that_does_not_exists
118935
+ -----------------------------------------------------------------------------
118936
+  (0.1ms) rollback transaction
118937
+  (0.2ms) begin transaction
118938
+ ------------------------------------------------------------------------------------------------------
118939
+ ForestLiana::ResourcesGetterTest: test_Filter_equal_on_an_updated_at_field_of_an_associated_collection
118940
+ ------------------------------------------------------------------------------------------------------
118941
+ SQL (0.3ms) 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 (owners.updated_at = 'Sat Jul 02 2016 11:52:00 GMT-0400 (EDT)') ORDER BY "trees"."created_at" DESC LIMIT 10 OFFSET 0
118942
+  (0.1ms) 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)')
118943
+  (0.0ms) rollback transaction
118944
+  (0.0ms) begin transaction
118945
+ -------------------------------------------------------------------------------------------
118946
+ ForestLiana::ResourcesGetterTest: test_Filter_on_an_updated_at_field_of_the_main_collection
118947
+ -------------------------------------------------------------------------------------------
118948
+ SQL (0.2ms) SELECT "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 '2018-01-01 09:00:00 UTC' AND '2019-01-01 08:59:59 UTC') ORDER BY "owners"."created_at" DESC LIMIT 10 OFFSET 0
118949
+  (0.1ms) SELECT COUNT(*) FROM "owners" WHERE ("owners"."updated_at" BETWEEN '2018-01-01 09:00:00 UTC' AND '2019-01-01 08:59:59 UTC')
118950
+  (0.1ms) rollback transaction
118951
+  (0.1ms) begin transaction
118952
+ ------------------------------------------------------------------------
118953
+ ForestLiana::ResourcesGetterTest: test_on_a_model_having_a_reserved_name
118954
+ ------------------------------------------------------------------------
118955
+ SQL (0.1ms) SELECT "references"."id" AS t0_r0 FROM "references" ORDER BY "references"."id" DESC LIMIT 10 OFFSET 0
118956
+  (0.1ms) SELECT COUNT(*) FROM "references"
118957
+  (0.1ms) rollback transaction
118958
+  (0.0ms) begin transaction
118959
+ ----------------------------------------------------------------
118960
+ ForestLiana::ResourcesGetterTest: test_Filter_on_ambiguous_field
118961
+ ----------------------------------------------------------------
118962
+ SQL (0.7ms) 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
118963
+  (0.1ms) SELECT 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')
118964
+  (0.0ms) rollback transaction
118965
+  (0.0ms) begin transaction
118966
+ ------------------------------------------------------------------------------------------------
118967
+ ForestLiana::ResourcesGetterTest: test_Filter_on_an_updated_at_field_of_an_associated_collection
118968
+ ------------------------------------------------------------------------------------------------
118969
+ SQL (0.2ms) 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 (owners.updated_at BETWEEN '2018-01-01 09:00:00 UTC' AND '2019-01-01 08:59:59 UTC') ORDER BY "trees"."created_at" DESC LIMIT 10 OFFSET 0
118970
+  (0.1ms) SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE (owners.updated_at BETWEEN '2018-01-01 09:00:00 UTC' AND '2019-01-01 08:59:59 UTC')
118971
+  (0.0ms) rollback transaction
118972
+  (0.0ms) begin transaction
118973
+ -----------------------------------------------------------------------
118974
+ ForestLiana::ResourcesGetterTest: test_Sort_by_a_belongs_to_association
118975
+ -----------------------------------------------------------------------
118976
+ SQL (0.2ms) SELECT "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
118977
+  (0.1ms) 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"
118978
+  (0.0ms) rollback transaction
118979
+  (0.0ms) begin transaction
118980
+ --------------------------------------------------------------------------------------------------------
118981
+ ForestLiana::ResourcesGetterTest: test_Filter_on_a_field_of_an_associated_collection_that_does_not_exist
118982
+ --------------------------------------------------------------------------------------------------------
118983
+  (0.0ms) rollback transaction
118984
+  (0.1ms) begin transaction
118985
+ ----------------------------------------------------------------
118986
+ ForestLiana::ResourcesGetterTest: test_StringField_sort_by_field
118987
+ ----------------------------------------------------------------
118988
+ SQL (0.1ms) SELECT "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
118989
+  (0.0ms) SELECT COUNT(*) FROM "string_fields"
118990
+  (0.0ms) rollback transaction
118991
+  (0.0ms) begin transaction
118992
+ ------------------------------------------------------------
118993
+ ForestLiana::ResourcesGetterTest: test_Filter_before_x_hours
118994
+ ------------------------------------------------------------
118995
+ SQL (0.1ms) 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" < '2019-02-01 17:00:38 UTC') ORDER BY "trees"."created_at" DESC LIMIT 10 OFFSET 0
118996
+  (0.0ms) SELECT COUNT(*) FROM "trees" WHERE ("trees"."created_at" < '2019-02-01 17:00:38 UTC')
118997
+ Owner Load (0.2ms) SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 2]]
118998
+  (0.1ms) rollback transaction
118999
+  (0.1ms) begin transaction
119000
+ -----------------------------------------------------------------
119001
+ ForestLiana::ResourcesGetterTest: test_StringField_page_2_size_10
119002
+ -----------------------------------------------------------------
119003
+ SQL (0.2ms) SELECT "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
119004
+  (0.0ms) SELECT COUNT(*) FROM "string_fields"
119005
+  (0.0ms) rollback transaction
119006
+  (0.0ms) begin transaction
119007
+ ------------------------------------------------------------------------------------
119008
+ ForestLiana::ResourcesGetterTest: test_Sort_on_an_ambiguous_field_name_with_a_filter
119009
+ ------------------------------------------------------------------------------------
119010
+ SQL (0.5ms) 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 (owners.name = 'Arnaud Besnier') ORDER BY "trees"."name" DESC LIMIT 10 OFFSET 0
119011
+  (0.1ms) SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE (owners.name = 'Arnaud Besnier')
119012
+  (0.0ms) rollback transaction
119013
+  (0.0ms) begin transaction
119014
+ ----------------------------------------------------------
119015
+ ForestLiana::ResourcesGetterTest: test_Filter_after_x_days
119016
+ ----------------------------------------------------------
119017
+ SQL (0.1ms) 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" > '2019-02-01 17:00:38 UTC') ORDER BY "trees"."created_at" DESC LIMIT 10 OFFSET 0
119018
+  (0.0ms) SELECT COUNT(*) FROM "trees" WHERE ("trees"."created_at" > '2019-02-01 17:00:38 UTC')
119019
+  (0.0ms) rollback transaction
119020
+  (0.0ms) begin transaction
119021
+ -------------------------------------------------------------------------------------------------
119022
+ ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_filter_on_a_belongs_to_enum_field
119023
+ -------------------------------------------------------------------------------------------------
119024
+  (0.2ms) 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"."status" = '1')
119025
+  (0.1ms) rollback transaction
119026
+  (0.0ms) begin transaction
119027
+ ----------------------------------------------------------------------------------------------------
119028
+ ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_filter_on_a_belongs_to_boolean_field
119029
+ ----------------------------------------------------------------------------------------------------
119030
+  (0.2ms) 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)
119031
+  (0.0ms) rollback transaction
119032
+  (0.0ms) begin transaction
119033
+ ----------------------------------------------------------------------------------------------------
119034
+ ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_filter_on_a_belongs_to_integer_field
119035
+ ----------------------------------------------------------------------------------------------------
119036
+  (0.2ms) 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')
119037
+  (0.0ms) rollback transaction
119038
+  (0.0ms) begin transaction
119039
+ -----------------------------------------------------------------------------
119040
+ ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_simple_filter
119041
+ -----------------------------------------------------------------------------
119042
+  (0.6ms) SELECT DISTINCT COUNT(DISTINCT "boolean_fields"."id") FROM "boolean_fields" WHERE ("boolean_fields"."field" = 1)
119043
+  (0.1ms) rollback transaction
119044
+  (0.0ms) begin transaction
119045
+ ---------------------------
119046
+ ForestLianaTest: test_truth
119047
+ ---------------------------
119048
+  (0.0ms) rollback transaction
119049
+  (0.0ms) begin transaction
119050
+ -----------------------------------------------------------------------------------------
119051
+ ForestLiana::PieStatGetterTest: test_Pie_stat_getter_with_an_aggregate_on_a_boolean_field
119052
+ -----------------------------------------------------------------------------------------
119053
+  (0.3ms) SELECT COUNT(*) AS count_all, boolean_fields.field AS boolean_fields_field FROM "boolean_fields" GROUP BY boolean_fields.field ORDER BY count_all DESC
119054
+  (0.1ms) rollback transaction
119055
+  (0.0ms) begin transaction
119056
+ ---------------------------------------------------------------------------------------
119057
+ ForestLiana::PieStatGetterTest: test_Pie_stat_getter_with_an_aggregate_on_a_foreign_key
119058
+ ---------------------------------------------------------------------------------------
119059
+  (1.0ms) 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
119060
+  (0.1ms) rollback transaction
119061
+  (0.0ms) begin transaction
119062
+ ------------------------------------------------------------------
119063
+ ForestLiana::HasManyGetterTest: test_HasMany_Getter_page_1_size_15
119064
+ ------------------------------------------------------------------
119065
+ Owner Load (0.1ms) SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 1]]
119066
+  (0.3ms) SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? [["owner_id", 1]]
119067
+  (0.2ms) 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]]
119068
+ SQL (0.2ms) 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"."owner_id" = ? ORDER BY "trees"."id" ASC LIMIT 1 OFFSET 0 [["owner_id", 1]]
119069
+  (0.1ms) rollback transaction
119070
+  (0.1ms) begin transaction
119071
+ -------------------------------------------------------------------------
119072
+ ForestLiana::HasManyGetterTest: test_HasMany_Getter_with_search_parameter
119073
+ -------------------------------------------------------------------------
119074
+ Owner Load (0.4ms) SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 1]]
119075
+  (0.6ms) SELECT 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%') [["owner_id", 1]]
119076
+  (0.2ms) 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]]
119077
+ SQL (0.2ms) 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"."owner_id" = ? AND (LOWER("trees"."name") LIKE '%fir%') ORDER BY "trees"."id" ASC LIMIT 1 OFFSET 0 [["owner_id", 1]]
119078
+  (0.1ms) rollback transaction
119079
+  (0.0ms) begin transaction
119080
+ -----------------------------------------------------------------------
119081
+ ForestLiana::HasManyGetterTest: test_HasMany_Getter_with_sort_parameter
119082
+ -----------------------------------------------------------------------
119083
+ Owner Load (0.1ms) SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 1]]
119084
+  (0.1ms) SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? [["owner_id", 1]]
119085
+  (0.1ms) 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]]
119086
+ SQL (0.2ms) 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"."owner_id" = ? ORDER BY trees.id DESC LIMIT 1 OFFSET 0 [["owner_id", 1]]
119087
+  (0.1ms) rollback transaction
119088
+  (0.1ms) begin transaction
119089
+ ---------------------------------------------------------------------------------------------------------
119090
+ ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_bad_format_value
119091
+ ---------------------------------------------------------------------------------------------------------
119092
+ SerializeField Load (0.2ms) SELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1 [["id", 1]]
119093
+  (0.1ms) rollback transaction
119094
+  (0.1ms) begin transaction
119095
+ ------------------------------------------------------------------------------------------------------------
119096
+ ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_well_formated_value
119097
+ ------------------------------------------------------------------------------------------------------------
119098
+ SerializeField Load (0.1ms) SELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1 [["id", 1]]
119099
+  (0.1ms) SAVEPOINT active_record_1
119100
+ SQL (0.5ms) UPDATE "serialize_fields" SET "field" = ? WHERE "serialize_fields"."id" = ? [["field", "---\n- test\n- test\n"], ["id", 1]]
119101
+  (0.1ms) RELEASE SAVEPOINT active_record_1
119102
+  (0.7ms) rollback transaction
119103
+  (0.0ms) begin transaction
119104
+ ---------------------------------------------------------------------------------------------------
119105
+ ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_null_value
119106
+ ---------------------------------------------------------------------------------------------------
119107
+ SerializeField Load (0.1ms) SELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1 [["id", 1]]
119108
+  (0.0ms) SAVEPOINT active_record_1
119109
+ SQL (0.2ms) UPDATE "serialize_fields" SET "field" = ? WHERE "serialize_fields"."id" = ? [["field", nil], ["id", 1]]
119110
+  (0.0ms) RELEASE SAVEPOINT active_record_1
119111
+  (0.3ms) rollback transaction
119112
+  (0.1ms) begin transaction
119113
+ ------------------------------------------------------------------------------------------------------
119114
+ ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_missing_value
119115
+ ------------------------------------------------------------------------------------------------------
119116
+ SerializeField Load (0.1ms) SELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1 [["id", 1]]
119117
+  (0.0ms) SAVEPOINT active_record_1
119118
+  (0.0ms) RELEASE SAVEPOINT active_record_1
119119
+  (0.0ms) rollback transaction
119120
+  (0.1ms) begin transaction
119121
+ -----------------------------------
119122
+ ForestLiana::RouteTest: test_Routes
119123
+ -----------------------------------
119124
+  (0.1ms) rollback transaction
119125
+  (0.0ms) begin transaction
119126
+ --------------------------------------------------------------------------
119127
+ ForestLiana::SchemaAdapterTest: test_Decimal_should_have_the_type_`Number`
119128
+ --------------------------------------------------------------------------
119129
+  (0.0ms) rollback transaction
119130
+  (0.0ms) begin transaction
119131
+ -------------------------------------------------------------------------
119132
+ ForestLiana::SchemaAdapterTest: test_DateTime_should_have_the_type_`Date`
119133
+ -------------------------------------------------------------------------
119134
+  (0.1ms) rollback transaction
119135
+  (0.0ms) begin transaction
119136
+ --------------------------------------------------------------------------
119137
+ ForestLiana::SchemaAdapterTest: test_Integer_should_have_the_type_`Number`
119138
+ --------------------------------------------------------------------------
119139
+  (0.0ms) rollback transaction
119140
+  (0.0ms) begin transaction
119141
+ ---------------------------------------------------------------------
119142
+ ForestLiana::SchemaAdapterTest: test_Date_should_have_the_type_`Date`
119143
+ ---------------------------------------------------------------------
119144
+  (0.0ms) rollback transaction
119145
+  (0.0ms) begin transaction
119146
+ ---------------------------------------------------------
119147
+ ForestLiana::SchemaAdapterTest: test_hasMany_relationship
119148
+ ---------------------------------------------------------
119149
+  (0.0ms) rollback transaction
119150
+  (0.0ms) begin transaction
119151
+ ------------------------------------------------------------------------
119152
+ ForestLiana::SchemaAdapterTest: test_Float_should_have_the_type_`Number`
119153
+ ------------------------------------------------------------------------
119154
+  (0.0ms) rollback transaction
119155
+  (0.0ms) begin transaction
119156
+ ----------------------------------------------------------------------------------
119157
+ ForestLiana::SchemaAdapterTest: test_hasMany_relationhip_with_specified_class_name
119158
+ ----------------------------------------------------------------------------------
119159
+  (0.1ms) rollback transaction
119160
+  (0.1ms) begin transaction
119161
+ -------------------------------------------------------------------------
119162
+ ForestLiana::SchemaAdapterTest: test_String_should_have_the_type_`String`
119163
+ -------------------------------------------------------------------------
119164
+  (0.0ms) rollback transaction
119165
+  (0.0ms) begin transaction
119166
+ --------------------------------------------------------
119167
+ ForestLiana::SchemaAdapterTest: test_hasOne_relationship
119168
+ --------------------------------------------------------
119169
+  (0.1ms) rollback transaction
119170
+  (0.1ms) begin transaction
119171
+ -----------------------------------------------------------
119172
+ ForestLiana::SchemaAdapterTest: test_belongsTo_relationship
119173
+ -----------------------------------------------------------
119174
+  (0.1ms) rollback transaction
119175
+  (0.1ms) begin transaction
119176
+ ------------------------------------------------------------------------------------
119177
+ ForestLiana::SchemaAdapterTest: test_belongsTo_relationhip_with_specified_class_name
119178
+ ------------------------------------------------------------------------------------
119179
+  (0.1ms) rollback transaction
119180
+  (0.0ms) begin transaction
119181
+ ---------------------------------------------------------------------------
119182
+ ForestLiana::SchemaAdapterTest: test_Boolean_should_have_the_type_`Boolean`
119183
+ ---------------------------------------------------------------------------
119184
+  (0.0ms) rollback transaction
119185
+ ActiveRecord::SchemaMigration Load (0.7ms) SELECT "schema_migrations".* FROM "schema_migrations"
119186
+  (0.1ms) begin transaction
119187
+ Fixture Delete (0.8ms) DELETE FROM "has_many_through_fields"
119188
+ Fixture Insert (0.5ms) INSERT INTO "has_many_through_fields" ("id") VALUES (1)
119189
+ Fixture Insert (0.1ms) INSERT INTO "has_many_through_fields" ("id") VALUES (2)
119190
+ Fixture Insert (0.0ms) INSERT INTO "has_many_through_fields" ("id") VALUES (3)
119191
+ Fixture Insert (0.0ms) INSERT INTO "has_many_through_fields" ("id") VALUES (4)
119192
+ Fixture Insert (0.1ms) INSERT INTO "has_many_through_fields" ("id") VALUES (5)
119193
+ Fixture Insert (0.1ms) INSERT INTO "has_many_through_fields" ("id") VALUES (6)
119194
+ Fixture Insert (0.1ms) INSERT INTO "has_many_through_fields" ("id") VALUES (7)
119195
+ Fixture Insert (0.1ms) INSERT INTO "has_many_through_fields" ("id") VALUES (8)
119196
+ Fixture Insert (0.0ms) INSERT INTO "has_many_through_fields" ("id") VALUES (9)
119197
+ Fixture Insert (0.0ms) INSERT INTO "has_many_through_fields" ("id") VALUES (10)
119198
+ Fixture Delete (1.1ms) DELETE FROM "string_fields"
119199
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (1, 'Test 1')
119200
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (2, 'Test 2')
119201
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (3, 'Test 3')
119202
+ Fixture Insert (0.2ms) INSERT INTO "string_fields" ("id", "field") VALUES (4, 'Test 4')
119203
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (5, 'Test 5')
119204
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (6, 'Test 6')
119205
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (7, 'Test 7')
119206
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (8, 'Test 8')
119207
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (9, 'Test 9')
119208
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (10, 'Test 10')
119209
+ Fixture Insert (0.3ms) INSERT INTO "string_fields" ("id", "field") VALUES (11, 'Test 11')
119210
+ Fixture Insert (0.6ms) INSERT INTO "string_fields" ("id", "field") VALUES (12, 'Test 12')
119211
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (13, 'Test 13')
119212
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (14, 'Test 14')
119213
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (15, 'Test 15')
119214
+ Fixture Insert (0.1ms) INSERT INTO "string_fields" ("id", "field") VALUES (16, 'Test 16')
119215
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (17, 'Test 17')
119216
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (18, 'Test 18')
119217
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (19, 'Test 19')
119218
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (20, 'Test 20')
119219
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (21, 'Test 21')
119220
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (22, 'Test 22')
119221
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (23, 'Test 23')
119222
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (24, 'Test 24')
119223
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (25, 'Test 25')
119224
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (26, 'Test 26')
119225
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (27, 'Test 27')
119226
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (28, 'Test 28')
119227
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (29, 'Test 29')
119228
+ Fixture Insert (0.0ms) INSERT INTO "string_fields" ("id", "field") VALUES (30, 'Test 30')
119229
+ Fixture Delete (1.2ms) DELETE FROM "belongs_to_fields"
119230
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (1, 1, 1)
119231
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (2, 2, 1)
119232
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (3, 3, 1)
119233
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (4, 4, 2)
119234
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (5, 5, 2)
119235
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (6, 6, 2)
119236
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (7, 7, 3)
119237
+ Fixture Insert (0.2ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (8, 8, 3)
119238
+ Fixture Insert (0.2ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (9, 9, 3)
119239
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (10, 10, 4)
119240
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (11, 11, 4)
119241
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (12, 12, 4)
119242
+ Fixture Insert (0.2ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (13, 13, 5)
119243
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (14, 14, 5)
119244
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (15, 15, 5)
119245
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (16, 16, 6)
119246
+ Fixture Insert (0.3ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (17, 17, 6)
119247
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (18, 18, 6)
119248
+ Fixture Insert (0.2ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (19, 19, 7)
119249
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (20, 20, 7)
119250
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (21, 21, 7)
119251
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (22, 22, 7)
119252
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (23, 23, 8)
119253
+ Fixture Insert (0.1ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (24, 24, 8)
119254
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (25, 25, 9)
119255
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (26, 26, 9)
119256
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (27, 27, 9)
119257
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (28, 28, 10)
119258
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (29, 29, 10)
119259
+ Fixture Insert (0.0ms) INSERT INTO "belongs_to_fields" ("id", "has_one_field_id", "has_many_field_id") VALUES (30, 30, 10)
119260
+ Fixture Delete (0.8ms) DELETE FROM "trees"
119261
+ Fixture Insert (0.1ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (1, 'Oak', 1, '2012-02-11 11:00:00.000000', '2012-02-11 11:00:00.000000')
119262
+ Fixture Insert (0.1ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (2, 'Mapple', 2, '2012-02-15 21:00:00.000000', '2012-02-15 21:00:00.000000')
119263
+ Fixture Insert (0.1ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (3, 'Mapple', 2, '2014-04-11 12:00:00.000000', '2014-04-11 12:00:00.000000')
119264
+ Fixture Insert (0.2ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (4, 'Oak', 2, '2017-06-18 09:00:00.000000', '2017-06-18 09:00:00.000000')
119265
+ Fixture Insert (0.1ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (5, 'Oak', 3, '2016-06-18 09:00:00.000000', '2016-06-18 09:00:00.000000')
119266
+ Fixture Insert (0.6ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (6, 'Oak', 3, '2019-02-01 17:42:45.000000', '2019-02-01 17:42:45.000000')
119267
+ Fixture Insert (0.2ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (7, 'Sequoia', 1, '2019-02-01 17:42:45.000000', '2019-02-01 17:42:45.000000')
119268
+ Fixture Insert (0.1ms) INSERT INTO "trees" ("id", "name", "owner_id", "created_at", "updated_at") VALUES (8, 'Fir', 1, '2019-02-01 17:42:45.000000', '2019-02-01 17:42:45.000000')
119269
+ Fixture Delete (0.7ms) DELETE FROM "has_one_fields"
119270
+ Fixture Insert (0.3ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (1, 't', 0)
119271
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (2, 't', 0)
119272
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (3, 't', 0)
119273
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (4, 't', 0)
119274
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (5, 't', 0)
119275
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (6, 't', 0)
119276
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (7, 't', 0)
119277
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (8, 't', 0)
119278
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (9, 't', 0)
119279
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (10, 't', 0)
119280
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (11, 't', 0)
119281
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (12, 't', 0)
119282
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (13, 't', 0)
119283
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (14, 't', 0)
119284
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (15, 't', 0)
119285
+ Fixture Insert (0.2ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (16, 't', 0)
119286
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (17, 't', 0)
119287
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (18, 't', 0)
119288
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (19, 't', 0)
119289
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (20, 't', 0)
119290
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (21, 't', 0)
119291
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (22, 't', 0)
119292
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (23, 't', 0)
119293
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (24, 't', 0)
119294
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (25, 't', 0)
119295
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (26, 't', 0)
119296
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (27, 't', 0)
119297
+ Fixture Insert (1.8ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (28, 't', 0)
119298
+ Fixture Insert (0.1ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (29, 't', 0)
119299
+ Fixture Insert (0.0ms) INSERT INTO "has_one_fields" ("id", "checked", "status") VALUES (30, 't', 1)
119300
+ Fixture Delete (0.4ms) DELETE FROM "references"
119301
+ Fixture Insert (0.1ms) INSERT INTO "references" ("id") VALUES (1)
119302
+ Fixture Delete (0.3ms) DELETE FROM "owners"
119303
+ Fixture Insert (0.1ms) INSERT INTO "owners" ("id", "name", "created_at", "updated_at") VALUES (1, 'Sandro Munda', '2018-05-30 09:00:00.000000', '2019-06-27 20:00:00.000000')
119304
+ Fixture Insert (0.0ms) INSERT INTO "owners" ("id", "name", "created_at", "updated_at") VALUES (2, 'Arnaud Besnier', '2019-05-02 09:00:00.000000', '2019-06-28 08:00:00.000000')
119305
+ Fixture Insert (0.0ms) INSERT INTO "owners" ("id", "name", "created_at", "updated_at") VALUES (3, 'John Doe', '2017-05-02 09:00:00.000000', '2018-06-28 08:00:00.000000')
119306
+ Fixture Delete (0.6ms) DELETE FROM "has_many_fields"
119307
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id") VALUES (1)
119308
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id") VALUES (2)
119309
+ Fixture Insert (0.1ms) INSERT INTO "has_many_fields" ("id") VALUES (3)
119310
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id") VALUES (4)
119311
+ Fixture Insert (0.1ms) INSERT INTO "has_many_fields" ("id", "has_many_through_field_id") VALUES (5, 3)
119312
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id", "has_many_through_field_id") VALUES (6, 2)
119313
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id") VALUES (7)
119314
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id", "has_many_through_field_id") VALUES (8, 2)
119315
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id") VALUES (9)
119316
+ Fixture Insert (0.0ms) INSERT INTO "has_many_fields" ("id") VALUES (10)
119317
+ Fixture Delete (0.1ms) DELETE FROM "serialize_fields"
119318
+ Fixture Insert (0.0ms) INSERT INTO "serialize_fields" ("id", "field") VALUES (1, 'value 1')
119319
+ Fixture Insert (0.0ms) INSERT INTO "serialize_fields" ("id", "field") VALUES (2, 'value 2')
119320
+ Fixture Insert (0.0ms) INSERT INTO "serialize_fields" ("id", "field") VALUES (3, 'value 3')
119321
+ Fixture Insert (0.0ms) INSERT INTO "serialize_fields" ("id", "field") VALUES (4, 'value 4')
119322
+ Fixture Insert (0.0ms) INSERT INTO "serialize_fields" ("id", "field") VALUES (5, 'value 5')
119323
+  (2.2ms) commit transaction
119324
+  (0.0ms) begin transaction
119325
+ -----------------------------------------------------------------------------------------
119326
+ ForestLiana::PieStatGetterTest: test_Pie_stat_getter_with_an_aggregate_on_a_boolean_field
119327
+ -----------------------------------------------------------------------------------------
119328
+  (0.4ms) SELECT COUNT(*) AS count_all, boolean_fields.field AS boolean_fields_field FROM "boolean_fields" GROUP BY boolean_fields.field ORDER BY count_all DESC
119329
+  (0.1ms) rollback transaction
119330
+  (0.0ms) begin transaction
119331
+ ---------------------------------------------------------------------------------------
119332
+ ForestLiana::PieStatGetterTest: test_Pie_stat_getter_with_an_aggregate_on_a_foreign_key
119333
+ ---------------------------------------------------------------------------------------
119334
+  (0.5ms) 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
119335
+  (0.0ms) rollback transaction
119336
+  (0.0ms) begin transaction
119337
+ -------------------------------------------------------------------------
119338
+ ForestLiana::HasManyGetterTest: test_HasMany_Getter_with_search_parameter
119339
+ -------------------------------------------------------------------------
119340
+ Owner Load (0.2ms) SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 1]]
119341
+  (0.7ms) SELECT 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%') [["owner_id", 1]]
119342
+  (0.4ms) 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]]
119343
+ SQL (1.4ms) 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"."owner_id" = ? AND (LOWER("trees"."name") LIKE '%fir%') ORDER BY "trees"."id" ASC LIMIT 1 OFFSET 0 [["owner_id", 1]]
119344
+  (0.1ms) rollback transaction
119345
+  (0.4ms) begin transaction
119346
+ ------------------------------------------------------------------
119347
+ ForestLiana::HasManyGetterTest: test_HasMany_Getter_page_1_size_15
119348
+ ------------------------------------------------------------------
119349
+ Owner Load (0.1ms) SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 1]]
119350
+  (2.9ms) SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? [["owner_id", 1]]
119351
+  (0.2ms) 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]]
119352
+ SQL (0.1ms) 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"."owner_id" = ? ORDER BY "trees"."id" ASC LIMIT 1 OFFSET 0 [["owner_id", 1]]
119353
+  (0.1ms) rollback transaction
119354
+  (0.1ms) begin transaction
119355
+ -----------------------------------------------------------------------
119356
+ ForestLiana::HasManyGetterTest: test_HasMany_Getter_with_sort_parameter
119357
+ -----------------------------------------------------------------------
119358
+ Owner Load (0.1ms) SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 1]]
119359
+  (0.1ms) SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE "trees"."owner_id" = ? [["owner_id", 1]]
119360
+  (0.1ms) 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]]
119361
+ SQL (0.2ms) 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"."owner_id" = ? ORDER BY trees.id DESC LIMIT 1 OFFSET 0 [["owner_id", 1]]
119362
+  (0.1ms) rollback transaction
119363
+  (0.0ms) begin transaction
119364
+ -------------------------------------------------------------------------------------------------
119365
+ ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_filter_on_a_belongs_to_enum_field
119366
+ -------------------------------------------------------------------------------------------------
119367
+  (0.4ms) 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"."status" = '1')
119368
+  (0.1ms) rollback transaction
119369
+  (0.1ms) begin transaction
119370
+ ----------------------------------------------------------------------------------------------------
119371
+ ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_filter_on_a_belongs_to_boolean_field
119372
+ ----------------------------------------------------------------------------------------------------
119373
+  (0.2ms) 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)
119374
+  (0.0ms) rollback transaction
119375
+  (0.0ms) begin transaction
119376
+ ----------------------------------------------------------------------------------------------------
119377
+ ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_filter_on_a_belongs_to_integer_field
119378
+ ----------------------------------------------------------------------------------------------------
119379
+  (0.2ms) 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')
119380
+  (0.0ms) rollback transaction
119381
+  (0.0ms) begin transaction
119382
+ -----------------------------------------------------------------------------
119383
+ ForestLiana::ValueStatGetterTest: test_Value_stat_getter_with_a_simple_filter
119384
+ -----------------------------------------------------------------------------
119385
+  (0.1ms) SELECT DISTINCT COUNT(DISTINCT "boolean_fields"."id") FROM "boolean_fields" WHERE ("boolean_fields"."field" = 1)
119386
+  (0.0ms) rollback transaction
119387
+  (0.0ms) begin transaction
119388
+ ----------------------------------------------------------------------------------
119389
+ ForestLiana::SchemaAdapterTest: test_hasMany_relationhip_with_specified_class_name
119390
+ ----------------------------------------------------------------------------------
119391
+  (0.1ms) rollback transaction
119392
+  (0.1ms) begin transaction
119393
+ ------------------------------------------------------------------------------------
119394
+ ForestLiana::SchemaAdapterTest: test_belongsTo_relationhip_with_specified_class_name
119395
+ ------------------------------------------------------------------------------------
119396
+  (0.1ms) rollback transaction
119397
+  (0.0ms) begin transaction
119398
+ --------------------------------------------------------
119399
+ ForestLiana::SchemaAdapterTest: test_hasOne_relationship
119400
+ --------------------------------------------------------
119401
+  (0.0ms) rollback transaction
119402
+  (0.0ms) begin transaction
119403
+ ---------------------------------------------------------------------
119404
+ ForestLiana::SchemaAdapterTest: test_Date_should_have_the_type_`Date`
119405
+ ---------------------------------------------------------------------
119406
+  (0.1ms) rollback transaction
119407
+  (0.1ms) begin transaction
119408
+ ---------------------------------------------------------
119409
+ ForestLiana::SchemaAdapterTest: test_hasMany_relationship
119410
+ ---------------------------------------------------------
119411
+  (0.0ms) rollback transaction
119412
+  (0.1ms) begin transaction
119413
+ ------------------------------------------------------------------------
119414
+ ForestLiana::SchemaAdapterTest: test_Float_should_have_the_type_`Number`
119415
+ ------------------------------------------------------------------------
119416
+  (0.1ms) rollback transaction
119417
+  (0.1ms) begin transaction
119418
+ --------------------------------------------------------------------------
119419
+ ForestLiana::SchemaAdapterTest: test_Integer_should_have_the_type_`Number`
119420
+ --------------------------------------------------------------------------
119421
+  (0.1ms) rollback transaction
119422
+  (0.1ms) begin transaction
119423
+ ---------------------------------------------------------------------------
119424
+ ForestLiana::SchemaAdapterTest: test_Boolean_should_have_the_type_`Boolean`
119425
+ ---------------------------------------------------------------------------
119426
+  (0.0ms) rollback transaction
119427
+  (0.1ms) begin transaction
119428
+ --------------------------------------------------------------------------
119429
+ ForestLiana::SchemaAdapterTest: test_Decimal_should_have_the_type_`Number`
119430
+ --------------------------------------------------------------------------
119431
+  (0.0ms) rollback transaction
119432
+  (0.0ms) begin transaction
119433
+ -----------------------------------------------------------
119434
+ ForestLiana::SchemaAdapterTest: test_belongsTo_relationship
119435
+ -----------------------------------------------------------
119436
+  (0.1ms) rollback transaction
119437
+  (0.0ms) begin transaction
119438
+ -------------------------------------------------------------------------
119439
+ ForestLiana::SchemaAdapterTest: test_String_should_have_the_type_`String`
119440
+ -------------------------------------------------------------------------
119441
+  (0.0ms) rollback transaction
119442
+  (0.0ms) begin transaction
119443
+ -------------------------------------------------------------------------
119444
+ ForestLiana::SchemaAdapterTest: test_DateTime_should_have_the_type_`Date`
119445
+ -------------------------------------------------------------------------
119446
+  (0.0ms) rollback transaction
119447
+  (0.0ms) begin transaction
119448
+ ---------------------------
119449
+ ForestLianaTest: test_truth
119450
+ ---------------------------
119451
+  (0.0ms) rollback transaction
119452
+  (0.0ms) begin transaction
119453
+ ------------------------------------------------------------------------
119454
+ ForestLiana::ResourcesGetterTest: test_on_a_model_having_a_reserved_name
119455
+ ------------------------------------------------------------------------
119456
+ SQL (0.1ms) SELECT "references"."id" AS t0_r0 FROM "references" ORDER BY "references"."id" DESC LIMIT 10 OFFSET 0
119457
+  (0.0ms) SELECT COUNT(*) FROM "references"
119458
+  (0.0ms) rollback transaction
119459
+  (0.1ms) begin transaction
119460
+ --------------------------------------------------------------------------------------------------------
119461
+ ForestLiana::ResourcesGetterTest: test_Filter_on_a_field_of_an_associated_collection_that_does_not_exist
119462
+ --------------------------------------------------------------------------------------------------------
119463
+  (0.0ms) rollback transaction
119464
+  (0.1ms) begin transaction
119465
+ ------------------------------------------------------------
119466
+ ForestLiana::ResourcesGetterTest: test_Filter_before_x_hours
119467
+ ------------------------------------------------------------
119468
+ SQL (0.4ms) 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" < '2019-02-01 17:41:45 UTC') ORDER BY "trees"."created_at" DESC LIMIT 10 OFFSET 0
119469
+  (0.1ms) SELECT COUNT(*) FROM "trees" WHERE ("trees"."created_at" < '2019-02-01 17:41:45 UTC')
119470
+ Owner Load (0.1ms) SELECT "owners".* FROM "owners" WHERE "owners"."id" = ? LIMIT 1 [["id", 2]]
119471
+  (0.2ms) rollback transaction
119472
+  (0.0ms) begin transaction
119473
+ -------------------------------------------------------------------------------------------
119474
+ ForestLiana::ResourcesGetterTest: test_Filter_on_an_updated_at_field_of_the_main_collection
119475
+ -------------------------------------------------------------------------------------------
119476
+ SQL (0.2ms) SELECT "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 '2018-01-01 09:00:00 UTC' AND '2019-01-01 08:59:59 UTC') ORDER BY "owners"."created_at" DESC LIMIT 10 OFFSET 0
119477
+  (0.2ms) SELECT COUNT(*) FROM "owners" WHERE ("owners"."updated_at" BETWEEN '2018-01-01 09:00:00 UTC' AND '2019-01-01 08:59:59 UTC')
119478
+  (0.0ms) rollback transaction
119479
+  (0.1ms) begin transaction
119480
+ -----------------------------------------------------------------------
119481
+ ForestLiana::ResourcesGetterTest: test_Sort_by_a_belongs_to_association
119482
+ -----------------------------------------------------------------------
119483
+ SQL (0.3ms) SELECT "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
119484
+  (0.2ms) 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"
119485
+  (0.0ms) rollback transaction
119486
+  (0.0ms) begin transaction
119487
+ --------------------------------------------------------------------
119488
+ ForestLiana::ResourcesGetterTest: test_Sort_by_a_has_one_association
119489
+ --------------------------------------------------------------------
119490
+ SQL (0.6ms) SELECT "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
119491
+  (0.1ms) 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"
119492
+  (0.0ms) rollback transaction
119493
+  (0.0ms) begin transaction
119494
+ ----------------------------------------------------------------
119495
+ ForestLiana::ResourcesGetterTest: test_StringField_sort_by_field
119496
+ ----------------------------------------------------------------
119497
+ SQL (0.2ms) SELECT "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
119498
+  (0.1ms) SELECT COUNT(*) FROM "string_fields"
119499
+  (0.1ms) rollback transaction
119500
+  (0.1ms) begin transaction
119501
+ ------------------------------------------------------------------------------------------------
119502
+ ForestLiana::ResourcesGetterTest: test_Filter_on_an_updated_at_field_of_an_associated_collection
119503
+ ------------------------------------------------------------------------------------------------
119504
+ SQL (0.2ms) 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 (owners.updated_at BETWEEN '2018-01-01 09:00:00 UTC' AND '2019-01-01 08:59:59 UTC') ORDER BY "trees"."created_at" DESC LIMIT 10 OFFSET 0
119505
+  (0.1ms) SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE (owners.updated_at BETWEEN '2018-01-01 09:00:00 UTC' AND '2019-01-01 08:59:59 UTC')
119506
+  (0.0ms) rollback transaction
119507
+  (0.1ms) begin transaction
119508
+ ----------------------------------------------------------
119509
+ ForestLiana::ResourcesGetterTest: test_Filter_after_x_days
119510
+ ----------------------------------------------------------
119511
+ SQL (0.2ms) 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" > '2019-02-01 17:41:45 UTC') ORDER BY "trees"."created_at" DESC LIMIT 10 OFFSET 0
119512
+  (0.0ms) SELECT COUNT(*) FROM "trees" WHERE ("trees"."created_at" > '2019-02-01 17:41:45 UTC')
119513
+  (0.0ms) rollback transaction
119514
+  (0.0ms) begin transaction
119515
+ -----------------------------------------------------------------------------
119516
+ ForestLiana::ResourcesGetterTest: test_Filter_on_a_field_that_does_not_exists
119517
+ -----------------------------------------------------------------------------
119518
+  (0.0ms) rollback transaction
119519
+  (0.0ms) begin transaction
119520
+ ------------------------------------------------------------------------------------
119521
+ ForestLiana::ResourcesGetterTest: test_Sort_on_an_ambiguous_field_name_with_a_filter
119522
+ ------------------------------------------------------------------------------------
119523
+ SQL (0.2ms) 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 (owners.name = 'Arnaud Besnier') ORDER BY "trees"."name" DESC LIMIT 10 OFFSET 0
119524
+  (0.1ms) SELECT COUNT(DISTINCT "trees"."id") FROM "trees" LEFT OUTER JOIN "owners" ON "owners"."id" = "trees"."owner_id" WHERE (owners.name = 'Arnaud Besnier')
119525
+  (0.0ms) rollback transaction
119526
+  (0.0ms) begin transaction
119527
+ ----------------------------------------------------------------
119528
+ ForestLiana::ResourcesGetterTest: test_Filter_on_ambiguous_field
119529
+ ----------------------------------------------------------------
119530
+ SQL (0.2ms) 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
119531
+  (0.1ms) SELECT 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')
119532
+  (0.2ms) rollback transaction
119533
+  (0.1ms) begin transaction
119534
+ -----------------------------------------------------------------
119535
+ ForestLiana::ResourcesGetterTest: test_StringField_page_1_size_15
119536
+ -----------------------------------------------------------------
119537
+ SQL (0.2ms) SELECT "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
119538
+  (0.1ms) SELECT COUNT(*) FROM "string_fields"
119539
+  (0.2ms) rollback transaction
119540
+  (0.1ms) begin transaction
119541
+ -----------------------------------------------------------------
119542
+ ForestLiana::ResourcesGetterTest: test_StringField_page_2_size_10
119543
+ -----------------------------------------------------------------
119544
+ SQL (0.1ms) SELECT "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
119545
+  (0.1ms) SELECT COUNT(*) FROM "string_fields"
119546
+  (0.1ms) rollback transaction
119547
+  (0.1ms) begin transaction
119548
+ ------------------------------------------------------------------------------------------------------
119549
+ ForestLiana::ResourcesGetterTest: test_Filter_equal_on_an_updated_at_field_of_an_associated_collection
119550
+ ------------------------------------------------------------------------------------------------------
119551
+ SQL (0.1ms) 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 (owners.updated_at = 'Sat Jul 02 2016 11:52:00 GMT-0400 (EDT)') ORDER BY "trees"."created_at" DESC LIMIT 10 OFFSET 0
119552
+  (0.1ms) 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)')
119553
+  (0.0ms) rollback transaction
119554
+  (0.1ms) begin transaction
119555
+ ---------------------------------------------------------------------------------------------------------
119556
+ ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_bad_format_value
119557
+ ---------------------------------------------------------------------------------------------------------
119558
+ SerializeField Load (0.3ms) SELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1 [["id", 1]]
119559
+  (0.1ms) rollback transaction
119560
+  (0.0ms) begin transaction
119561
+ ------------------------------------------------------------------------------------------------------
119562
+ ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_missing_value
119563
+ ------------------------------------------------------------------------------------------------------
119564
+ SerializeField Load (0.1ms) SELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1 [["id", 1]]
119565
+  (0.0ms) SAVEPOINT active_record_1
119566
+  (0.0ms) RELEASE SAVEPOINT active_record_1
119567
+  (0.1ms) rollback transaction
119568
+  (0.0ms) begin transaction
119569
+ ---------------------------------------------------------------------------------------------------
119570
+ ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_null_value
119571
+ ---------------------------------------------------------------------------------------------------
119572
+ SerializeField Load (0.1ms) SELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1 [["id", 1]]
119573
+  (0.0ms) SAVEPOINT active_record_1
119574
+ SQL (0.6ms) UPDATE "serialize_fields" SET "field" = ? WHERE "serialize_fields"."id" = ? [["field", nil], ["id", 1]]
119575
+  (0.0ms) RELEASE SAVEPOINT active_record_1
119576
+  (0.4ms) rollback transaction
119577
+  (0.0ms) begin transaction
119578
+ ------------------------------------------------------------------------------------------------------------
119579
+ ForestLiana::ResourceUpdaterTest: test_Update_a_record_on_a_"serialize"_attribute_with_a_well_formated_value
119580
+ ------------------------------------------------------------------------------------------------------------
119581
+ SerializeField Load (0.1ms) SELECT "serialize_fields".* FROM "serialize_fields" WHERE "serialize_fields"."id" = ? LIMIT 1 [["id", 1]]
119582
+  (0.1ms) SAVEPOINT active_record_1
119583
+ SQL (0.3ms) UPDATE "serialize_fields" SET "field" = ? WHERE "serialize_fields"."id" = ? [["field", "---\n- test\n- test\n"], ["id", 1]]
119584
+  (0.1ms) RELEASE SAVEPOINT active_record_1
119585
+  (0.8ms) rollback transaction
119586
+  (0.2ms) begin transaction
119587
+ -----------------------------------
119588
+ ForestLiana::RouteTest: test_Routes
119589
+ -----------------------------------
119590
+  (0.1ms) rollback transaction