spec/mongoid/report/aggregation_spec.rb in mongoid-report-0.1.7 vs spec/mongoid/report/aggregation_spec.rb in mongoid-report-0.1.9
- old
+ new
@@ -19,12 +19,13 @@
klass.create!(field1: 1)
klass.create!(field1: 1)
klass.create!(field1: 1)
example = Report.new
- rows = example.aggregate_for(klass)
- rows = rows.all
+ report = example.aggregate_for(klass)
+ report = report.all
+ rows = report.rows
expect(rows.size).to eq(1)
expect(rows[0]['field1']).to eq(3)
end
@@ -38,13 +39,15 @@
group_by :day, for: Model
column :field1, for: Model
end
example = Report.new
- rows = example.aggregate_for(klass)
- rows = rows.all
+ report = example.aggregate_for(klass)
+ report = report.all
+ rows = report.rows
+
expect(rows.size).to eq(2)
expect(rows[0]['field1']).to eq(1)
expect(rows[0]['day']).to eq(yesterday)
expect(rows[1]['field1']).to eq(2)
expect(rows[1]['day']).to eq(today)
@@ -68,12 +71,14 @@
scope = scope.query('$match' => { :day => { '$gte' => yesterday.mongoize, '$lte' => today.mongoize } })
scope = scope.query('$match' => { :field2 => 2 })
scope = scope.yield
scope = scope.query('$sort' => { day: -1 })
- rows = scope.all
+ scope = scope.all
+ rows = scope.rows
+
expect(rows.size).to eq(2)
expect(rows[0]['field1']).to eq(2)
expect(rows[0]['day']).to eq(today)
expect(rows[1]['field1']).to eq(1)
expect(rows[1]['day']).to eq(yesterday)
@@ -91,12 +96,14 @@
scope = example.aggregate_for(Model)
scope = scope.query()
scope = scope.query({})
- rows = scope.all
+ scope = scope.all
+ rows = scope.rows
+
expect(rows.size).to eq(1)
expect(rows[0]['field1']).to eq(1)
expect(rows[0]['day']).to eq(today)
end
end
@@ -128,18 +135,18 @@
.query('$match' => { :day => { '$gte' => yesterday.mongoize, '$lte' => today.mongoize } })
.yield
.query('$sort' => { day: -1 })
scope = scope.all
- rows = scope['example1']
+ rows = scope['example1'].rows
expect(rows.size).to eq(2)
expect(rows[0]['field1']).to eq(2)
expect(rows[0]['day']).to eq(today)
expect(rows[1]['field1']).to eq(1)
expect(rows[1]['day']).to eq(yesterday)
- rows = scope['example2']
+ rows = scope['example2'].rows
expect(rows.size).to eq(2)
expect(rows[0]['field2']).to eq(4)
expect(rows[0]['day']).to eq(today)
expect(rows[1]['field2']).to eq(2)
expect(rows[1]['day']).to eq(yesterday)
@@ -173,18 +180,18 @@
.query('$match' => { :day => { '$gte' => yesterday.mongoize, '$lte' => today.mongoize } })
.yield
.query('$sort' => { day: -1 })
scope = scope.all
- rows = scope['example-model1']
+ rows = scope['example-model1'].rows
expect(rows.size).to eq(2)
expect(rows[0]['field1']).to eq(2)
expect(rows[0]['day']).to eq(today)
expect(rows[1]['field1']).to eq(1)
expect(rows[1]['day']).to eq(yesterday)
- rows = scope['example-model2']
+ rows = scope['example-model2'].rows
expect(rows.size).to eq(2)
expect(rows[0]['field2']).to eq(4)
expect(rows[0]['day']).to eq(today)
expect(rows[1]['field2']).to eq(2)
expect(rows[1]['day']).to eq(yesterday)
@@ -218,18 +225,18 @@
.query('$match' => { :day => { '$gte' => yesterday.mongoize, '$lte' => today.mongoize } })
.yield
.query('$sort' => { day: -1 })
scope = scope.all
- rows = scope['example-model1']
+ rows = scope['example-model1'].rows
expect(rows.size).to eq(2)
expect(rows[0]['new-field1']).to eq(2)
expect(rows[0]['day']).to eq(today)
expect(rows[1]['new-field1']).to eq(1)
expect(rows[1]['day']).to eq(yesterday)
- rows = scope['example-model2']
+ rows = scope['example-model2'].rows
expect(rows.size).to eq(2)
expect(rows[0]['field2']).to eq(4)
expect(rows[0]['day']).to eq(today)
expect(rows[1]['field2']).to eq(2)
expect(rows[1]['day']).to eq(yesterday)
@@ -250,11 +257,11 @@
example = Report.new
scope = example.aggregate
scope = scope.all
- rows = scope[Model]
+ rows = scope[Model].rows
expect(rows.size).to eq(1)
expect(rows[0]['field1']).to eq(1)
end
it 'creates filter in report scope' do
@@ -274,11 +281,11 @@
example = Report.new
scope = example.aggregate
scope = scope.all
- rows = scope['example-models']
+ rows = scope['example-models'].rows
expect(rows.size).to eq(1)
expect(rows[0]['field1']).to eq(1)
end
it 'creates filter in report scope' do
@@ -300,11 +307,11 @@
example = Report.new
scope = example.aggregate
scope = scope.all
- rows = scope['example-models']
+ rows = scope['example-models'].rows
expect(rows.size).to eq(1)
expect(rows[0]['field1']).to eq(1)
end
it 'creates filter in report scope' do
@@ -331,10 +338,10 @@
example = Report.new
scope = example.aggregate
scope = scope.all
- rows = scope['example-models']
+ rows = scope['example-models'].rows
expect(rows.size).to eq(2)
expect(rows[0]['field1']).to eq(1)
expect(rows[1]['field1']).to eq(2)
end
end