-
Notifications
You must be signed in to change notification settings - Fork 492
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
Lots of testing convenience improvements, including e2e python #2936
Conversation
Made it nice to write e2e test in python my creating a "goal" module that emuluates the convenience of goal, but in python so that structured results come out for easy asserts.
Codecov Report
@@ Coverage Diff @@
## master #2936 +/- ##
==========================================
+ Coverage 47.57% 47.59% +0.01%
==========================================
Files 358 358
Lines 57863 57863
==========================================
+ Hits 27527 27538 +11
+ Misses 27211 27201 -10
+ Partials 3125 3124 -1
Continue to review full report at Codecov.
|
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.
The e2e_subs/*.py option is great. I think we'll still need *.sh options for explicitly testing goal
, also for testing new features that aren't in the SDK yet. There could be some circular dependency problems where the feature isn't done yet in algod
so the support definitely isn't in the sdk yet but we still want to test and having all the code in the go-algorand repo (e.g. goal
and algod
) will be important. Still, cool addition and I like it.
@@ -36,11 +37,12 @@ TEAL LogicSigs run in Algorand nodes as part of testing a proposed transaction t | |||
|
|||
If an authorized program executes and finishes with a single non-zero uint64 value on the stack then that program has validated the transaction it is attached to. | |||
|
|||
The TEAL program has access to data from the transaction it is attached to (`txn` op), any transactions in a transaction group it is part of (`gtxn` op), and a few global values like consensus parameters (`global` op). Some "Args" may be attached to a transaction being validated by a TEAL program. Args are an array of byte strings. A common pattern would be to have the key to unlock some contract as an Arg. Args are recorded on the blockchain and publicly visible when the transaction is submitted to the network. These LogicSig Args are _not_ signed. | |||
The TEAL program has access to data from the transaction it is attached to (`txn` op), any transactions in a transaction group it is part of (`gtxn` op), and a few global values like consensus parameters (`global` op). Some "Args" may be attached to a transaction being validated by a TEAL program. Args are an array of byte strings. A common pattern would be to have the key to unlock some contract as an Arg. Args are recorded on the blockchain and publicly visible when the transaction is submitted to the network. These LogicSig Args are _not_ part of the transaction ID nor of the TxGroup hash. They also cannot be read from other TEAL programs in the group of transactions. |
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.
mb leave something like "efficiently leaving them not signed" for better clarity?
Made it nice to write e2e test in python my creating a "goal" module
that emulates the convenience of goal, but in python so that
structured results come out for easy asserts.