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

feat: start merging filtering into testingx #1234

Merged
merged 4 commits into from
Sep 5, 2023
Merged

feat: start merging filtering into testingx #1234

merged 4 commits into from
Sep 5, 2023

Conversation

bassosimone
Copy link
Contributor

@bassosimone bassosimone commented Sep 5, 2023

Checklist

  • I have read the contribution guidelines
  • reference issue for this pull request: engine: throttling-aware jafar replacement probe#1803
  • if you changed anything related to how experiments work and you need to reflect these changes in the ooni/spec repository, please link to the related ooni/spec pull request: N/A
  • if you changed code inside an experiment, make sure you bump its version number: N/A

Description

To continue rewriting Jafar based tests to use netemx, the next step is to adapt the proxies used by Jafar to be usable from within netemx to implement equivalent test cases.

In turn, netemx is using testingx for general-purpose test servers that could also be interesting for other packages.

We also have the netxlite/filtering package, which is ~fine but has a string-based API, where an interface-based API would be more proper and easier to compose. (We historically use a string-based API there because we previously attempted to replace Jafar with code in userspace usinf netxlite/filtering.)

The first step in this quest is therefore to rewrite the DNS code inside netxlite/filtering and move it to testingx.

While there rename netemx.UDPResolverFactory to DNSOverUDPServerFactory for consistency.

To continue rewriting Jafar based tests to use netemx, the next
step is to adapt the proxies used by Jafar to be usable from within
netemx to implementing equivalent test cases.

In turn, netemx is using testingx for general-purpose test servers
that could also be interesting for other packages.

We also have the netxlite/filtering package, which is ~fine but
has a string-based API, where an interface-based API would be more
proper and easier to compose. (We historically use a string-based
API there because we previously attempted to replace Jafar with
code in userspace usinf netxlite/filtering.)

The first step in this quest is therefore to rewrite the DNS code
inside netxlite/filtering to belong to testingx.

Part of ooni/probe#1803.
@bassosimone bassosimone changed the title feat: start merting filtering into testingx feat: start merging filtering into testingx Sep 5, 2023
@bassosimone bassosimone merged commit ccd5934 into master Sep 5, 2023
8 checks passed
@bassosimone bassosimone deleted the issue/1803 branch September 5, 2023 10:52
Murphy-OrangeMud pushed a commit to Murphy-OrangeMud/probe-cli that referenced this pull request Feb 13, 2024
## Checklist

- [x] I have read the [contribution
guidelines](https://github.com/ooni/probe-cli/blob/master/CONTRIBUTING.md)
- [x] reference issue for this pull request:
ooni/probe#1803
- [x] if you changed anything related to how experiments work and you
need to reflect these changes in the ooni/spec repository, please link
to the related ooni/spec pull request: N/A
- [x] if you changed code inside an experiment, make sure you bump its
version number: N/A

## Description

To continue rewriting Jafar based tests to use netemx, the next step is
to adapt the proxies used by Jafar to be usable from within netemx to
implement equivalent test cases.

In turn, netemx is using testingx for general-purpose test servers that
could also be interesting for other packages.

We also have the netxlite/filtering package, which is ~fine but has a
string-based API, where an interface-based API would be more proper and
easier to compose. (We historically use a string-based API there because
we previously attempted to replace Jafar with code in userspace usinf
netxlite/filtering.)

The first step in this quest is therefore to rewrite the DNS code inside
netxlite/filtering and move it to testingx.

While there rename netemx.UDPResolverFactory to DNSOverUDPServerFactory
for consistency.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant