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

Update the Autobahn test suite to v0.8.2 #5679

Merged
merged 21 commits into from
Jun 18, 2021
Merged

Update the Autobahn test suite to v0.8.2 #5679

merged 21 commits into from
Jun 18, 2021

Conversation

anesabml
Copy link
Contributor

@anesabml anesabml commented May 8, 2021

What do these changes do?

This patch updates the Autobahn test suite to v0.8.2.

Are there changes in behavior for the user?

No

Related issue number

#4247

Also, this PR incorporates and resolves #5368 by @derlih.

Checklist

  • I think the code is well written
  • Unit tests for the changes exist
  • Documentation reflects the changes
  • If you provide code modification, please add yourself to CONTRIBUTORS.txt
    • The format is <Name> <Surname>.
    • Please keep alphabetical order, the file is sorted by names.
  • Add a new news fragment into the CHANGES folder
    • name it <issue_id>.<type> for example (588.bugfix)
    • if you don't have an issue_id change it to the pr id after creating the pr
    • ensure type is one of the following:
      • .feature: Signifying a new feature.
      • .bugfix: Signifying a bug fix.
      • .doc: Signifying a documentation improvement.
      • .removal: Signifying a deprecation or removal of public API.
      • .misc: A ticket has been closed, but it is not of interest to users.
    • Make sure to use full sentences with correct case and punctuation, for example: "Fix issue with non-ascii contents in doctest text files."

@psf-chronographer psf-chronographer bot added the bot:chronographer:provided There is a change note present in this PR label May 8, 2021
@codecov

This comment has been minimized.

CHANGES/4247.misc Outdated Show resolved Hide resolved
@@ -0,0 +1,15 @@
version: "3.9"
Copy link
Member

Choose a reason for hiding this comment

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

I wonder what would it take to integrate this into pytest

Copy link
Member

Choose a reason for hiding this comment

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

@anesabml add a link to the new PR here, once you have it. This is useful for interlinking related changes.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Here's is the PR

Copy link
Member

Choose a reason for hiding this comment

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

Oh, I thought you'd send it against upstream.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Here's the new PR against upstream #5809

@webknjaz
Copy link
Member

@anesabml did you remove your previous comment? If you can't get this into pytest, we could postpone doing it and you could just try adding separate jobs in the CI maybe calling the same things directly.

@anesabml
Copy link
Contributor Author

@webknjaz integrating with pytest is complicated because pytest-docker-compose usage shines when you have a container that you want to run the test against which is the case when we are testing the client, but for testing the server it's the opposite, which is why I couldn't figure out how to do it yet, which got me thinking if we could drop pytest-docker-compose and use GitHub Actions instead.

@webknjaz
Copy link
Member

You could always just use subprocess invocations and orchestrate spinning the containers from tests (maybe your own fixtures encapsulating this)

@webknjaz
Copy link
Member

For now, please address/comment on my comments, even w/o a CI, and let's move any further integrations to a separate PR.

@anesabml
Copy link
Contributor Author

@webknjaz Should I create an issue first or just open a PR for the integration into CI?

@webknjaz
Copy link
Member

It doesn't really matter, a PR should be enough.

@webknjaz
Copy link
Member

Looks like you marked the comments as resolved but didn't actually make any changes related to them.

@anesabml
Copy link
Contributor Author

OK, I will open a PR.

@anesabml
Copy link
Contributor Author

What comments did I miss? I think I only missed the one about the changes file.

@webknjaz
Copy link
Member

What comments did I miss? I think I only missed the one about the changes file.

I usually expect that the PR author opens each collapsed comment in the files tab to check them. Because this is exactly what I'd do otherwise and it just wastes time because you'll need to look at them anyway but after I find time to go through this. This essentially increases the global time to merge for no good reason.

Copy link
Member

@webknjaz webknjaz left a comment

Choose a reason for hiding this comment

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

👇

tests/autobahn/Dockerfile.aiohttp Show resolved Hide resolved
@@ -0,0 +1,15 @@
version: "3.9"
Copy link
Member

Choose a reason for hiding this comment

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

@anesabml add a link to the new PR here, once you have it. This is useful for interlinking related changes.

