Adding modding folder with a hacked build.
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
package serial_test
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"testing"
|
||||
|
||||
"github.com/inkyblackness/hacked/ss1/serial"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestPositioningDecoderSetCurPosRepositionsReadOffset(t *testing.T) {
|
||||
var source = bytes.NewReader([]byte{0x78, 0x12, 0x34})
|
||||
coder := serial.NewPositioningDecoder(source)
|
||||
arrayValue := make([]byte, 3)
|
||||
var intValue uint16
|
||||
|
||||
coder.Code(arrayValue)
|
||||
coder.SetCurPos(1)
|
||||
coder.Code(&intValue)
|
||||
|
||||
assert.Equal(t, uint16(0x3412), intValue)
|
||||
}
|
||||
|
||||
func TestPositioningDecoderCurPosReturnsCurrentOffset(t *testing.T) {
|
||||
var source = bytes.NewReader([]byte{0x78, 0x12, 0x34})
|
||||
coder := serial.NewPositioningDecoder(source)
|
||||
|
||||
coder.Code(uint16(0))
|
||||
|
||||
assert.Equal(t, uint32(2), coder.CurPos())
|
||||
}
|
||||
|
||||
func TestPositioningDecoderFirstErrorBySetCurPos(t *testing.T) {
|
||||
var target errorBuffer
|
||||
coder := serial.NewPositioningDecoder(&target)
|
||||
|
||||
data := uint32(0)
|
||||
coder.Code(&data)
|
||||
target.errorOnNextCall = true
|
||||
coder.SetCurPos(0)
|
||||
|
||||
assert.EqualError(t, coder.FirstError(), "errorBuffer on call number 2")
|
||||
}
|
||||
|
||||
func TestPositioningDecoderSetCurPosDoesNothingOnPreviousError(t *testing.T) {
|
||||
var target errorBuffer
|
||||
coder := serial.NewPositioningDecoder(&target)
|
||||
target.errorOnNextCall = true
|
||||
coder.Code(uint32(0))
|
||||
target.errorOnNextCall = true
|
||||
coder.SetCurPos(0)
|
||||
|
||||
assert.Equal(t, target.callCounter, 1)
|
||||
assert.EqualError(t, coder.FirstError(), "errorBuffer on call number 1")
|
||||
}
|
||||
|
||||
func TestCurPosIsNotChangedOnSetError(t *testing.T) {
|
||||
var target errorBuffer
|
||||
coder := serial.NewPositioningDecoder(&target)
|
||||
target.errorOnNextCall = true
|
||||
coder.SetCurPos(4)
|
||||
assert.Equal(t, uint32(0), coder.CurPos())
|
||||
}
|
||||
Reference in New Issue
Block a user