blob: 7df4f399ad15cf39d64a8f4aa7aa4a77a78af23a [file] [log] [blame]
// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// This files contains testdata for v.io/x/ref/lib/discovery/encoding_test.go. The
// testdata is in a vdl file so that we can make sure the encoding implementations in
// all the languages produce the same byte output.
package testdata
import (
"v.io/x/ref/lib/discovery"
)
// PackAddressTest represents a test case for PackAddress.
type PackAddressTest struct {
// In is the addresses to pack.
In []string
// Packed is the expected packed output.
Packed []byte
}
const PackAddressTestData = []PackAddressTest{
PackAddressTest{
In: []string{"a12345"},
Packed: []byte{6, 97, 49, 50, 51, 52, 53},
},
PackAddressTest{
In: []string{"a1234", "b5678", "c9012"},
Packed: []byte{5, 97, 49, 50, 51, 52, 5, 98, 53, 54, 55, 56, 5, 99, 57, 48, 49, 50},
},
// An empty input should create an empty output.
PackAddressTest{},
}
// PackEncryptionKeysTest represents a test case for PackEncryptionKeys
type PackEncryptionKeysTest struct {
// Algo is the algorithm that's in use.
// but that isn't defined in vdl yet.
Algo discovery.EncryptionAlgorithm
// Keys are the encryption keys.
// but that isn't defined in vdl yet.
Keys []discovery.EncryptionKey
// Packed is the expected output bytes.
Packed []byte
}
const PackEncryptionKeysTestData = []PackEncryptionKeysTest{
PackEncryptionKeysTest{
Algo: 1,
Keys: []discovery.EncryptionKey{discovery.EncryptionKey("0123456789")},
Packed: []byte{1, 10, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57},
},
PackEncryptionKeysTest{
Algo: 2,
Keys: []discovery.EncryptionKey{
discovery.EncryptionKey("012345"),
discovery.EncryptionKey("123456"),
discovery.EncryptionKey("234567"),
},
Packed: []byte{2, 6, 48, 49, 50, 51, 52, 53, 6, 49, 50, 51, 52, 53, 54, 6, 50, 51, 52, 53, 54, 55},
},
PackEncryptionKeysTest{
Packed: []byte{0},
},
}