@webknjaz webknjaz changed the title Autobahn test suit Update the Autobahn test suite to v0.8.2 May 16, 2021
@anesabml
Copy link
Contributor Author

@webknjaz I want to open the new PR concerning automating autobahn tests and stack it on top of this PR, however, I don't know how to do so because the autobahn branch isn't present in this repository.

@webknjaz
Copy link
Member

It's in your fork, right?

@anesabml
Copy link
Contributor Author

OK, I will open a PR against my fork and change the base branch after this PR gets merged.

@webknjaz
Copy link
Member

I think you could finish this PR and I'd merge it first

@anesabml
Copy link
Contributor Author

Is there anything you want me to add to this PR? one more thing, can you please check my responses to the comments above?

@webknjaz
Copy link
Member

@anesabml at least, there are merge conflicts that need to be addressed to unblock me.

@anesabml
Copy link
Contributor Author

anesabml commented Jun 2, 2021

@webknjaz Should we add a function to extract the results from the generated reports, such as showing how many tests passed and failed and some info about the failing tests?

@webknjaz
Copy link
Member

webknjaz commented Jun 5, 2021

Maybe. But first go through those comments. I need replies.

@anesabml
Copy link
Contributor Author

@webknjaz I am working on building and pushing a docker image to GitHub container registry instead of building it while running the tests, I have created a workflow but it's failing, so this is currently a WIP.

@webknjaz
Copy link
Member

Maybe submit that separately then?

@anesabml
Copy link
Contributor Author

@webknjaz This was suggested in the original PR, this why I want to include It in this PR.

@webknjaz
Copy link
Member

But if the code will rely on the container that is not published, it'll keep failing and it's impossible to test it without the container before merging. So the container building and publishing should be merged first.

@anesabml
Copy link
Contributor Author

Yes, I totally missed that. I'll remove the changes.

@webknjaz
Copy link
Member

Also, looking at the image, it'll end up being useless in the current form because it will always embed the old version of aiohttp while it's required to test the current one. It'd take a separate effort to redesign this, embedding only the runtime and build deps, and maybe making possible to use pre-built wheels instead of compiling aiohttp on install.

@anesabml
Copy link
Contributor Author

Yes, I have thought about that. Do you have any idea how to approach this problem?

@webknjaz
Copy link
Member

I think it should be a separate PR because this one has too many changes and discussions. And regarding how to approach the problem — you'd need an image that only has the runtime deps and maybe build-time ones too. Then, in CI you'd invoke that container with the source dir and dists mounted as a volume + run pip install on the wheeldir to install what's pre-built and only then run the testing with that.

@webknjaz webknjaz enabled auto-merge (squash) June 18, 2021 16:29
@webknjaz webknjaz merged commit fd2ea56 into aio-libs:master Jun 18, 2021
@patchback
Copy link
Contributor

patchback bot commented Jun 18, 2021

Backport to 3.8: 💚 backport PR created

✅ Backport PR branch: patchback/backports/3.8/fd2ea565d5b033d734b7c03cdbf58d9afa54b4a0/pr-5679

Backported as #5807

🤖 @patchback
I'm built with octomachinery and
my source is open — https://github.com/sanitizers/patchback-github-app.

patchback bot pushed a commit that referenced this pull request Jun 18, 2021
Co-authored-by: Dmitry Erlikh <derlih@gmail.com>
Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
(cherry picked from commit fd2ea56)
webknjaz added a commit that referenced this pull request Jun 18, 2021
…0.8.2 (#5807)

* Update the Autobahn test suite to v0.8.2 (#5679)

Co-authored-by: Dmitry Erlikh <derlih@gmail.com>
Co-authored-by: Sviatoslav Sydorenko <wk.cvs.github@sydorenko.org.ua>
(cherry picked from commit fd2ea56)

* Drop unnecessary attrs install

Co-authored-by: Anes Abismail <anesabismail@gmail.com>
Co-authored-by: Sviatoslav Sydorenko <sviat@redhat.com>
@anesabml
Copy link
Contributor Author

Thank you for the suggestion, I will try to work on this when I finish the integration of autobahn tests with pytest.

@anesabml anesabml deleted the autobahn branch June 18, 2021 17:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bot:chronographer:provided There is a change note present in this PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants