-
Notifications
You must be signed in to change notification settings - Fork 8
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
Test against Py 3.11 + Break out non-DryRun-executing functions in blackbox.py
into new script inspector.py
#48
Conversation
@@ -46,222 +35,6 @@ | |||
MAX_APP_ARG_LIMIT = atc.AtomicTransactionComposer.MAX_APP_ARG_LIMIT | |||
|
|||
|
|||
class DryRunProperty(Enum): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This, and several other non-DryRun-execution related code has been broken out to inspector.py
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
much better
@@ -0,0 +1,847 @@ | |||
from base64 import b64decode |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All this code came from blackbox.py
. No changes other than the re-location.
blackbox.py
into new script inspector.py
inspector.max_stack_height() == 2 | ||
inspector.status() == ("REJECT" if x == 0 else "PASS") | ||
inspector.final_scratch() == ({} if x == 0 else {0: x}) | ||
assert inspector.stack_top() == x**2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for some reason, assertions were dropped. So I'm resuscitating these.
blackbox.py
into new script inspector.py
blackbox.py
into new script inspector.py
with: | ||
config: ${{ env.SANDBOX_CONFIG }} | ||
- name: Start algod | ||
run: make algod-start |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nice
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nice x2
) | ||
from graviton.blackbox import ExecutionMode | ||
from graviton.inspector import DryRunInspector, DryRunProperty, mode_has_property | ||
from graviton.models import PyTypes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
much better
i like it, good move forward |
Can i haz thummms up pleez |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
generally lgtm, just moving classes from blackbox.py
to inspector.py
, and renamed BlackboxResults
to DryRunResults
. Together with a much simpler build.yml
using Will's algod image.
In an attempt to make PR #45 easier to follow, I'm front running this one in first.
No new functionality is being introduced.
C.I. Improvements
Originally, graviton introduced an
algod
for the purposes of dry run testing. Later, PyTeal improved on it by bringingwwinder
's nightly docker build. Now, the chickens have come home to roost and it's time to bring the PyTeal improved C.I. process back to graviton.Related issues - to be resolved: