Skip to content

Commit 6ea5abf

Browse files
authored
Ensure consistent order (#290)
1 parent b111f88 commit 6ea5abf

File tree

2 files changed

+30
-1
lines changed

2 files changed

+30
-1
lines changed

src/Livewire/Servers.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@ public function render(): Renderable
3737
'updated_at' => $updatedAt = CarbonImmutable::createFromTimestamp($system->timestamp),
3838
'recently_reported' => $updatedAt->isAfter(now()->subSeconds(30)),
3939
];
40-
});
40+
})
41+
->sortBy('name');
4142
});
4243

4344
if (Livewire::isLivewireRequest()) {

tests/Feature/Livewire/ServersTest.php

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,3 +59,31 @@
5959
],
6060
]));
6161
});
62+
63+
it('sorts by server name', function () {
64+
$data = [
65+
'memory_used' => 1234,
66+
'memory_total' => 2468,
67+
'cpu' => 99,
68+
'storage' => [
69+
['directory' => '/', 'used' => 123, 'total' => 456],
70+
],
71+
];
72+
Pulse::set('system', 'b-web', json_encode([
73+
'name' => 'B Web',
74+
...$data,
75+
]));
76+
Pulse::set('system', 'a-web', json_encode([
77+
'name' => 'A Web',
78+
...$data,
79+
]));
80+
Pulse::set('system', 'c-web', json_encode([
81+
'name' => 'C Web',
82+
...$data,
83+
]));
84+
85+
Pulse::ingest();
86+
87+
Livewire::test(Servers::class, ['lazy' => false])
88+
->assertSeeInOrder(['A Web', 'B Web', 'C Web']);
89+
});

0 commit comments

Comments
 (0)