From 5cfb3a74ba2deb37ee51a457a4e2fe12cdbfcf59 Mon Sep 17 00:00:00 2001 From: Technote Date: Fri, 9 Dec 2022 01:01:27 +0900 Subject: [PATCH 1/3] chore: tweaks --- __tests__/file.test.ts | 2 +- __tests__/params.test.ts | 4 ++-- __tests__/transform-custom-mode.test.ts | 2 +- __tests__/transform-footer.test.ts | 2 +- __tests__/transform-html.test.ts | 2 +- __tests__/transform-nested-markdown.test.ts | 2 +- __tests__/transform-not-transformed.test.ts | 2 +- __tests__/transform-override-params.test.ts | 2 +- __tests__/transform-title.test.ts | 2 +- __tests__/transform-weird-headers.test.ts | 2 +- __tests__/transform.test.ts | 6 +++--- __tests__/utils.test.ts | 2 +- 12 files changed, 15 insertions(+), 15 deletions(-) diff --git a/__tests__/file.test.ts b/__tests__/file.test.ts index 99e3675..08c588a 100644 --- a/__tests__/file.test.ts +++ b/__tests__/file.test.ts @@ -1,7 +1,7 @@ /* eslint-disable no-magic-numbers */ import { resolve } from 'path'; import { describe, expect, it, vi } from 'vitest'; -import { findMarkdownFiles } from '../src'; +import { findMarkdownFiles } from '../src/index.js'; describe('findMarkdownFiles', () => { it('should find markdown files', () => { diff --git a/__tests__/params.test.ts b/__tests__/params.test.ts index dc815f4..d85e5cf 100644 --- a/__tests__/params.test.ts +++ b/__tests__/params.test.ts @@ -1,7 +1,7 @@ /* eslint-disable no-magic-numbers */ import { describe, expect, it } from 'vitest'; -import { CLOSING_COMMENT, OPENING_COMMENT } from '../src'; -import { extractParams, getStartSection, getParamsSection } from '../src/lib/params'; +import { CLOSING_COMMENT, OPENING_COMMENT } from '../src/index.js'; +import { extractParams, getStartSection, getParamsSection } from '../src/lib/params.js'; describe('extractParams', () => { const opening = OPENING_COMMENT.replace('\n', ' '); diff --git a/__tests__/transform-custom-mode.test.ts b/__tests__/transform-custom-mode.test.ts index 504f76a..f8c1f92 100644 --- a/__tests__/transform-custom-mode.test.ts +++ b/__tests__/transform-custom-mode.test.ts @@ -2,7 +2,7 @@ import { readFileSync } from 'fs'; import { resolve } from 'path'; import { describe, expect, it } from 'vitest'; -import { transform } from '../src'; +import { transform } from '../src/index.js'; describe('transform', () => { it('run in html mode', () => { diff --git a/__tests__/transform-footer.test.ts b/__tests__/transform-footer.test.ts index 663f219..6361c66 100644 --- a/__tests__/transform-footer.test.ts +++ b/__tests__/transform-footer.test.ts @@ -2,7 +2,7 @@ import { readFileSync } from 'fs'; import { resolve } from 'path'; import { describe, expect, it } from 'vitest'; -import { transform } from '../src'; +import { transform } from '../src/index.js'; describe('transform', () => { it('add footer', () => { diff --git a/__tests__/transform-html.test.ts b/__tests__/transform-html.test.ts index 9b257a1..249f556 100644 --- a/__tests__/transform-html.test.ts +++ b/__tests__/transform-html.test.ts @@ -2,7 +2,7 @@ import { readFileSync } from 'fs'; import { resolve } from 'path'; import { describe, expect, it } from 'vitest'; -import { transform } from '../src'; +import { transform } from '../src/index.js'; describe('transform', () => { it('given a file that includes html with header tags and maxHeaderLevel 8', () => { diff --git a/__tests__/transform-nested-markdown.test.ts b/__tests__/transform-nested-markdown.test.ts index 3bcc996..ff9e75f 100644 --- a/__tests__/transform-nested-markdown.test.ts +++ b/__tests__/transform-nested-markdown.test.ts @@ -2,7 +2,7 @@ import { readFileSync } from 'fs'; import { resolve } from 'path'; import { describe, expect, it } from 'vitest'; -import { transform } from '../src'; +import { transform } from '../src/index.js'; describe('transform', () => { it('\nhandle inline links and images', () => { diff --git a/__tests__/transform-not-transformed.test.ts b/__tests__/transform-not-transformed.test.ts index 54e6ab8..a85b4ec 100644 --- a/__tests__/transform-not-transformed.test.ts +++ b/__tests__/transform-not-transformed.test.ts @@ -2,7 +2,7 @@ import { readFileSync } from 'fs'; import { resolve } from 'path'; import { describe, expect, it } from 'vitest'; -import { transform } from '../src'; +import { transform } from '../src/index.js'; describe('transform', () => { it('update only', () => { diff --git a/__tests__/transform-override-params.test.ts b/__tests__/transform-override-params.test.ts index 4796621..63f1e11 100644 --- a/__tests__/transform-override-params.test.ts +++ b/__tests__/transform-override-params.test.ts @@ -2,7 +2,7 @@ import { readFileSync } from 'fs'; import { resolve } from 'path'; import { describe, expect, it } from 'vitest'; -import { transform } from '../src'; +import { transform } from '../src/index.js'; describe('transform', () => { it('override params (empty toc)', () => { diff --git a/__tests__/transform-title.test.ts b/__tests__/transform-title.test.ts index 00743ba..5bc5cb3 100644 --- a/__tests__/transform-title.test.ts +++ b/__tests__/transform-title.test.ts @@ -2,7 +2,7 @@ import { readFileSync } from 'fs'; import { resolve } from 'path'; import { describe, expect, it } from 'vitest'; -import { transform } from '../src'; +import { transform } from '../src/index.js'; describe('transform', () => { it('overwrite existing title', () => { diff --git a/__tests__/transform-weird-headers.test.ts b/__tests__/transform-weird-headers.test.ts index 38104d8..a8ca696 100644 --- a/__tests__/transform-weird-headers.test.ts +++ b/__tests__/transform-weird-headers.test.ts @@ -2,7 +2,7 @@ import { readFileSync } from 'fs'; import { resolve } from 'path'; import { describe, expect, it } from 'vitest'; -import { transform } from '../src'; +import { transform } from '../src/index.js'; describe('transform', () => { it('given a file with edge-case header names', () => { diff --git a/__tests__/transform.test.ts b/__tests__/transform.test.ts index bab1b1e..ee4ca7b 100644 --- a/__tests__/transform.test.ts +++ b/__tests__/transform.test.ts @@ -1,8 +1,8 @@ /* eslint-disable no-magic-numbers */ import { describe, expect, it } from 'vitest'; -import { transform } from '../src'; -import { OPENING_COMMENT, CLOSING_COMMENT } from '../src'; -import { getLinesToToc, matchesStart, matchesEnd } from '../src/lib/transform'; +import { transform } from '../src/index.js'; +import { OPENING_COMMENT, CLOSING_COMMENT } from '../src/index.js'; +import { getLinesToToc, matchesStart, matchesEnd } from '../src/lib/transform.js'; const check = ( name: string, diff --git a/__tests__/utils.test.ts b/__tests__/utils.test.ts index f315e3f..3641f38 100644 --- a/__tests__/utils.test.ts +++ b/__tests__/utils.test.ts @@ -1,6 +1,6 @@ /* eslint-disable no-magic-numbers */ import { describe, expect, it } from 'vitest'; -import { replaceVariables } from '../src/lib/utils'; +import { replaceVariables } from '../src/lib/utils.js'; describe('replaceVariables', () => { it('should replace variables', () => { From 627dbf551d441932b1b28eaf9d389df0c8d77cac Mon Sep 17 00:00:00 2001 From: Technote Date: Fri, 9 Dec 2022 01:17:25 +0900 Subject: [PATCH 2/3] feat: add skip feature (#93) --- __tests__/file.test.ts | 4 ++++ __tests__/fixtures/readme-skipped.md | 14 ++++++++++++++ __tests__/transform-not-transformed.test.ts | 8 ++++++++ __tests__/transform.test.ts | 14 +++++++++++++- src/constant.ts | 1 + src/lib/transform.ts | 8 +++++++- src/types.ts | 1 + 7 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 __tests__/fixtures/readme-skipped.md diff --git a/__tests__/file.test.ts b/__tests__/file.test.ts index 08c588a..a680b3b 100644 --- a/__tests__/file.test.ts +++ b/__tests__/file.test.ts @@ -26,6 +26,10 @@ describe('findMarkdownFiles', () => { 'name': 'readme-not-updated.md', 'path': resolve(__dirname, 'fixtures/readme-not-updated.md'), }, + { + 'name': 'readme-skipped.md', + 'path': resolve(__dirname, 'fixtures/readme-skipped.md'), + }, { 'name': 'readme-update-only.md', 'path': resolve(__dirname, 'fixtures/readme-update-only.md'), diff --git a/__tests__/fixtures/readme-skipped.md b/__tests__/fixtures/readme-skipped.md new file mode 100644 index 0000000..8ee4020 --- /dev/null +++ b/__tests__/fixtures/readme-skipped.md @@ -0,0 +1,14 @@ + +# Hello, world! + +> You can make code blocks with three back ticks: +> +> ``` + +# Add this header + +

And also this one

+ +> ``` + + diff --git a/__tests__/transform-not-transformed.test.ts b/__tests__/transform-not-transformed.test.ts index a85b4ec..54d3580 100644 --- a/__tests__/transform-not-transformed.test.ts +++ b/__tests__/transform-not-transformed.test.ts @@ -20,4 +20,12 @@ describe('transform', () => { expect(headers.transformed).toBe(false); expect(headers.reason).toBe('not updated'); }); + + it('skipped', () => { + const content = readFileSync(resolve(__dirname, 'fixtures/readme-skipped.md'), 'utf8'); + const headers = transform(content); + + expect(headers.transformed).toBe(false); + expect(headers.reason).toBe('skipped'); + }); }); diff --git a/__tests__/transform.test.ts b/__tests__/transform.test.ts index ee4ca7b..740bba7 100644 --- a/__tests__/transform.test.ts +++ b/__tests__/transform.test.ts @@ -2,7 +2,7 @@ import { describe, expect, it } from 'vitest'; import { transform } from '../src/index.js'; import { OPENING_COMMENT, CLOSING_COMMENT } from '../src/index.js'; -import { getLinesToToc, matchesStart, matchesEnd } from '../src/lib/transform.js'; +import { getLinesToToc, matchesStart, matchesEnd, matchesSkip } from '../src/lib/transform.js'; const check = ( name: string, @@ -620,3 +620,15 @@ describe('matchesEnd', () => { expect(matchesEnd(['')).toBe(false); }); }); + +describe('matchesSkip', () => { + it('should return true', () => { + expect(matchesSkip()('')).toBe(true); + expect(matchesSkip(['')).toBe(true); + }); + + it('should return false', () => { + expect(matchesSkip()('')).toBe(false); + expect(matchesSkip(['')).toBe(false); + }); +}); diff --git a/src/constant.ts b/src/constant.ts index bc94200..6766908 100644 --- a/src/constant.ts +++ b/src/constant.ts @@ -3,6 +3,7 @@ export const OPENING_COMMENT = ''; export const CHECK_OPENING_COMMENT = ' ', // checkOpeningComments: ['