mirror of
https://github.com/go-i2p/go-i2p.git
synced 2025-07-04 13:32:52 -04:00
64 lines
1.7 KiB
Go
64 lines
1.7 KiB
Go
package tunnel
|
|
|
|
import (
|
|
"github.com/stretchr/testify/assert"
|
|
"testing"
|
|
)
|
|
|
|
func TestDeliveryInstructionDataWithNoPadding(t *testing.T) {
|
|
assert := assert.New(t)
|
|
|
|
data := make([]byte, 0)
|
|
data = append(data, make([]byte, 4+4+16)...)
|
|
data = append(data, 0)
|
|
data = append(data, make([]byte, 1028-4-4-16-1)...)
|
|
var decrypted_tunnel_message DecryptedTunnelMessage
|
|
copy(decrypted_tunnel_message[:], data)
|
|
di := decrypted_tunnel_message.deliveryInstructionData()
|
|
assert.Equal(1028-4-4-16-1, len(di))
|
|
}
|
|
|
|
func TestDeliveryInstructionDataWithSomePadding(t *testing.T) {
|
|
assert := assert.New(t)
|
|
|
|
data := make([]byte, 0)
|
|
data = append(data, make([]byte, 4+4+16)...)
|
|
padding_size := 200
|
|
for i := 0; i < padding_size; i++ {
|
|
data = append(data, 0x01)
|
|
}
|
|
data = append(data, 0)
|
|
data = append(data, make([]byte, 1028-4-4-16-1-padding_size)...)
|
|
var decrypted_tunnel_message DecryptedTunnelMessage
|
|
copy(decrypted_tunnel_message[:], data)
|
|
di := decrypted_tunnel_message.deliveryInstructionData()
|
|
assert.Equal(1028-4-4-16-1-padding_size, len(di))
|
|
|
|
}
|
|
|
|
func TestDeliveryInstructionDataWithOnlyPadding(t *testing.T) {
|
|
assert := assert.New(t)
|
|
|
|
data := make([]byte, 0)
|
|
data = append(data, make([]byte, 4+4+16)...)
|
|
padding_size := 1028 - 4 - 4 - 16 - 1
|
|
for i := 0; i < padding_size; i++ {
|
|
data = append(data, 0x01)
|
|
}
|
|
data = append(data, 0)
|
|
var decrypted_tunnel_message DecryptedTunnelMessage
|
|
copy(decrypted_tunnel_message[:], data)
|
|
di := decrypted_tunnel_message.deliveryInstructionData()
|
|
assert.Equal(0, len(di))
|
|
}
|
|
|
|
func TestDeliveryInstructionsWithFragmentsWithAllPadding(t *testing.T) {
|
|
|
|
}
|
|
|
|
// Test invalid delivery instructions and message fragments
|
|
|
|
func TestDeliveryInstructionsWithFragmentsWithValidData(t *testing.T) {
|
|
|
|
}
|