Skip to content

Commit f206b8c

Browse files
committed
Support summary badges on ModelsCollector
1 parent 8781b5d commit f206b8c

File tree

2 files changed

+13
-6
lines changed

2 files changed

+13
-6
lines changed

src/LaravelDebugbar.php

+1
Original file line numberDiff line numberDiff line change
@@ -472,6 +472,7 @@ function (\Illuminate\Database\Events\ConnectionEstablished $event) {
472472
$this->addCollector(new ObjectCountCollector('models'));
473473
$eventList = ['retrieved', 'created', 'updated', 'deleted', 'restored'];
474474
$this['models']->setKeyMap(array_combine($eventList, array_map('ucfirst', $eventList)));
475+
$this['models']->collectCountSummary(true);
475476
foreach ($eventList as $event) {
476477
$events->listen("eloquent.{$event}: *", function ($event, $models) {
477478
$event = explode(': ', $event);

tests/DataCollector/ModelsCollectorTest.php

+12-6
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,11 @@ public function testItCollectsRetrievedModels()
2222
$collector->setXdebugLinkTemplate('');
2323
$eventList = ['retrieved', 'created', 'updated', 'deleted', 'restored'];
2424
$keyMap = array_combine($eventList, array_map('ucfirst', $eventList));
25+
$badges = [];
2526
$data = [];
2627

2728
$this->assertEquals(
28-
['data' => $data, 'count' => 0, 'key_map' => $keyMap, 'is_counter' => true],
29+
['data' => $data, 'count' => 0, 'key_map' => $keyMap, 'is_counter' => true, 'badges' => $badges],
2930
$collector->collect()
3031
);
3132

@@ -41,41 +42,46 @@ public function testItCollectsRetrievedModels()
4142
'password' => Hash::make('password'),
4243
]);
4344

45+
$badges['created'] = 2;
4446
$data[User::class] = ['created' => 2];
4547
$this->assertEquals(
46-
['data' => $data, 'key_map' => $keyMap, 'count' => 2, 'is_counter' => true],
48+
['data' => $data, 'key_map' => $keyMap, 'count' => 2, 'is_counter' => true, 'badges' => $badges],
4749
$collector->collect()
4850
);
4951

5052
$user = User::first();
5153

54+
$badges['retrieved'] = 1;
5255
$data[User::class]['retrieved'] = 1;
5356
$this->assertEquals(
54-
['data' => $data, 'key_map' => $keyMap, 'count' => 3, 'is_counter' => true],
57+
['data' => $data, 'key_map' => $keyMap, 'count' => 3, 'is_counter' => true, 'badges' => $badges],
5558
$collector->collect()
5659
);
5760

5861
$user->update(['name' => 'Jane Doe']);
5962

63+
$badges['updated'] = 1;
6064
$data[User::class]['updated'] = 1;
6165
$this->assertEquals(
62-
['data' => $data, 'key_map' => $keyMap, 'count' => 4, 'is_counter' => true],
66+
['data' => $data, 'key_map' => $keyMap, 'count' => 4, 'is_counter' => true, 'badges' => $badges],
6367
$collector->collect()
6468
);
6569

6670
Person::all();
6771

72+
$badges['retrieved'] += 2;
6873
$data[Person::class] = ['retrieved' => 2];
6974
$this->assertEquals(
70-
['data' => $data, 'key_map' => $keyMap, 'count' => 6, 'is_counter' => true],
75+
['data' => $data, 'key_map' => $keyMap, 'count' => 6, 'is_counter' => true, 'badges' => $badges],
7176
$collector->collect()
7277
);
7378

7479
$user->delete();
7580

81+
$badges['deleted'] = 1;
7682
$data[User::class]['deleted'] = 1;
7783
$this->assertEquals(
78-
['data' => $data, 'key_map' => $keyMap, 'count' => 7, 'is_counter' => true],
84+
['data' => $data, 'key_map' => $keyMap, 'count' => 7, 'is_counter' => true, 'badges' => $badges],
7985
$collector->collect()
8086
);
8187
}

0 commit comments

Comments
 (0)