收口报销详情返回与金额展示(07-27-yang-jun-reimbursement-readiness)
这个提交包含在:
@@ -586,9 +586,9 @@ async function collectVisualMetrics(page: Page) {
|
||||
const activeRgb = activeStyle ? parseRgb(activeStyle.backgroundColor) : null;
|
||||
const stickyActions = document.querySelector("[data-testid='mobile-reimbursement-sticky-actions']");
|
||||
const stickyRect = stickyActions?.getBoundingClientRect();
|
||||
const addButton = document.querySelector("[data-testid='mobile-reimbursement-sticky-invoice-add']");
|
||||
const materialAddButton = document.querySelector("[data-testid='reimbursement-invoice-add']");
|
||||
const stickyAddButton = document.querySelector("[data-testid='mobile-reimbursement-sticky-invoice-add']");
|
||||
const submitButton = document.querySelector("[data-testid='reimbursement-submit']");
|
||||
const addRect = addButton?.getBoundingClientRect();
|
||||
const submitRect = submitButton?.getBoundingClientRect();
|
||||
const bodyText = document.body?.innerText ?? "";
|
||||
|
||||
@@ -605,8 +605,9 @@ async function collectVisualMetrics(page: Page) {
|
||||
stickyActionsVisible: Boolean(stickyRect && stickyRect.height > 0 && stickyRect.bottom <= window.innerHeight + 2),
|
||||
stickyBottomGap: stickyRect ? Math.round(window.innerHeight - stickyRect.bottom) : null,
|
||||
stickyHeight: stickyRect ? Math.round(stickyRect.height) : 0,
|
||||
stickyButtonsSameRow: Boolean(addRect && submitRect && Math.abs(addRect.top - submitRect.top) <= 2),
|
||||
stickyButtonMinHeight: Math.min(addRect?.height ?? 0, submitRect?.height ?? 0),
|
||||
materialInvoiceAddVisible: Boolean(materialAddButton?.getBoundingClientRect().height),
|
||||
stickyInvoiceAddVisible: Boolean(stickyAddButton?.getBoundingClientRect().height),
|
||||
stickyButtonMinHeight: submitRect?.height ?? 0,
|
||||
activeElementTestId: document.activeElement?.getAttribute("data-testid") ?? "",
|
||||
bodyText,
|
||||
};
|
||||
@@ -732,7 +733,8 @@ test.describe("R111 国内报销发票与附件双端体验", () => {
|
||||
expect(beforeDialogMetrics.navHeight).toBe(0);
|
||||
expect(beforeDialogMetrics.stickyActionsVisible).toBe(true);
|
||||
expect(beforeDialogMetrics.stickyBottomGap).toBeLessThanOrEqual(2);
|
||||
expect(beforeDialogMetrics.stickyButtonsSameRow).toBe(true);
|
||||
expect(beforeDialogMetrics.materialInvoiceAddVisible).toBe(true);
|
||||
expect(beforeDialogMetrics.stickyInvoiceAddVisible).toBe(false);
|
||||
expect(beforeDialogMetrics.stickyButtonMinHeight).toBeGreaterThanOrEqual(44);
|
||||
|
||||
await mobile.page.getByTestId("reimbursement-invoice-add").click();
|
||||
|
||||
在新工单中引用
屏蔽一个用户