feat(ui): add premium PluriWave redesign
This commit is contained in:
@@ -171,6 +171,41 @@ void main() {
|
||||
expect(estado.presetEcualizador, principal);
|
||||
expect(audio.presetsAplicados.last, principal);
|
||||
});
|
||||
|
||||
test('reordenar favoritos reindexa de forma determinística', () async {
|
||||
final favoritos = FakeServicioFavoritos();
|
||||
await favoritos.agregar(emisoraDemo(uuid: 'a', nombre: 'A'));
|
||||
await favoritos.agregar(emisoraDemo(uuid: 'b', nombre: 'B'));
|
||||
await favoritos.agregar(emisoraDemo(uuid: 'c', nombre: 'C'));
|
||||
|
||||
await favoritos.reordenar('a', 2);
|
||||
final lista = await favoritos.obtenerTodos();
|
||||
|
||||
expect(lista.map((e) => e.uuid).toList(), equals(['b', 'c', 'a']));
|
||||
expect(lista.map((e) => e.orden).toList(), equals([0, 1, 2]));
|
||||
});
|
||||
|
||||
test('toggleFavorito refresca lista global y evita estado stale', () async {
|
||||
final favoritos = FakeServicioFavoritos();
|
||||
final emisora = emisoraDemo(uuid: 'fav-sync', nombre: 'Sync');
|
||||
final estado = EstadoRadio(
|
||||
audio: FakeServicioAudio(),
|
||||
favoritos: favoritos,
|
||||
radio: FakeServicioRadio(populares: [emisora]),
|
||||
servicioEcualizador: FakeServicioEcualizador(),
|
||||
resolverArchivoCustom: _archivoCustomVacio,
|
||||
iniciarAutomaticamente: false,
|
||||
);
|
||||
|
||||
await estado.inicializar();
|
||||
expect(estado.listaFavoritos.any((e) => e.uuid == emisora.uuid), isFalse);
|
||||
|
||||
await estado.toggleFavorito(emisora);
|
||||
expect(estado.listaFavoritos.any((e) => e.uuid == emisora.uuid), isTrue);
|
||||
|
||||
await estado.toggleFavorito(emisora);
|
||||
expect(estado.listaFavoritos.any((e) => e.uuid == emisora.uuid), isFalse);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user