Change app state methods, add loadScratch method #449
Annotations
10 errors
error: expect(received).toEqual(expected):
tests/common.ts#L56
Expected: "#pragma version 9\n\n// This TEAL was generated by TEALScript v0.66.1\n// https://github.com/algorandfoundation/TEALScript\n\n// This contract is compliant with and/or implements the following ARCs: [ ARC4 ]\n\n// The following ten lines of TEAL handle initial program flow\n// This pattern is used to make it easy for anyone to parse the start of the program and determine if a specific action is allowed\n// Here, action refers to the OnComplete in combination with whether the app is being created or called\n// Every possible action for this contract is represented in the switch statement\n// If the action is not implmented in the contract, its respective branch will be \"NOT_IMPLEMENTED\" which just contains \"err\"\ntxn ApplicationID\nint 0\n>\nint 6\n*\ntxn OnCompletion\n+\nswitch create_NoOp NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED call_NoOp\n\nNOT_IMPLEMENTED:\n\terr\n\nabi_route_txnTypeEnum:\n\t// execute txnTypeEnum()void\n\tcallsub txnTypeEnum\n\tint 1\n\treturn\n\n// txnTypeEnum()void\ntxnTypeEnum:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:28\n\t// assert(this.txnGroup[0].typeEnum === TransactionType.ApplicationCall)\n\tint 0\n\tgtxns TypeEnum\n\tint appl\n\t==\n\tassert\n\tretsub\n\nabi_route_txnGroupLength:\n\t// execute txnGroupLength()void\n\tcallsub txnGroupLength\n\tint 1\n\treturn\n\n// txnGroupLength()void\ntxnGroupLength:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:32\n\t// assert(this.txnGroup.length === 1)\n\tglobal GroupSize\n\tint 1\n\t==\n\tassert\n\tretsub\n\nabi_route_asserts:\n\t// arg2: bool\n\ttxna ApplicationArgs 2\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// arg1: bool\n\ttxna ApplicationArgs 1\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// execute asserts(bool,bool)void\n\tcallsub asserts\n\tint 1\n\treturn\n\n// asserts(bool,bool)void\nasserts:\n\tproto 2 0\n\n\t// tests/contracts/general.algo.ts:36\n\t// assert(arg1, arg2, arg1 === arg2)\n\tframe_dig -1 // arg1: boolean\n\tassert\n\tframe_dig -2 // arg2: boolean\n\tassert\n\tframe_dig -1 // arg1: boolean\n\tframe_dig -2 // arg2: boolean\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromArg:\n\t// somePay: pay\n\ttxn GroupIndex\n\tint 1\n\t-\n\tdup\n\tgtxns TypeEnum\n\tint pay\n\t==\n\tassert\n\n\t// execute verifyTxnFromArg(pay)void\n\tcallsub verifyTxnFromArg\n\tint 1\n\treturn\n\n// verifyTxnFromArg(pay)void\nverifyTxnFromArg:\n\tproto 1 0\n\n\t// tests/contracts/general.algo.ts:40\n\t// verifyTxn(somePay, { receiver: this.app.address, amount: 100_000 })\n\t// verify receiver\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Receiver\n\tglobal CurrentApplicationAddress\n\t==\n\tassert\n\n\t// verify amount\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Amount\n\tint 100_000\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromTxnGroup:\n\t// execute verifyTxnFromTxnGroup()void\n\tcallsub verifyTxnFromTxnGroup\n\tint 1\n\treturn\n\n// verifyTxnFromTxnGroup()void\nverifyTxnFromTxnGroup:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:44\n\t// verifyTxn(this.txnGroup[0], { sender: this.txn.sender })\n\t// verify sender\n\tint 0\n\tgtxns Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnCondition:\n\t// execute verifyTxnCondition()void\n\tcallsub verifyTxnCondition\n\tint 1\n\treturn\n\n// verifyTxnCondition()void\nverifyTxnCondition:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:48\n\t// verifyTxn(this.txn, {\n\t// applicationID: { greaterThan: 1 },\n\t// })\n\t// verify applicationID\n\ttxn ApplicationID\n\tint 1\n\t>\n\tassert\n\tretsub\n\nabi_route_verifyTxnIncludedIn:\n\t// execute verifyTxnIncludedIn()void\n\tcallsub verifyTxnIncludedIn\n\tint 1\n\treturn\n\n// verifyTxnIncludedIn()void\nverifyTxnIncludedIn:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:54\n\t// verifyTxn(this.txn, {\n\t// sender: { includedIn: [this.txn.sender] },\n\t// })\n\t// verify sender\n\ttxn Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnNotIncludedIn:\n\t// execute verifyTxnNotIncl
|
error: expect(received).toEqual(expected):
tests/common.ts#L69
{
bare_call_config: {
close_out: "NEVER",
delete_application: "NEVER",
no_op: "NEVER",
opt_in: "NEVER",
update_application: "NEVER",
},
contract: {
desc: "",
methods: [
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...],
[Object ...]
],
name: "GeneralTest",
},
hints: {
"appLoadScratch()void": {
call_config: [Object ...],
},
"asserts(bool,bool)void": {
call_config: [Object ...],
},
"bzeroFunction()void": {
call_config: [Object ...],
},
"callInternalPublicMethod()void": {
call_config: [Object ...],
},
"callPrivateDefinedLater()void": {
call_config: [Object ...],
},
"createApplication()void": {
call_config: [Object ...],
},
"ecdsa()(uint256,uint256)": {
call_config: [Object ...],
},
"events()void": {
call_config: [Object ...],
},
"fromBytes()void": {
call_config: [Object ...],
},
"fromID()void": {
call_config: [Object ...],
},
"idProperty()void": {
call_config: [Object ...],
},
"importedProgram()byte[]": {
call_config: [Object ...],
},
"interalPublicMethod(uint64,uint64)uint64": {
call_config: [Object ...],
},
"letOptimization(uint64[])uint64[]": {
call_config: [Object ...],
},
"methodOnParens()void": {
call_config: [Object ...],
},
"methodWithTxnArgs()void": {
call_config: [Object ...],
},
"numberToString()void": {
call_config: [Object ...],
},
"scratchSlot()void": {
call_config: [Object ...],
},
"shift()void": {
call_config: [Object ...],
},
"staticContractProperties()void": {
call_config: [Object ...],
},
"stringPlusEquals()void": {
call_config: [Object ...],
},
"stringSubstring()void": {
call_config: [Object ...],
},
"submitPendingGroup()void": {
call_config: [Object ...],
},
"txnGroupLength()void": {
call_config: [Object ...],
},
"txnTypeEnum()void": {
call_config: [Object ...],
},
"verifyTxnCondition()void": {
call_config: [Object ...],
},
"verifyTxnFromArg(pay)void": {
call_config: [Object ...],
},
"verifyTxnFromTxnGroup()void": {
call_config: [Object ...],
},
"verifyTxnIncludedIn()void": {
call_config: [Object ...],
},
"verifyTxnNotIncludedIn()void": {
call_config: [Object ...],
},
"verifyTxnTypes()void": {
call_config: [Object ...],
},
},
schema: {
global: {
declared: [Object ...],
reserved: [Object ...],
},
local: {
declared: [Object ...],
reserved: [Object ...],
},
},
source: {
+ approval: "I3ByYWdtYSB2ZXJzaW9uIDkKCi8vIFRoaXMgVEVBTCB3YXMgZ2VuZXJhdGVkIGJ5IFRFQUxTY3JpcHQgdjAuNjYuMQovLyBodHRwczovL2dpdGh1Yi5jb20vYWxnb3JhbmRmb3VuZGF0aW9uL1RFQUxTY3JpcHQKCi8vIFRoaXMgY29udHJhY3QgaXMgY29tcGxpYW50IHdpdGggYW5kL29yIGltcGxlbWVudHMgdGhlIGZvbGxvd2luZyBBUkNzOiBbIEFSQzQgXQoKLy8gVGhlIGZvbGxvd2luZyB0ZW4gbGluZXMgb2YgVEVBTCBoYW5kbGUgaW5pdGlhbCBwcm9ncmFtIGZsb3cKLy8gVGhpcyBwYXR0ZXJuIGlzIHVzZWQgdG8gbWFrZSBpdCBlYXN5IGZvciBhbnlvbmUgdG8gcGFyc2UgdGhlIHN0YXJ0IG9mIHRoZSBwcm9ncmFtIG
|
error: expect(received).toEqual(expected):
tests/common.ts#L95
Expected: "#pragma version 9\n\n// This TEAL was generated by TEALScript v0.66.1\n// https://github.com/algorandfoundation/TEALScript\n\n// This contract is compliant with and/or implements the following ARCs: [ ARC4 ]\n\n// The following ten lines of TEAL handle initial program flow\n// This pattern is used to make it easy for anyone to parse the start of the program and determine if a specific action is allowed\n// Here, action refers to the OnComplete in combination with whether the app is being created or called\n// Every possible action for this contract is represented in the switch statement\n// If the action is not implmented in the contract, its respective branch will be \"NOT_IMPLEMENTED\" which just contains \"err\"\ntxn ApplicationID\nint 0\n>\nint 6\n*\ntxn OnCompletion\n+\nswitch create_NoOp NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED call_NoOp\n\nNOT_IMPLEMENTED:\n\terr\n\nabi_route_txnTypeEnum:\n\t// execute txnTypeEnum()void\n\tcallsub txnTypeEnum\n\tint 1\n\treturn\n\n// txnTypeEnum()void\ntxnTypeEnum:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:28\n\t// assert(this.txnGroup[0].typeEnum === TransactionType.ApplicationCall)\n\tint 0\n\tgtxns TypeEnum\n\tint appl\n\t==\n\tassert\n\tretsub\n\nabi_route_txnGroupLength:\n\t// execute txnGroupLength()void\n\tcallsub txnGroupLength\n\tint 1\n\treturn\n\n// txnGroupLength()void\ntxnGroupLength:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:32\n\t// assert(this.txnGroup.length === 1)\n\tglobal GroupSize\n\tint 1\n\t==\n\tassert\n\tretsub\n\nabi_route_asserts:\n\t// arg2: bool\n\ttxna ApplicationArgs 2\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// arg1: bool\n\ttxna ApplicationArgs 1\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// execute asserts(bool,bool)void\n\tcallsub asserts\n\tint 1\n\treturn\n\n// asserts(bool,bool)void\nasserts:\n\tproto 2 0\n\n\t// tests/contracts/general.algo.ts:36\n\t// assert(arg1, arg2, arg1 === arg2)\n\tframe_dig -1 // arg1: boolean\n\tassert\n\tframe_dig -2 // arg2: boolean\n\tassert\n\tframe_dig -1 // arg1: boolean\n\tframe_dig -2 // arg2: boolean\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromArg:\n\t// somePay: pay\n\ttxn GroupIndex\n\tint 1\n\t-\n\tdup\n\tgtxns TypeEnum\n\tint pay\n\t==\n\tassert\n\n\t// execute verifyTxnFromArg(pay)void\n\tcallsub verifyTxnFromArg\n\tint 1\n\treturn\n\n// verifyTxnFromArg(pay)void\nverifyTxnFromArg:\n\tproto 1 0\n\n\t// tests/contracts/general.algo.ts:40\n\t// verifyTxn(somePay, { receiver: this.app.address, amount: 100_000 })\n\t// verify receiver\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Receiver\n\tglobal CurrentApplicationAddress\n\t==\n\tassert\n\n\t// verify amount\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Amount\n\tint 100_000\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromTxnGroup:\n\t// execute verifyTxnFromTxnGroup()void\n\tcallsub verifyTxnFromTxnGroup\n\tint 1\n\treturn\n\n// verifyTxnFromTxnGroup()void\nverifyTxnFromTxnGroup:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:44\n\t// verifyTxn(this.txnGroup[0], { sender: this.txn.sender })\n\t// verify sender\n\tint 0\n\tgtxns Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnCondition:\n\t// execute verifyTxnCondition()void\n\tcallsub verifyTxnCondition\n\tint 1\n\treturn\n\n// verifyTxnCondition()void\nverifyTxnCondition:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:48\n\t// verifyTxn(this.txn, {\n\t// applicationID: { greaterThan: 1 },\n\t// })\n\t// verify applicationID\n\ttxn ApplicationID\n\tint 1\n\t>\n\tassert\n\tretsub\n\nabi_route_verifyTxnIncludedIn:\n\t// execute verifyTxnIncludedIn()void\n\tcallsub verifyTxnIncludedIn\n\tint 1\n\treturn\n\n// verifyTxnIncludedIn()void\nverifyTxnIncludedIn:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:54\n\t// verifyTxn(this.txn, {\n\t// sender: { includedIn: [this.txn.sender] },\n\t// })\n\t// verify sender\n\ttxn Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnNotIncludedIn:\n\t// execute verifyTxnNotIncl
|
error: expect(received).toEqual(expected):
tests/common.ts#L95
Expected: "#pragma version 9\n\n// This TEAL was generated by TEALScript v0.66.1\n// https://github.com/algorandfoundation/TEALScript\n\n// This contract is compliant with and/or implements the following ARCs: [ ARC4 ]\n\n// The following ten lines of TEAL handle initial program flow\n// This pattern is used to make it easy for anyone to parse the start of the program and determine if a specific action is allowed\n// Here, action refers to the OnComplete in combination with whether the app is being created or called\n// Every possible action for this contract is represented in the switch statement\n// If the action is not implmented in the contract, its respective branch will be \"NOT_IMPLEMENTED\" which just contains \"err\"\ntxn ApplicationID\nint 0\n>\nint 6\n*\ntxn OnCompletion\n+\nswitch create_NoOp NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED call_NoOp\n\nNOT_IMPLEMENTED:\n\terr\n\nabi_route_txnTypeEnum:\n\t// execute txnTypeEnum()void\n\tcallsub txnTypeEnum\n\tint 1\n\treturn\n\n// txnTypeEnum()void\ntxnTypeEnum:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:28\n\t// assert(this.txnGroup[0].typeEnum === TransactionType.ApplicationCall)\n\tint 0\n\tgtxns TypeEnum\n\tint appl\n\t==\n\tassert\n\tretsub\n\nabi_route_txnGroupLength:\n\t// execute txnGroupLength()void\n\tcallsub txnGroupLength\n\tint 1\n\treturn\n\n// txnGroupLength()void\ntxnGroupLength:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:32\n\t// assert(this.txnGroup.length === 1)\n\tglobal GroupSize\n\tint 1\n\t==\n\tassert\n\tretsub\n\nabi_route_asserts:\n\t// arg2: bool\n\ttxna ApplicationArgs 2\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// arg1: bool\n\ttxna ApplicationArgs 1\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// execute asserts(bool,bool)void\n\tcallsub asserts\n\tint 1\n\treturn\n\n// asserts(bool,bool)void\nasserts:\n\tproto 2 0\n\n\t// tests/contracts/general.algo.ts:36\n\t// assert(arg1, arg2, arg1 === arg2)\n\tframe_dig -1 // arg1: boolean\n\tassert\n\tframe_dig -2 // arg2: boolean\n\tassert\n\tframe_dig -1 // arg1: boolean\n\tframe_dig -2 // arg2: boolean\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromArg:\n\t// somePay: pay\n\ttxn GroupIndex\n\tint 1\n\t-\n\tdup\n\tgtxns TypeEnum\n\tint pay\n\t==\n\tassert\n\n\t// execute verifyTxnFromArg(pay)void\n\tcallsub verifyTxnFromArg\n\tint 1\n\treturn\n\n// verifyTxnFromArg(pay)void\nverifyTxnFromArg:\n\tproto 1 0\n\n\t// tests/contracts/general.algo.ts:40\n\t// verifyTxn(somePay, { receiver: this.app.address, amount: 100_000 })\n\t// verify receiver\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Receiver\n\tglobal CurrentApplicationAddress\n\t==\n\tassert\n\n\t// verify amount\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Amount\n\tint 100_000\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromTxnGroup:\n\t// execute verifyTxnFromTxnGroup()void\n\tcallsub verifyTxnFromTxnGroup\n\tint 1\n\treturn\n\n// verifyTxnFromTxnGroup()void\nverifyTxnFromTxnGroup:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:44\n\t// verifyTxn(this.txnGroup[0], { sender: this.txn.sender })\n\t// verify sender\n\tint 0\n\tgtxns Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnCondition:\n\t// execute verifyTxnCondition()void\n\tcallsub verifyTxnCondition\n\tint 1\n\treturn\n\n// verifyTxnCondition()void\nverifyTxnCondition:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:48\n\t// verifyTxn(this.txn, {\n\t// applicationID: { greaterThan: 1 },\n\t// })\n\t// verify applicationID\n\ttxn ApplicationID\n\tint 1\n\t>\n\tassert\n\tretsub\n\nabi_route_verifyTxnIncludedIn:\n\t// execute verifyTxnIncludedIn()void\n\tcallsub verifyTxnIncludedIn\n\tint 1\n\treturn\n\n// verifyTxnIncludedIn()void\nverifyTxnIncludedIn:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:54\n\t// verifyTxn(this.txn, {\n\t// sender: { includedIn: [this.txn.sender] },\n\t// })\n\t// verify sender\n\ttxn Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnNotIncludedIn:\n\t// execute verifyTxnNotIncl
|
error: expect(received).toEqual(expected):
tests/common.ts#L95
Expected: "#pragma version 9\n\n// This TEAL was generated by TEALScript v0.66.1\n// https://github.com/algorandfoundation/TEALScript\n\n// This contract is compliant with and/or implements the following ARCs: [ ARC4 ]\n\n// The following ten lines of TEAL handle initial program flow\n// This pattern is used to make it easy for anyone to parse the start of the program and determine if a specific action is allowed\n// Here, action refers to the OnComplete in combination with whether the app is being created or called\n// Every possible action for this contract is represented in the switch statement\n// If the action is not implmented in the contract, its respective branch will be \"NOT_IMPLEMENTED\" which just contains \"err\"\ntxn ApplicationID\nint 0\n>\nint 6\n*\ntxn OnCompletion\n+\nswitch create_NoOp NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED call_NoOp\n\nNOT_IMPLEMENTED:\n\terr\n\nabi_route_txnTypeEnum:\n\t// execute txnTypeEnum()void\n\tcallsub txnTypeEnum\n\tint 1\n\treturn\n\n// txnTypeEnum()void\ntxnTypeEnum:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:28\n\t// assert(this.txnGroup[0].typeEnum === TransactionType.ApplicationCall)\n\tint 0\n\tgtxns TypeEnum\n\tint appl\n\t==\n\tassert\n\tretsub\n\nabi_route_txnGroupLength:\n\t// execute txnGroupLength()void\n\tcallsub txnGroupLength\n\tint 1\n\treturn\n\n// txnGroupLength()void\ntxnGroupLength:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:32\n\t// assert(this.txnGroup.length === 1)\n\tglobal GroupSize\n\tint 1\n\t==\n\tassert\n\tretsub\n\nabi_route_asserts:\n\t// arg2: bool\n\ttxna ApplicationArgs 2\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// arg1: bool\n\ttxna ApplicationArgs 1\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// execute asserts(bool,bool)void\n\tcallsub asserts\n\tint 1\n\treturn\n\n// asserts(bool,bool)void\nasserts:\n\tproto 2 0\n\n\t// tests/contracts/general.algo.ts:36\n\t// assert(arg1, arg2, arg1 === arg2)\n\tframe_dig -1 // arg1: boolean\n\tassert\n\tframe_dig -2 // arg2: boolean\n\tassert\n\tframe_dig -1 // arg1: boolean\n\tframe_dig -2 // arg2: boolean\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromArg:\n\t// somePay: pay\n\ttxn GroupIndex\n\tint 1\n\t-\n\tdup\n\tgtxns TypeEnum\n\tint pay\n\t==\n\tassert\n\n\t// execute verifyTxnFromArg(pay)void\n\tcallsub verifyTxnFromArg\n\tint 1\n\treturn\n\n// verifyTxnFromArg(pay)void\nverifyTxnFromArg:\n\tproto 1 0\n\n\t// tests/contracts/general.algo.ts:40\n\t// verifyTxn(somePay, { receiver: this.app.address, amount: 100_000 })\n\t// verify receiver\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Receiver\n\tglobal CurrentApplicationAddress\n\t==\n\tassert\n\n\t// verify amount\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Amount\n\tint 100_000\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromTxnGroup:\n\t// execute verifyTxnFromTxnGroup()void\n\tcallsub verifyTxnFromTxnGroup\n\tint 1\n\treturn\n\n// verifyTxnFromTxnGroup()void\nverifyTxnFromTxnGroup:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:44\n\t// verifyTxn(this.txnGroup[0], { sender: this.txn.sender })\n\t// verify sender\n\tint 0\n\tgtxns Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnCondition:\n\t// execute verifyTxnCondition()void\n\tcallsub verifyTxnCondition\n\tint 1\n\treturn\n\n// verifyTxnCondition()void\nverifyTxnCondition:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:48\n\t// verifyTxn(this.txn, {\n\t// applicationID: { greaterThan: 1 },\n\t// })\n\t// verify applicationID\n\ttxn ApplicationID\n\tint 1\n\t>\n\tassert\n\tretsub\n\nabi_route_verifyTxnIncludedIn:\n\t// execute verifyTxnIncludedIn()void\n\tcallsub verifyTxnIncludedIn\n\tint 1\n\treturn\n\n// verifyTxnIncludedIn()void\nverifyTxnIncludedIn:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:54\n\t// verifyTxn(this.txn, {\n\t// sender: { includedIn: [this.txn.sender] },\n\t// })\n\t// verify sender\n\ttxn Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnNotIncludedIn:\n\t// execute verifyTxnNotIncl
|
error: expect(received).toEqual(expected):
tests/common.ts#L95
Expected: "#pragma version 9\n\n// This TEAL was generated by TEALScript v0.66.1\n// https://github.com/algorandfoundation/TEALScript\n\n// This contract is compliant with and/or implements the following ARCs: [ ARC4 ]\n\n// The following ten lines of TEAL handle initial program flow\n// This pattern is used to make it easy for anyone to parse the start of the program and determine if a specific action is allowed\n// Here, action refers to the OnComplete in combination with whether the app is being created or called\n// Every possible action for this contract is represented in the switch statement\n// If the action is not implmented in the contract, its respective branch will be \"NOT_IMPLEMENTED\" which just contains \"err\"\ntxn ApplicationID\nint 0\n>\nint 6\n*\ntxn OnCompletion\n+\nswitch create_NoOp NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED call_NoOp\n\nNOT_IMPLEMENTED:\n\terr\n\nabi_route_txnTypeEnum:\n\t// execute txnTypeEnum()void\n\tcallsub txnTypeEnum\n\tint 1\n\treturn\n\n// txnTypeEnum()void\ntxnTypeEnum:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:28\n\t// assert(this.txnGroup[0].typeEnum === TransactionType.ApplicationCall)\n\tint 0\n\tgtxns TypeEnum\n\tint appl\n\t==\n\tassert\n\tretsub\n\nabi_route_txnGroupLength:\n\t// execute txnGroupLength()void\n\tcallsub txnGroupLength\n\tint 1\n\treturn\n\n// txnGroupLength()void\ntxnGroupLength:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:32\n\t// assert(this.txnGroup.length === 1)\n\tglobal GroupSize\n\tint 1\n\t==\n\tassert\n\tretsub\n\nabi_route_asserts:\n\t// arg2: bool\n\ttxna ApplicationArgs 2\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// arg1: bool\n\ttxna ApplicationArgs 1\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// execute asserts(bool,bool)void\n\tcallsub asserts\n\tint 1\n\treturn\n\n// asserts(bool,bool)void\nasserts:\n\tproto 2 0\n\n\t// tests/contracts/general.algo.ts:36\n\t// assert(arg1, arg2, arg1 === arg2)\n\tframe_dig -1 // arg1: boolean\n\tassert\n\tframe_dig -2 // arg2: boolean\n\tassert\n\tframe_dig -1 // arg1: boolean\n\tframe_dig -2 // arg2: boolean\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromArg:\n\t// somePay: pay\n\ttxn GroupIndex\n\tint 1\n\t-\n\tdup\n\tgtxns TypeEnum\n\tint pay\n\t==\n\tassert\n\n\t// execute verifyTxnFromArg(pay)void\n\tcallsub verifyTxnFromArg\n\tint 1\n\treturn\n\n// verifyTxnFromArg(pay)void\nverifyTxnFromArg:\n\tproto 1 0\n\n\t// tests/contracts/general.algo.ts:40\n\t// verifyTxn(somePay, { receiver: this.app.address, amount: 100_000 })\n\t// verify receiver\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Receiver\n\tglobal CurrentApplicationAddress\n\t==\n\tassert\n\n\t// verify amount\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Amount\n\tint 100_000\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromTxnGroup:\n\t// execute verifyTxnFromTxnGroup()void\n\tcallsub verifyTxnFromTxnGroup\n\tint 1\n\treturn\n\n// verifyTxnFromTxnGroup()void\nverifyTxnFromTxnGroup:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:44\n\t// verifyTxn(this.txnGroup[0], { sender: this.txn.sender })\n\t// verify sender\n\tint 0\n\tgtxns Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnCondition:\n\t// execute verifyTxnCondition()void\n\tcallsub verifyTxnCondition\n\tint 1\n\treturn\n\n// verifyTxnCondition()void\nverifyTxnCondition:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:48\n\t// verifyTxn(this.txn, {\n\t// applicationID: { greaterThan: 1 },\n\t// })\n\t// verify applicationID\n\ttxn ApplicationID\n\tint 1\n\t>\n\tassert\n\tretsub\n\nabi_route_verifyTxnIncludedIn:\n\t// execute verifyTxnIncludedIn()void\n\tcallsub verifyTxnIncludedIn\n\tint 1\n\treturn\n\n// verifyTxnIncludedIn()void\nverifyTxnIncludedIn:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:54\n\t// verifyTxn(this.txn, {\n\t// sender: { includedIn: [this.txn.sender] },\n\t// })\n\t// verify sender\n\ttxn Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnNotIncludedIn:\n\t// execute verifyTxnNotIncl
|
error: expect(received).toEqual(expected):
tests/common.ts#L95
Expected: "#pragma version 9\n\n// This TEAL was generated by TEALScript v0.66.1\n// https://github.com/algorandfoundation/TEALScript\n\n// This contract is compliant with and/or implements the following ARCs: [ ARC4 ]\n\n// The following ten lines of TEAL handle initial program flow\n// This pattern is used to make it easy for anyone to parse the start of the program and determine if a specific action is allowed\n// Here, action refers to the OnComplete in combination with whether the app is being created or called\n// Every possible action for this contract is represented in the switch statement\n// If the action is not implmented in the contract, its respective branch will be \"NOT_IMPLEMENTED\" which just contains \"err\"\ntxn ApplicationID\nint 0\n>\nint 6\n*\ntxn OnCompletion\n+\nswitch create_NoOp NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED call_NoOp\n\nNOT_IMPLEMENTED:\n\terr\n\nabi_route_txnTypeEnum:\n\t// execute txnTypeEnum()void\n\tcallsub txnTypeEnum\n\tint 1\n\treturn\n\n// txnTypeEnum()void\ntxnTypeEnum:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:28\n\t// assert(this.txnGroup[0].typeEnum === TransactionType.ApplicationCall)\n\tint 0\n\tgtxns TypeEnum\n\tint appl\n\t==\n\tassert\n\tretsub\n\nabi_route_txnGroupLength:\n\t// execute txnGroupLength()void\n\tcallsub txnGroupLength\n\tint 1\n\treturn\n\n// txnGroupLength()void\ntxnGroupLength:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:32\n\t// assert(this.txnGroup.length === 1)\n\tglobal GroupSize\n\tint 1\n\t==\n\tassert\n\tretsub\n\nabi_route_asserts:\n\t// arg2: bool\n\ttxna ApplicationArgs 2\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// arg1: bool\n\ttxna ApplicationArgs 1\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// execute asserts(bool,bool)void\n\tcallsub asserts\n\tint 1\n\treturn\n\n// asserts(bool,bool)void\nasserts:\n\tproto 2 0\n\n\t// tests/contracts/general.algo.ts:36\n\t// assert(arg1, arg2, arg1 === arg2)\n\tframe_dig -1 // arg1: boolean\n\tassert\n\tframe_dig -2 // arg2: boolean\n\tassert\n\tframe_dig -1 // arg1: boolean\n\tframe_dig -2 // arg2: boolean\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromArg:\n\t// somePay: pay\n\ttxn GroupIndex\n\tint 1\n\t-\n\tdup\n\tgtxns TypeEnum\n\tint pay\n\t==\n\tassert\n\n\t// execute verifyTxnFromArg(pay)void\n\tcallsub verifyTxnFromArg\n\tint 1\n\treturn\n\n// verifyTxnFromArg(pay)void\nverifyTxnFromArg:\n\tproto 1 0\n\n\t// tests/contracts/general.algo.ts:40\n\t// verifyTxn(somePay, { receiver: this.app.address, amount: 100_000 })\n\t// verify receiver\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Receiver\n\tglobal CurrentApplicationAddress\n\t==\n\tassert\n\n\t// verify amount\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Amount\n\tint 100_000\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromTxnGroup:\n\t// execute verifyTxnFromTxnGroup()void\n\tcallsub verifyTxnFromTxnGroup\n\tint 1\n\treturn\n\n// verifyTxnFromTxnGroup()void\nverifyTxnFromTxnGroup:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:44\n\t// verifyTxn(this.txnGroup[0], { sender: this.txn.sender })\n\t// verify sender\n\tint 0\n\tgtxns Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnCondition:\n\t// execute verifyTxnCondition()void\n\tcallsub verifyTxnCondition\n\tint 1\n\treturn\n\n// verifyTxnCondition()void\nverifyTxnCondition:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:48\n\t// verifyTxn(this.txn, {\n\t// applicationID: { greaterThan: 1 },\n\t// })\n\t// verify applicationID\n\ttxn ApplicationID\n\tint 1\n\t>\n\tassert\n\tretsub\n\nabi_route_verifyTxnIncludedIn:\n\t// execute verifyTxnIncludedIn()void\n\tcallsub verifyTxnIncludedIn\n\tint 1\n\treturn\n\n// verifyTxnIncludedIn()void\nverifyTxnIncludedIn:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:54\n\t// verifyTxn(this.txn, {\n\t// sender: { includedIn: [this.txn.sender] },\n\t// })\n\t// verify sender\n\ttxn Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnNotIncludedIn:\n\t// execute verifyTxnNotIncl
|
error: expect(received).toEqual(expected):
tests/common.ts#L95
Expected: "#pragma version 9\n\n// This TEAL was generated by TEALScript v0.66.1\n// https://github.com/algorandfoundation/TEALScript\n\n// This contract is compliant with and/or implements the following ARCs: [ ARC4 ]\n\n// The following ten lines of TEAL handle initial program flow\n// This pattern is used to make it easy for anyone to parse the start of the program and determine if a specific action is allowed\n// Here, action refers to the OnComplete in combination with whether the app is being created or called\n// Every possible action for this contract is represented in the switch statement\n// If the action is not implmented in the contract, its respective branch will be \"NOT_IMPLEMENTED\" which just contains \"err\"\ntxn ApplicationID\nint 0\n>\nint 6\n*\ntxn OnCompletion\n+\nswitch create_NoOp NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED call_NoOp\n\nNOT_IMPLEMENTED:\n\terr\n\nabi_route_txnTypeEnum:\n\t// execute txnTypeEnum()void\n\tcallsub txnTypeEnum\n\tint 1\n\treturn\n\n// txnTypeEnum()void\ntxnTypeEnum:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:28\n\t// assert(this.txnGroup[0].typeEnum === TransactionType.ApplicationCall)\n\tint 0\n\tgtxns TypeEnum\n\tint appl\n\t==\n\tassert\n\tretsub\n\nabi_route_txnGroupLength:\n\t// execute txnGroupLength()void\n\tcallsub txnGroupLength\n\tint 1\n\treturn\n\n// txnGroupLength()void\ntxnGroupLength:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:32\n\t// assert(this.txnGroup.length === 1)\n\tglobal GroupSize\n\tint 1\n\t==\n\tassert\n\tretsub\n\nabi_route_asserts:\n\t// arg2: bool\n\ttxna ApplicationArgs 2\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// arg1: bool\n\ttxna ApplicationArgs 1\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// execute asserts(bool,bool)void\n\tcallsub asserts\n\tint 1\n\treturn\n\n// asserts(bool,bool)void\nasserts:\n\tproto 2 0\n\n\t// tests/contracts/general.algo.ts:36\n\t// assert(arg1, arg2, arg1 === arg2)\n\tframe_dig -1 // arg1: boolean\n\tassert\n\tframe_dig -2 // arg2: boolean\n\tassert\n\tframe_dig -1 // arg1: boolean\n\tframe_dig -2 // arg2: boolean\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromArg:\n\t// somePay: pay\n\ttxn GroupIndex\n\tint 1\n\t-\n\tdup\n\tgtxns TypeEnum\n\tint pay\n\t==\n\tassert\n\n\t// execute verifyTxnFromArg(pay)void\n\tcallsub verifyTxnFromArg\n\tint 1\n\treturn\n\n// verifyTxnFromArg(pay)void\nverifyTxnFromArg:\n\tproto 1 0\n\n\t// tests/contracts/general.algo.ts:40\n\t// verifyTxn(somePay, { receiver: this.app.address, amount: 100_000 })\n\t// verify receiver\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Receiver\n\tglobal CurrentApplicationAddress\n\t==\n\tassert\n\n\t// verify amount\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Amount\n\tint 100_000\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromTxnGroup:\n\t// execute verifyTxnFromTxnGroup()void\n\tcallsub verifyTxnFromTxnGroup\n\tint 1\n\treturn\n\n// verifyTxnFromTxnGroup()void\nverifyTxnFromTxnGroup:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:44\n\t// verifyTxn(this.txnGroup[0], { sender: this.txn.sender })\n\t// verify sender\n\tint 0\n\tgtxns Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnCondition:\n\t// execute verifyTxnCondition()void\n\tcallsub verifyTxnCondition\n\tint 1\n\treturn\n\n// verifyTxnCondition()void\nverifyTxnCondition:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:48\n\t// verifyTxn(this.txn, {\n\t// applicationID: { greaterThan: 1 },\n\t// })\n\t// verify applicationID\n\ttxn ApplicationID\n\tint 1\n\t>\n\tassert\n\tretsub\n\nabi_route_verifyTxnIncludedIn:\n\t// execute verifyTxnIncludedIn()void\n\tcallsub verifyTxnIncludedIn\n\tint 1\n\treturn\n\n// verifyTxnIncludedIn()void\nverifyTxnIncludedIn:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:54\n\t// verifyTxn(this.txn, {\n\t// sender: { includedIn: [this.txn.sender] },\n\t// })\n\t// verify sender\n\ttxn Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnNotIncludedIn:\n\t// execute verifyTxnNotIncl
|
error: expect(received).toEqual(expected):
tests/common.ts#L95
Expected: "#pragma version 9\n\n// This TEAL was generated by TEALScript v0.66.1\n// https://github.com/algorandfoundation/TEALScript\n\n// This contract is compliant with and/or implements the following ARCs: [ ARC4 ]\n\n// The following ten lines of TEAL handle initial program flow\n// This pattern is used to make it easy for anyone to parse the start of the program and determine if a specific action is allowed\n// Here, action refers to the OnComplete in combination with whether the app is being created or called\n// Every possible action for this contract is represented in the switch statement\n// If the action is not implmented in the contract, its respective branch will be \"NOT_IMPLEMENTED\" which just contains \"err\"\ntxn ApplicationID\nint 0\n>\nint 6\n*\ntxn OnCompletion\n+\nswitch create_NoOp NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED call_NoOp\n\nNOT_IMPLEMENTED:\n\terr\n\nabi_route_txnTypeEnum:\n\t// execute txnTypeEnum()void\n\tcallsub txnTypeEnum\n\tint 1\n\treturn\n\n// txnTypeEnum()void\ntxnTypeEnum:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:28\n\t// assert(this.txnGroup[0].typeEnum === TransactionType.ApplicationCall)\n\tint 0\n\tgtxns TypeEnum\n\tint appl\n\t==\n\tassert\n\tretsub\n\nabi_route_txnGroupLength:\n\t// execute txnGroupLength()void\n\tcallsub txnGroupLength\n\tint 1\n\treturn\n\n// txnGroupLength()void\ntxnGroupLength:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:32\n\t// assert(this.txnGroup.length === 1)\n\tglobal GroupSize\n\tint 1\n\t==\n\tassert\n\tretsub\n\nabi_route_asserts:\n\t// arg2: bool\n\ttxna ApplicationArgs 2\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// arg1: bool\n\ttxna ApplicationArgs 1\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// execute asserts(bool,bool)void\n\tcallsub asserts\n\tint 1\n\treturn\n\n// asserts(bool,bool)void\nasserts:\n\tproto 2 0\n\n\t// tests/contracts/general.algo.ts:36\n\t// assert(arg1, arg2, arg1 === arg2)\n\tframe_dig -1 // arg1: boolean\n\tassert\n\tframe_dig -2 // arg2: boolean\n\tassert\n\tframe_dig -1 // arg1: boolean\n\tframe_dig -2 // arg2: boolean\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromArg:\n\t// somePay: pay\n\ttxn GroupIndex\n\tint 1\n\t-\n\tdup\n\tgtxns TypeEnum\n\tint pay\n\t==\n\tassert\n\n\t// execute verifyTxnFromArg(pay)void\n\tcallsub verifyTxnFromArg\n\tint 1\n\treturn\n\n// verifyTxnFromArg(pay)void\nverifyTxnFromArg:\n\tproto 1 0\n\n\t// tests/contracts/general.algo.ts:40\n\t// verifyTxn(somePay, { receiver: this.app.address, amount: 100_000 })\n\t// verify receiver\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Receiver\n\tglobal CurrentApplicationAddress\n\t==\n\tassert\n\n\t// verify amount\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Amount\n\tint 100_000\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromTxnGroup:\n\t// execute verifyTxnFromTxnGroup()void\n\tcallsub verifyTxnFromTxnGroup\n\tint 1\n\treturn\n\n// verifyTxnFromTxnGroup()void\nverifyTxnFromTxnGroup:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:44\n\t// verifyTxn(this.txnGroup[0], { sender: this.txn.sender })\n\t// verify sender\n\tint 0\n\tgtxns Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnCondition:\n\t// execute verifyTxnCondition()void\n\tcallsub verifyTxnCondition\n\tint 1\n\treturn\n\n// verifyTxnCondition()void\nverifyTxnCondition:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:48\n\t// verifyTxn(this.txn, {\n\t// applicationID: { greaterThan: 1 },\n\t// })\n\t// verify applicationID\n\ttxn ApplicationID\n\tint 1\n\t>\n\tassert\n\tretsub\n\nabi_route_verifyTxnIncludedIn:\n\t// execute verifyTxnIncludedIn()void\n\tcallsub verifyTxnIncludedIn\n\tint 1\n\treturn\n\n// verifyTxnIncludedIn()void\nverifyTxnIncludedIn:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:54\n\t// verifyTxn(this.txn, {\n\t// sender: { includedIn: [this.txn.sender] },\n\t// })\n\t// verify sender\n\ttxn Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnNotIncludedIn:\n\t// execute verifyTxnNotIncl
|
error: expect(received).toEqual(expected):
tests/common.ts#L95
Expected: "#pragma version 9\n\n// This TEAL was generated by TEALScript v0.66.1\n// https://github.com/algorandfoundation/TEALScript\n\n// This contract is compliant with and/or implements the following ARCs: [ ARC4 ]\n\n// The following ten lines of TEAL handle initial program flow\n// This pattern is used to make it easy for anyone to parse the start of the program and determine if a specific action is allowed\n// Here, action refers to the OnComplete in combination with whether the app is being created or called\n// Every possible action for this contract is represented in the switch statement\n// If the action is not implmented in the contract, its respective branch will be \"NOT_IMPLEMENTED\" which just contains \"err\"\ntxn ApplicationID\nint 0\n>\nint 6\n*\ntxn OnCompletion\n+\nswitch create_NoOp NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED NOT_IMPLEMENTED call_NoOp\n\nNOT_IMPLEMENTED:\n\terr\n\nabi_route_txnTypeEnum:\n\t// execute txnTypeEnum()void\n\tcallsub txnTypeEnum\n\tint 1\n\treturn\n\n// txnTypeEnum()void\ntxnTypeEnum:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:28\n\t// assert(this.txnGroup[0].typeEnum === TransactionType.ApplicationCall)\n\tint 0\n\tgtxns TypeEnum\n\tint appl\n\t==\n\tassert\n\tretsub\n\nabi_route_txnGroupLength:\n\t// execute txnGroupLength()void\n\tcallsub txnGroupLength\n\tint 1\n\treturn\n\n// txnGroupLength()void\ntxnGroupLength:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:32\n\t// assert(this.txnGroup.length === 1)\n\tglobal GroupSize\n\tint 1\n\t==\n\tassert\n\tretsub\n\nabi_route_asserts:\n\t// arg2: bool\n\ttxna ApplicationArgs 2\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// arg1: bool\n\ttxna ApplicationArgs 1\n\tdup\n\tlen\n\tint 1\n\t==\n\tassert\n\tint 0\n\tgetbit\n\n\t// execute asserts(bool,bool)void\n\tcallsub asserts\n\tint 1\n\treturn\n\n// asserts(bool,bool)void\nasserts:\n\tproto 2 0\n\n\t// tests/contracts/general.algo.ts:36\n\t// assert(arg1, arg2, arg1 === arg2)\n\tframe_dig -1 // arg1: boolean\n\tassert\n\tframe_dig -2 // arg2: boolean\n\tassert\n\tframe_dig -1 // arg1: boolean\n\tframe_dig -2 // arg2: boolean\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromArg:\n\t// somePay: pay\n\ttxn GroupIndex\n\tint 1\n\t-\n\tdup\n\tgtxns TypeEnum\n\tint pay\n\t==\n\tassert\n\n\t// execute verifyTxnFromArg(pay)void\n\tcallsub verifyTxnFromArg\n\tint 1\n\treturn\n\n// verifyTxnFromArg(pay)void\nverifyTxnFromArg:\n\tproto 1 0\n\n\t// tests/contracts/general.algo.ts:40\n\t// verifyTxn(somePay, { receiver: this.app.address, amount: 100_000 })\n\t// verify receiver\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Receiver\n\tglobal CurrentApplicationAddress\n\t==\n\tassert\n\n\t// verify amount\n\tframe_dig -1 // somePay: PayTxn\n\tgtxns Amount\n\tint 100_000\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnFromTxnGroup:\n\t// execute verifyTxnFromTxnGroup()void\n\tcallsub verifyTxnFromTxnGroup\n\tint 1\n\treturn\n\n// verifyTxnFromTxnGroup()void\nverifyTxnFromTxnGroup:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:44\n\t// verifyTxn(this.txnGroup[0], { sender: this.txn.sender })\n\t// verify sender\n\tint 0\n\tgtxns Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnCondition:\n\t// execute verifyTxnCondition()void\n\tcallsub verifyTxnCondition\n\tint 1\n\treturn\n\n// verifyTxnCondition()void\nverifyTxnCondition:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:48\n\t// verifyTxn(this.txn, {\n\t// applicationID: { greaterThan: 1 },\n\t// })\n\t// verify applicationID\n\ttxn ApplicationID\n\tint 1\n\t>\n\tassert\n\tretsub\n\nabi_route_verifyTxnIncludedIn:\n\t// execute verifyTxnIncludedIn()void\n\tcallsub verifyTxnIncludedIn\n\tint 1\n\treturn\n\n// verifyTxnIncludedIn()void\nverifyTxnIncludedIn:\n\tproto 0 0\n\n\t// tests/contracts/general.algo.ts:54\n\t// verifyTxn(this.txn, {\n\t// sender: { includedIn: [this.txn.sender] },\n\t// })\n\t// verify sender\n\ttxn Sender\n\ttxn Sender\n\t==\n\tassert\n\tretsub\n\nabi_route_verifyTxnNotIncludedIn:\n\t// execute verifyTxnNotIncl
|