刘光辉
3 小时以前 cf11e63b659afcc9792ab3e395f1b45d844431a8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import { describe, expect, it } from 'vitest';
 
import { defaultPosition, defaultWatermark } from '../model';
import { previewContent, previewPage } from '../preview';
 
describe('watermark preview', () => {
  it('uses the matching paper dimensions and separate coordinates for both orientations', () => {
    for (const paperType of ['A4', 'A3'] as const) {
      const position = defaultPosition(paperType);
      expect(previewPage(position, 'portrait')).toEqual({
        widthMm: position.paperWidthMm,
        heightMm: position.paperHeightMm,
        xMm: position.portraitXMm,
        yMm: position.portraitYMm,
      });
      expect(previewPage(position, 'landscape')).toEqual({
        widthMm: position.paperHeightMm,
        heightMm: position.paperWidthMm,
        xMm: position.landscapeXMm,
        yMm: position.landscapeYMm,
      });
    }
  });
 
  it('uses sample values for dynamic content without changing saved templates', () => {
    const config = defaultWatermark();
    config.contentTemplate = '文件 {/FILENO} 第 {/CurrPage}/{/TotalPage} 页';
    expect(previewContent(config)).toBe('文件 DOC-2026-001 第 1/3 页');
    expect(config.contentTemplate).toBe('文件 {/FILENO} 第 {/CurrPage}/{/TotalPage} 页');
  });
});