Skip to content

Commit

Permalink
Enhancement: Tx.Unlock refactor (#100)
Browse files Browse the repository at this point in the history
* renamed unlock/unlockall to signoff/signoffall

* added unlockinputparams, renamed unlock funcs to be input level, updated docs, added test

* renamed test var

* refactor!: remove useless funcs
fix localUnlocker check at the beginning
ApplyUnlockingScript -> InsertInputUnlockingScript

* WIP: refactor

* big change

* fixed linter

* renamed unlocker.Local to unlocker.Simple. Created unlocker getter example

* added ref to example in docstring

* rename local.go to simple.go

Co-authored-by: Jad Wahab <j.wahab@nchain.com>
  • Loading branch information
tigh-latte and Jad Wahab authored Dec 20, 2021
1 parent cd4781e commit e724ab8
Show file tree
Hide file tree
Showing 21 changed files with 610 additions and 326 deletions.
84 changes: 42 additions & 42 deletions bscript/interpreter/debug/debugger_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,10 +41,10 @@ func TestDebugger_BeforeExecute(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

var timesCalled int
Expand All @@ -60,7 +60,7 @@ func TestDebugger_BeforeExecute(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -137,10 +137,10 @@ func TestDebugger_BeforeStep(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

history := &stateHistory{
Expand All @@ -160,7 +160,7 @@ func TestDebugger_BeforeStep(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -237,10 +237,10 @@ func TestDebugger_AfterStep(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

history := &stateHistory{
Expand All @@ -260,7 +260,7 @@ func TestDebugger_AfterStep(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -338,10 +338,10 @@ func TestDebugger_BeforeExecuteOpcode(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

history := &stateHistory{
Expand All @@ -361,7 +361,7 @@ func TestDebugger_BeforeExecuteOpcode(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -438,10 +438,10 @@ func TestDebugger_AfterExecuteOpcode(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

history := &stateHistory{
Expand All @@ -461,7 +461,7 @@ func TestDebugger_AfterExecuteOpcode(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -521,10 +521,10 @@ func TestDebugger_BeforeScriptChange(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

history := &stateHistory{
Expand All @@ -547,7 +547,7 @@ func TestDebugger_BeforeScriptChange(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -608,10 +608,10 @@ func TestDebugger_AfterScriptChange(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

history := &stateHistory{
Expand All @@ -634,7 +634,7 @@ func TestDebugger_AfterScriptChange(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -677,10 +677,10 @@ func TestDebugger_AfterExecution(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

stack := make([]string, 0)
Expand All @@ -695,7 +695,7 @@ func TestDebugger_AfterExecution(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -735,10 +735,10 @@ func TestDebugger_AfterError(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

stack := make([]string, 0)
Expand All @@ -755,7 +755,7 @@ func TestDebugger_AfterError(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -801,10 +801,10 @@ func TestDebugger_AfterSuccess(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

stack := make([]string, 0)
Expand All @@ -821,7 +821,7 @@ func TestDebugger_AfterSuccess(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -907,10 +907,10 @@ func TestDebugger_BeforeStackPush(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

history := &stateHistory{
Expand All @@ -932,7 +932,7 @@ func TestDebugger_BeforeStackPush(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -1016,10 +1016,10 @@ func TestDebugger_AfterStackPush(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

history := &stateHistory{
Expand All @@ -1041,7 +1041,7 @@ func TestDebugger_AfterStackPush(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -1117,10 +1117,10 @@ func TestDebugger_BeforeStackPop(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

history := &stateHistory{
Expand All @@ -1140,7 +1140,7 @@ func TestDebugger_BeforeStackPop(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down Expand Up @@ -1220,10 +1220,10 @@ func TestDebugger_AfterStackPop(t *testing.T) {

for name, test := range tests {
t.Run(name, func(t *testing.T) {
ls, err := bscript.NewFromHexString(test.lockingScriptHex)
lscript, err := bscript.NewFromHexString(test.lockingScriptHex)
assert.NoError(t, err)

uls, err := bscript.NewFromHexString(test.unlockingScriptHex)
uscript, err := bscript.NewFromHexString(test.unlockingScriptHex)
assert.NoError(t, err)

history := &stateHistory{
Expand All @@ -1245,7 +1245,7 @@ func TestDebugger_AfterStackPop(t *testing.T) {
})

interpreter.NewEngine().Execute(
interpreter.WithScripts(ls, uls),
interpreter.WithScripts(lscript, uscript),
interpreter.WithAfterGenesis(),
interpreter.WithDebugger(debugger),
)
Expand Down
Loading

0 comments on commit e724ab8

Please sign in to comment.