From 09f487f1421114e7bdbbdaf1c1b742738a072404 Mon Sep 17 00:00:00 2001 From: BuildTools Date: Mon, 7 Oct 2024 12:15:42 +0200 Subject: [PATCH] repairing the FILTER variable to take recursive wildcards ** into account --- MiniC/test_codegen.py | 20 ++++++++++---------- MiniC/test_interpreter.py | 5 +++-- TP03/tp3.pdf | Bin 229785 -> 229774 bytes TP04/tp4a.pdf | Bin 172605 -> 172605 bytes 4 files changed, 13 insertions(+), 12 deletions(-) diff --git a/MiniC/test_codegen.py b/MiniC/test_codegen.py index 5cb0294..05228cb 100755 --- a/MiniC/test_codegen.py +++ b/MiniC/test_codegen.py @@ -6,7 +6,7 @@ import pytest import glob from test_expect_pragma import ( TestExpectPragmas, TestCompiler, - filter_pathnames, cat + cat ) """ @@ -69,21 +69,21 @@ MINIC_EVAL = os.path.join( # MINIC_EVAL = os.path.join( # HERE, '..', '..', 'TP03', 'MiniC-type-interpret', 'Main.py') -# Avoid duplicates -ALL_IN_MEM_FILES = list(set(ALL_FILES) | set(ALLOC_FILES)) -ALL_IN_MEM_FILES.sort() -ALL_FILES = list(set(ALL_FILES)) -ALL_FILES.sort() - if 'TEST_FILES' in os.environ: ALLOC_FILES = ALL_FILES ALL_IN_MEM_FILES = ALL_FILES +ALL_IN_MEM_FILES = list(set(ALL_FILES) | set(ALLOC_FILES)) if 'FILTER' in os.environ: - ALL_FILES = filter_pathnames(ALL_FILES, os.environ['FILTER']) - ALLOC_FILES = filter_pathnames(ALLOC_FILES, os.environ['FILTER']) - ALL_IN_MEM_FILES = filter_pathnames(ALL_IN_MEM_FILES, os.environ['FILTER']) + FILTER_FILES = glob.glob(os.path.join(HERE, os.environ['FILTER']), recursive=True) + ALL_FILES = list(set(FILTER_FILES) & set(ALL_FILES)) + ALLOC_FILES = list(set(FILTER_FILES) & set(ALLOC_FILES)) + ALL_IN_MEM_FILES = list(set(FILTER_FILES) & set(ALL_IN_MEM_FILES)) +# Avoid duplicates +ALL_IN_MEM_FILES.sort() +ALL_FILES = list(set(ALL_FILES)) +ALL_FILES.sort() class TestCodeGen(TestExpectPragmas, TestCompiler): DISABLE_CODEGEN = DISABLE_CODEGEN diff --git a/MiniC/test_interpreter.py b/MiniC/test_interpreter.py index 1da3fe2..9095ba3 100755 --- a/MiniC/test_interpreter.py +++ b/MiniC/test_interpreter.py @@ -5,7 +5,7 @@ import os import sys from test_expect_pragma import ( TestExpectPragmas, cat, - TestCompiler, filter_pathnames + TestCompiler ) HERE = os.path.dirname(os.path.realpath(__file__)) @@ -34,7 +34,8 @@ if 'TEST_FILES' in os.environ: MINIC_EVAL = os.path.join(IMPLEM_DIR, 'MiniCC.py') if 'FILTER' in os.environ: - ALL_FILES = filter_pathnames(ALL_FILES, os.environ['FILTER']) + FILTER_FILES = glob.glob(os.path.join(HERE, os.environ['FILTER']), recursive=True) + ALL_FILES = list(set(FILTER_FILES) & set(ALL_FILES)) class TestInterpret(TestExpectPragmas, TestCompiler): diff --git a/TP03/tp3.pdf b/TP03/tp3.pdf index 84a6c461c870f8d0fbc7485cf4971529156d4dab..84dc91450d3c44bdc7aa9cacfc4382912671215a 100644 GIT binary patch delta 3047 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 delta 3055 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 diff --git a/TP04/tp4a.pdf b/TP04/tp4a.pdf index b2cdd05d3f6e76227498dcdb7bc7380ea82d077b..604e689135063c9953d1d8dd8f7babf67e1857ab 100644 GIT binary patch delta 114 zcmdmcglq2+u7(!IElloH+06}&3{4Hpr~6H1l7Vry7fxkb%kJ!C>}X+TY+-0@Z0_df i;%wmT=HlpV