Vaya, eso es extraño. He añadido una etiqueta de prioridad a esto, alguien lo revisará en las próximas 4 semanas, pero si alguien se anima a enviar una PR mientras tanto, es bienvenido.
Cuando eliminas el último carácter, se llama a get. En este punto, _searchTerm está vacío.
Sin embargo, this._searchTerm || this.q tratará la cadena vacía como falsa, y se mostrará el valor de q.
Una solución rápida podría ser comprobar de esta manera:
Nota: el valor inicial de _searchTerm es undefined.
Nota: debido a computed("q"), el problema no ocurre cuando seleccionas/eliminas (¿probablemente porque el tiempo es demasiado ajustado para invalidar la caché?)
Quería hacer un PR, pero...
Las pruebas principales (sin modificación) fallan por alguna razón.
Estoy usando bin/rspec spec/system/user_activity_bookmarks_spec.rb.
El registro dice que la búsqueda no está presente o que los marcadores no se crean.
¿Me falta algo?
Aleatorizado con semilla 38172
OID desconocido 931304: no se pudo reconocer el tipo de ‘embeddings’. Se tratará como String.
FFF
Fallos:
Los marcadores de actividad del usuario pueden borrar la consulta
Fallo/Error: super
Capybara::ElementNotFound:
No se pudo encontrar el campo “bookmark-search” que no esté deshabilitado
~~~~~ FIN DE REGISTROS DE JS ~~~~
# ./spec/system/page_objects/pages/user_activity_bookmarks.rb:24:in `fill_in_search'
# ./spec/system/page_objects/pages/user_activity_bookmarks.rb:14:in `search_for'
# ./spec/system/user_activity_bookmarks_spec.rb:51:in `block (2 levels) in <main>'
Los marcadores de actividad del usuario pueden filtrar la lista de marcadores
Fallo/Error: super
Capybara::ElementNotFound:
No se pudo encontrar el campo “bookmark-search” que no esté deshabilitado
~~~~~ FIN DE REGISTROS DE JS ~~~~
# ./spec/system/page_objects/pages/user_activity_bookmarks.rb:24:in `fill_in_search'
# ./spec/system/page_objects/pages/user_activity_bookmarks.rb:14:in `search_for'
# ./spec/system/user_activity_bookmarks_spec.rb:44:in `block (2 levels) in <main>'
Los marcadores de actividad del usuario pueden filtrar la lista de marcadores desde la URL
Fallo/Error: expect(user_activity_bookmarks).to have_topic(bookmark_1.bookmarkable.topic)
se esperaba que #<PageObjects::Pages::UserActivityBookmarks:0x00007f51dcb37b00>.has_topic?(#<Topic id: 699, title: "This is a test topic 0", last_posted_at: nil, created_at: "2025-03-19 04:35:...oad_id: nil, slow_mode_seconds: 0, bannered_until: nil, external_id: nil, visibility_reason_id: nil>) fuera verdadero, pero se obtuvo falso
~~~~~ FIN DE REGISTROS DE JS ~~~~
# ./spec/system/user_activity_bookmarks_spec.rb:40:in `block (2 levels) in <main>'
Finalizado en 21.7 segundos (los archivos tardaron 3.8 segundos en cargarse)
3 ejemplos, 3 fallos
Ejemplos fallidos:
rspec ./spec/system/user_activity_bookmarks_spec.rb:50 # Los marcadores de actividad del usuario pueden borrar la consulta
rspec ./spec/system/user_activity_bookmarks_spec.rb:43 # Los marcadores de actividad del usuario pueden filtrar la lista de marcadores
rspec ./spec/system/user_activity_bookmarks_spec.rb:36 # Los marcadores de actividad del usuario pueden filtrar la lista de marcadores desde la URL
Necesitarás ejecutar bin/ember-cli en segundo plano o ejecutar bin/ember-cli --build antes de que tus cambios en el entorno JS estén disponibles para el proceso de prueba del sistema.
Mi problema es que estas pruebas predeterminadas fallan, incluso sin cambios locales.
Específicamente, para los marcadores fabricados, parece que no están disponibles. Suena como si algo no se estuviera cargando/escribiendo correctamente.
En el PR, agregué una pequeña prueba que no depende de un marcador fabricado, por lo que funciona en mi entorno local.