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

Lots of testing convenience improvements, including e2e python #2936

Merged
merged 4 commits into from
Sep 27, 2021

Conversation

jannotti
Copy link
Contributor

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.

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-commenter
Copy link

codecov-commenter commented Sep 22, 2021

Codecov Report

Merging #2936 (dfb1491) into master (073717e) will increase coverage by 0.01%.
The diff coverage is n/a.

Impacted file tree graph

@@            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     
Impacted Files Coverage Δ
data/transactions/logic/doc.go 77.41% <ø> (ø)
data/abi/abi_type.go 90.90% <0.00%> (-0.91%) ⬇️
catchup/service.go 69.35% <0.00%> (-0.78%) ⬇️
ledger/acctupdates.go 62.58% <0.00%> (+0.08%) ⬆️
data/transactions/verify/txn.go 44.29% <0.00%> (+0.87%) ⬆️
network/wsPeer.go 75.20% <0.00%> (+3.06%) ⬆️
cmd/algoh/blockWatcher.go 80.95% <0.00%> (+3.17%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 073717e...dfb1491. Read the comment docs.

Copy link
Contributor

@brianolson brianolson left a 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.

@jannotti jannotti requested a review from shiqizng September 26, 2021 23:44
@@ -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.
Copy link
Contributor

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?

@jannotti jannotti merged commit 96b16ff into algorand:master Sep 27, 2021
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

Successfully merging this pull request may close these issues.

4 participants