Heché un vistazo; el problema está aquí:
Esto es lo que sucede.
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:
return this._searchTerm !== undefined ? this._searchTerm : this.q;
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?
Registros
(base) arkshine@HOME:~/discourse$ bin/rspec spec/system/user_activity_bookmarks_spec.rb
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: superCapybara::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: superCapybara::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