fix: do not use static numeric counters
This commit is contained in:
@ -1,17 +1,19 @@
|
||||
// http://officeopenxml.com/WPbookmark.php
|
||||
import { XmlComponent } from "@file/xml-components";
|
||||
import { bookmarkUniqueNumericId } from "@util/convenience-functions";
|
||||
import { bookmarkUniqueNumericIdGen } from "@util/convenience-functions";
|
||||
|
||||
import { ParagraphChild } from "../paragraph";
|
||||
import { BookmarkEndAttributes, BookmarkStartAttributes } from "./bookmark-attributes";
|
||||
|
||||
export class Bookmark {
|
||||
private readonly bookmarkUniqueNumericId = bookmarkUniqueNumericIdGen();
|
||||
|
||||
public readonly start: BookmarkStart;
|
||||
public readonly children: readonly ParagraphChild[];
|
||||
public readonly end: BookmarkEnd;
|
||||
|
||||
public constructor(options: { readonly id: string; readonly children: readonly ParagraphChild[] }) {
|
||||
const linkId = bookmarkUniqueNumericId();
|
||||
const linkId = this.bookmarkUniqueNumericId();
|
||||
|
||||
this.start = new BookmarkStart(options.id, linkId);
|
||||
this.children = options.children;
|
||||
|
@ -20,12 +20,12 @@ import { TextRun } from "./run";
|
||||
describe("Paragraph", () => {
|
||||
before(() => {
|
||||
stub(convenienceFunctions, "uniqueId").callsFake(() => "test-unique-id");
|
||||
stub(convenienceFunctions, "bookmarkUniqueNumericId").callsFake(() => -101);
|
||||
stub(convenienceFunctions, "bookmarkUniqueNumericIdGen").callsFake(() => () => -101);
|
||||
});
|
||||
|
||||
after(() => {
|
||||
(convenienceFunctions.uniqueId as SinonStub).restore();
|
||||
(convenienceFunctions.bookmarkUniqueNumericId as SinonStub).restore();
|
||||
(convenienceFunctions.bookmarkUniqueNumericIdGen as SinonStub).restore();
|
||||
});
|
||||
|
||||
describe("#constructor()", () => {
|
||||
|
@ -11,12 +11,10 @@ import { ImageRun } from "./image-run";
|
||||
describe("ImageRun", () => {
|
||||
before(() => {
|
||||
stub(convenienceFunctions, "uniqueId").callsFake(() => "test-unique-id");
|
||||
stub(convenienceFunctions, "docPropertiesUniqueNumericId").callsFake(() => 0);
|
||||
});
|
||||
|
||||
after(() => {
|
||||
(convenienceFunctions.uniqueId as SinonStub).restore();
|
||||
(convenienceFunctions.docPropertiesUniqueNumericId as SinonStub).restore();
|
||||
});
|
||||
|
||||
describe("#constructor()", () => {
|
||||
|
Reference in New Issue
Block a user