Skip to content

Conversation

@crapitea
Copy link
Contributor

This commit introduces initial support for the Zephyr Squad (server) variant. Only a number of the available Zephyr API calls are introduced by this commit.

All testing for this commit was done on a self-hosted Zephyr Squad instance.

@nassauwinter
Copy link
Owner

Hi @crapitea!

This is a massive update for the package. Thank you. I need some time to test code, complete the review and provide you with a feedback.

@nassauwinter nassauwinter self-assigned this Jul 2, 2023
@nassauwinter nassauwinter added the enhancement New feature or request label Jul 2, 2023
Copy link
Owner

@nassauwinter nassauwinter left a comment

Choose a reason for hiding this comment

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

You have created a good functionality for Zephyr Squad here 👍

Could you please modify it according to my comments?

@crapitea crapitea force-pushed the zephyr-squad-support branch from d651795 to a7dcf81 Compare July 14, 2023 11:18
@crapitea crapitea marked this pull request as draft July 14, 2023 11:25
@crapitea crapitea force-pushed the zephyr-squad-support branch 5 times, most recently from ae33b2d to 001dced Compare July 15, 2023 21:42
@crapitea crapitea marked this pull request as ready for review July 15, 2023 21:44
@crapitea crapitea force-pushed the zephyr-squad-support branch 2 times, most recently from 0244e80 to 6d08887 Compare July 16, 2023 07:47
@crapitea crapitea requested a review from nassauwinter July 17, 2023 06:44
@crapitea crapitea force-pushed the zephyr-squad-support branch from 6d08887 to 2d8ad1b Compare July 21, 2023 15:27
@crapitea crapitea force-pushed the zephyr-squad-support branch 6 times, most recently from 5b91e12 to 9494ac4 Compare July 31, 2023 09:53
@crapitea crapitea marked this pull request as draft July 31, 2023 20:23
@crapitea crapitea force-pushed the zephyr-squad-support branch 3 times, most recently from 27c578b to c5aa9ec Compare August 1, 2023 08:30
@crapitea crapitea marked this pull request as ready for review August 1, 2023 08:31
@crapitea
Copy link
Contributor Author

crapitea commented Aug 1, 2023

A number of modifications needed to be made based on the differences between Squad and Scale.

  1. Squad has quite a different ways to bring paged results, so I split the existing Zephyr Session class into a common one with 2 children that implements only the differences needed for Scale and Squad.
  2. The function parameters I've left them as camelCase to ease the way a developer would use the wrapper. In this case, a developer can just copy/paste the parameters from the documentation and it will just work when passing them to a function.

@crapitea crapitea force-pushed the zephyr-squad-support branch from c5aa9ec to cbceec3 Compare August 3, 2023 20:29
@crapitea crapitea force-pushed the zephyr-squad-support branch from cbceec3 to 61aadb2 Compare August 19, 2023 10:19
@super-vanilla-bear
Copy link

Hello, guys. I was wondering how things are going with this PR and if there is anything I can do to help?
The thing is, I also need a binding to work with the Zephyr Squad API, and the solution from this PR is exactly what I need.

So, can this PR be reviewed one more time, or do you need help with something to get things moving?
Thanks in advance for your work.

@crapitea crapitea force-pushed the zephyr-squad-support branch from 61aadb2 to 3395237 Compare August 24, 2023 12:25
@crapitea
Copy link
Contributor Author

crapitea commented Aug 24, 2023

Hello, guys. I was wondering how things are going with this PR and if there is anything I can do to help? The thing is, I also need a binding to work with the Zephyr Squad API, and the solution from this PR is exactly what I need.

So, can this PR be reviewed one more time, or do you need help with something to get things moving? Thanks in advance for your work.

At the present time the tox verifications should be resolved.

The problem with that is that a decision should be made regarding how the function parameters should look. The Zephyr API uses camelCase instead of snake_case and considering the fact that not all parameters are documented, I decided that required parameters to use the same names like the ones in the documentation. This is a lot easier from a user's perspective since all parameters are the same as the ones in the documentation, but it's not pythonic.

Solutions that I will implement in this PR to fix this:

  1. For the camelCase, I will make the required parameters follow snake_case convention while the remaining keywords will remain in camelCase. This is the same approach taken by Zephyr Scale Cloud implementation.
  2. Add the following exception to tox: too-many-public-methods. Unfortunately, some endpoints have more than 20 methods so I will either raise this limit to 30, or ignore it.

@crapitea crapitea force-pushed the zephyr-squad-support branch from 3395237 to a15f4cd Compare August 25, 2023 07:46
@crapitea
Copy link
Contributor Author

Hello, guys. I was wondering how things are going with this PR and if there is anything I can do to help? The thing is, I also need a binding to work with the Zephyr Squad API, and the solution from this PR is exactly what I need.

So, can this PR be reviewed one more time, or do you need help with something to get things moving? Thanks in advance for your work.

Can you also test this PR to make sure that everything is working as expected? For the moment, all needed modifications / blockers are fixed.

@crapitea crapitea force-pushed the zephyr-squad-support branch 2 times, most recently from 5c7f79e to 2cdb4aa Compare August 25, 2023 11:21
@super-vanilla-bear
Copy link

@crapitea glad to hear it!
Actually, I've already played around with your solution some time ago and didn't find any problems, but I'll try it again and report back if I have anything to say.

@crapitea crapitea force-pushed the zephyr-squad-support branch from 2cdb4aa to db6ae7c Compare August 30, 2023 13:52
@crapitea crapitea force-pushed the zephyr-squad-support branch 4 times, most recently from fbf4c2e to 18c3d51 Compare October 28, 2023 18:06
@crapitea
Copy link
Contributor Author

crapitea commented Oct 29, 2023

At the present time, everything needed was implemented to have support for the most commonly used functions of Zephyr Squad Server. Can you please review this and see if there is anything else that can be improved/reworked?

@crapitea crapitea force-pushed the zephyr-squad-support branch 3 times, most recently from 48e2bfb to 9467feb Compare November 2, 2023 08:21
This commit introduces initial support for the Zephyr Squad (server)
variant. Only a number of the available Zephyr API calls are introduced
by this commit.

All testing for this commit was done on a self-hosted Zephyr Squad instance.
@tiagomendes7
Copy link

@crapitea I also need support for the Zephyr Squad. How is this going ?

@crapitea
Copy link
Contributor Author

There haven't been any update for this in quite a while. At the moment, this PR has to be rebased on the latest master to work as expected. However, I don't know if this functionality expansion is even wanted for this module, so until I know that this will be merged if all issues are resolved, I won't continue working on this.

@tiagomendes7
Copy link

@nassauwinter Can you help here ?

@Steinhagen
Copy link

@tiagomendes7 For now, I've created a for of this repository that also has support for Zephyr Squad: https://pypi.org/project/zephyr-test-management/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants