From b8f32d082fb0b8da096c34c95a31394a5ae80e6a Mon Sep 17 00:00:00 2001 From: Tevin Wang Date: Wed, 23 Aug 2023 19:00:37 -0700 Subject: [PATCH] Clean up docs testing - exclude by glob instead of by file (#450) --- docs/test/md_testing.js | 14 ++++++-------- docs/test/md_testing.py | 15 ++++++++------- 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/docs/test/md_testing.js b/docs/test/md_testing.js index faa6a62aa..7f8a6f091 100644 --- a/docs/test/md_testing.js +++ b/docs/test/md_testing.js @@ -2,20 +2,17 @@ const glob = require("glob"); const fs = require("fs"); const path = require("path"); -const excludedFiles = [ +const globString = "../src/**/*.md"; +const excludedGlobs = [ "../src/fts.md", "../src/embedding.md", - "../src/ann_indexes.md", - "../src/examples/serverless_lancedb_with_s3_and_lambda.md", - "../src/examples/serverless_qa_bot_with_modal_and_langchain.md", - "../src/examples/transformerjs_embedding_search_nodejs.md", - "../src/examples/youtube_transcript_bot_with_nodejs.md", + "../src/examples/*.md", "../src/guides/tables.md", ]; + const nodePrefix = "javascript"; const nodeFile = ".js"; const nodeFolder = "node"; -const globString = "../src/**/*.md"; const asyncPrefix = "(async () => {\n"; const asyncSuffix = "})();"; @@ -34,6 +31,7 @@ function* yieldLines(lines, prefix, suffix) { } const files = glob.sync(globString, { recursive: true }); +const excludedFiles = glob.sync(excludedGlobs, { recursive: true }); for (const file of files.filter((file) => !excludedFiles.includes(file))) { const lines = []; @@ -51,4 +49,4 @@ for (const file of files.filter((file) => !excludedFiles.includes(file))) { fs.mkdirSync(path.dirname(outPath), { recursive: true }); fs.writeFileSync(outPath, asyncPrefix + "\n" + lines.join("\n") + asyncSuffix); } -} +} \ No newline at end of file diff --git a/docs/test/md_testing.py b/docs/test/md_testing.py index d08d9d437..081ab9fde 100644 --- a/docs/test/md_testing.py +++ b/docs/test/md_testing.py @@ -2,12 +2,11 @@ import glob from typing import Iterator from pathlib import Path -excluded_files = [ +glob_string = "../src/**/*.md" +excluded_globs = [ "../src/fts.md", "../src/embedding.md", - "../src/examples/serverless_lancedb_with_s3_and_lambda.md", - "../src/examples/serverless_qa_bot_with_modal_and_langchain.md", - "../src/examples/youtube_transcript_bot_with_nodejs.md", + "../src/examples/*.md", "../src/integrations/voxel51.md", "../src/guides/tables.md" ] @@ -15,7 +14,9 @@ excluded_files = [ python_prefix = "py" python_file = ".py" python_folder = "python" -glob_string = "../src/**/*.md" + +files = glob.glob(glob_string, recursive=True) +excluded_files = [f for excluded_glob in excluded_globs for f in glob.glob(excluded_glob, recursive=True)] def yield_lines(lines: Iterator[str], prefix: str, suffix: str): in_code_block = False @@ -31,7 +32,7 @@ def yield_lines(lines: Iterator[str], prefix: str, suffix: str): elif in_code_block: yield line[strip_length:] -for file in filter(lambda file: file not in excluded_files, glob.glob(glob_string, recursive=True)): +for file in filter(lambda file: file not in excluded_files, files): with open(file, "r") as f: lines = list(yield_lines(iter(f), "```", "```")) @@ -40,4 +41,4 @@ for file in filter(lambda file: file not in excluded_files, glob.glob(glob_strin print(out_path) out_path.parent.mkdir(exist_ok=True, parents=True) with open(out_path, "w") as out: - out.writelines(lines) + out.writelines(lines) \ No newline at end of file