hunk.code_window:         await openAdvancedSearchDialog(target);
           assert.containsOnce(target, ".modal");
           await click(target, ".modal footer button:nth-child(1)");
           assert.containsNone(target, ".modal");
           assert.containsNone(target, ".o_filter_menu .dropdown-menu");
       });
       QUnit.test("start with an empty query", async function (assert) {
           await makeTestComponent();
  
hunk.labels: keep keep keep keep keep replace keep keep keep keep
hunk.file_path: addons/web/static/tests/search/advanced_search_dialog_tests.js
hunk.type: replace
file: /** @odoo-module **/
  
  import { registry } from "../registry";
  
  export const titleService = {
      start() {
          const titleParts = {};
  
          function getParts() {
              return Object.assign({}, titleParts);
          }
  
          function setParts(parts) {
              for (const key in parts) {
                  const val = parts[key];
                  if (!val) {
                      delete titleParts[key];
                  } else {
                      titleParts[key] = val;
                  }
              }
              document.title = Object.values(titleParts).join(" - ");
          }
  
          return {
              /**
               * @returns {string}
               */
              get current() {
                  return document.title;
              },
              getParts,
              setParts,
          };
      },
  };
  
  registry.category("services").add("title", titleService);
  