Browse Source

test(e2e): renaming between cases

Junyi Du 2 years ago
parent
commit
0d88792eb4
2 changed files with 12 additions and 2 deletions
  1. 10 1
      e2e-tests/page-rename.spec.ts
  2. 2 1
      src/main/frontend/search.cljs

+ 10 - 1
e2e-tests/page-rename.spec.ts

@@ -1,6 +1,6 @@
 import { expect, Page } from '@playwright/test'
 import { test } from './fixtures'
-import { createPage, randomLowerString, randomString, renamePage } from './utils'
+import { createPage, randomLowerString, randomString, renamePage, searchPage } from './utils'
 
 /***
  * Test rename feature
@@ -64,6 +64,15 @@ test('page rename test', async ({ page }) => {
   await page_rename_test(page, "abcd", "a.b.c.d")
   await page_rename_test(page, "abcd", "a/b/c/d")
 
+  // The page name in page search are not updated after changing the capitalization of the page name #9577
+  // https://github.com/logseq/logseq/issues/9577
+  // Expect the page name to be updated in the search results
+  await page_rename_test(page, "DcBA", "dCBA")
+  const results = await searchPage(page, "DcBA")
+  // search result 0 is the new page & 1 is the new whiteboard
+  const thirdResultRow = await results[2].innerText()
+  expect(thirdResultRow).toContain("dCBA");
+  expect(thirdResultRow).not.toContain("DcBA");
 })
 
 // TODO introduce more samples when #4722 is fixed

+ 2 - 1
src/main/frontend/search.cljs

@@ -261,12 +261,13 @@
   (let [data (:tx-data tx-report)
         datoms (filter
                 (fn [datom]
+                  ;; Capture any direct change on page display title, page ref or block content
                   (contains? #{:block/name :block/original-name :block/content} (:a datom)))
                 data)]
     (when (seq datoms)
       (let [datoms (group-by :a datoms)
             blocks (:block/content datoms)
-            pages (concat
+            pages (concat ;; Duplicated eids are handled in `get-pages-from-datoms-impl`
                    (:block/name datoms)
                    (:block/original-name datoms))]
         (merge (get-blocks-from-datoms-impl blocks)