C’est vraiment étrange, j’ai ajouté une étiquette de priorité à cela, quelqu’un examinera cela dans les 4 prochaines semaines, mais si quelqu’un a envie de soumettre une PR entre-temps, vous êtes les bienvenus.
Lorsque vous supprimez le dernier caractère, get est appelé. À ce stade, _searchTerm est vide.
Cependant, this._searchTerm || this.q traitera la chaîne vide comme fausse, et la valeur de q sera affichée à la place.
Une solution rapide pourrait être de vérifier de cette façon :
Note : la valeur initiale de _searchTerm est undefined.
Note : en raison de computed("q"), le problème ne se produit pas lorsque vous sélectionnez/supprimez (probablement parce que le timing est trop serré pour invalider le cache ?)
Je voulais faire une PR, mais...
les tests principaux (sans modification) échouent pour une raison quelconque.
J’utilise bin/rspec spec/system/user_activity_bookmarks_spec.rb.
Le log indique que la recherche est absente ou que les signets ne sont pas créés.
Manque-t-il quelque chose ?
Randomized with seed 38172
unknown OID 931304: failed to recognize type of ‘embeddings’. It will be treated as String.
FFF
Failures:
User activity bookmarks can clear the query
Failure/Error: super
Capybara::ElementNotFound:
Unable to find field “bookmark-search” that is not disabled
~~~~~ END JS LOGS ~~~~
# ./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>'
User activity bookmarks can filter the list of bookmarks
Failure/Error: super
Capybara::ElementNotFound:
Unable to find field “bookmark-search” that is not disabled
~~~~~ END JS LOGS ~~~~
# ./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>'
User activity bookmarks can filter the list of bookmarks from the URL
Failure/Error: expect(user_activity_bookmarks).to have_topic(bookmark_1.bookmarkable.topic)
expected #<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> to be truthy, got false
~~~~~ END JS LOGS ~~~~
# ./spec/system/user_activity_bookmarks_spec.rb:40:in `block (2 levels) in <main>'
Finished in 21.7 seconds (files took 3.8 seconds to load)
3 examples, 3 failures
Failed examples:
rspec ./spec/system/user_activity_bookmarks_spec.rb:50 # User activity bookmarks can clear the query
rspec ./spec/system/user_activity_bookmarks_spec.rb:43 # User activity bookmarks can filter the list of bookmarks
rspec ./spec/system/user_activity_bookmarks_spec.rb:36 # User activity bookmarks can filter the list of bookmarks from the URL
Vous devrez exécuter bin/ember-cli en arrière-plan ou exécuter bin/ember-cli --build avant que vos modifications dans le domaine JS ne soient disponibles pour le processus de test système.
Mon problème est que ces tests par défaut échouent, même sans modifications locales.
Plus précisément, pour les signets fabriqués, ils semblent ne pas être disponibles. Il semble que quelque chose ne soit pas chargé/écrit correctement.
Dans la PR, j’ai ajouté un petit test qui ne repose pas sur un signet fabriqué, il fonctionne donc localement.