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

Break up and/or build JSON scenarios from code #173

Open
notatallshaw opened this issue Apr 14, 2024 · 1 comment
Open

Break up and/or build JSON scenarios from code #173

notatallshaw opened this issue Apr 14, 2024 · 1 comment

Comments

@notatallshaw
Copy link

I'm finding reading through the JSONs a little challenging, I have two suggestions (and would be happy to work on them at some point):

  • Break them down into more granular scenarios, e.g. I would split prerelease into "prerelease-direct", and "prerelease-transitive"
  • Build JSONs from a code model, allowing to easily encode a number of very similiar tests that only vary by small variables, e.g. ">" and ">=" should pass, or a sequence of tuples of succcess/failures [(">", true), (">=", true), ("==", true), ("!=", false), ("<=", false), ("<=", false)] rathar than writing out 6 different scenarios by hand
@zanieb
Copy link
Member

zanieb commented Apr 14, 2024

I don't feel strongly about reducing the size of the files, i.e. we could have scenarios/prerelease/<kind>.json — I'm a little unsure what this helps with though you just end up needing to navigate across more files?

I think we may want to support JSON5 or YAML to allow comments in the files, that seems helpful for readability.

I don't see any problem with generating scenarios from code, but I think that would be a step before packse which is intended to build packages from scenarios. I don't think packse should be complicated by reading code to generate scenarios, but generating scenarios from code and then processing them with packse sounds nice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants