Continued implementing the Instruction Pointer
This commit is contained in:
parent
46170dd5b7
commit
309dcb5a02
4 changed files with 54 additions and 3 deletions
35
pkg/pointer/storage-offset_test.go
Normal file
35
pkg/pointer/storage-offset_test.go
Normal file
|
@ -0,0 +1,35 @@
|
|||
package pointer
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestGetStorageOffset(t *testing.T) {
|
||||
p := NewPointer()
|
||||
x, y := p.GetStorageOffset()
|
||||
require.Equal(t, x, 0)
|
||||
require.Equal(t, y, 0)
|
||||
p.SetStorageOffset(3, 8)
|
||||
x, y = p.GetStorageOffset()
|
||||
require.Equal(t, x, 3)
|
||||
require.Equal(t, y, 8)
|
||||
}
|
||||
|
||||
func TestCalculateNewStorageOffset(t *testing.T) {
|
||||
p := NewPointer()
|
||||
p.CalculateNewStorageOffset()
|
||||
x, y := p.GetStorageOffset()
|
||||
require.Equal(t, x, 1)
|
||||
require.Equal(t, y, 0)
|
||||
p.sox, p.soy = 3, 2
|
||||
x, y = p.GetStorageOffset()
|
||||
require.Equal(t, x, 3)
|
||||
require.Equal(t, y, 2)
|
||||
p.x, p.y = 8, 12
|
||||
p.CalculateNewStorageOffset()
|
||||
x, y = p.GetStorageOffset()
|
||||
require.Equal(t, x, 9)
|
||||
require.Equal(t, y, 12)
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue