Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python: MaD on externals #13935

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open

Conversation

yoff
Copy link
Contributor

@yoff yoff commented Aug 9, 2023

This PR rewrites our tests of MaD via flow summaries, such that they use data extensions instead of CVS-row-predicates. This serves two purposes:

  • we stop using CVS-row-predicates so that we may remove this feature in the future
  • we test data extensions

We also switch to the agreed naming convention for data extensions. Since we do not use data extensions yet, the switch only involves the obligatory empty extension.

For this test, we can simply use the convention,
that a file called `[ql-file-stem].ext.yml` will be used
as data extensions exactly for the test represented by `ql-file`.
@yoff yoff added the no-change-note-required This PR does not need a change note label Aug 9, 2023
@yoff yoff requested a review from a team as a code owner August 9, 2023 19:31
@github-actions github-actions bot added the Python label Aug 9, 2023
For these tests, we cannot use the same mechanism, as we want the
data extensions to be available for both tests.

Instead, we create a ql-pack for the test directory and point to
the data entensions from there. This makes the extensions
available for all tests in the directory.
Copy link
Member

@RasmusWL RasmusWL left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think the approach of changing codeql-workspace.yml for the sake of testing MaD in extension files is good. I can think of two alternative ways to fix this:

  1. convince core team to allow a <foo>.ext.yml to apply to all tests within a folder, instead of just <foo>.ql
  2. merge the content of InlineTaintTest.ql and NormalDataflowTest.ql to one file (such as AllTests.ql)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
no-change-note-required This PR does not need a change note Python
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants