summaryrefslogtreecommitdiff
path: root/data/basics/userBalance_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'data/basics/userBalance_test.go')
-rw-r--r--data/basics/userBalance_test.go40
1 files changed, 31 insertions, 9 deletions
diff --git a/data/basics/userBalance_test.go b/data/basics/userBalance_test.go
index 1670fe58d..04a770d92 100644
--- a/data/basics/userBalance_test.go
+++ b/data/basics/userBalance_test.go
@@ -105,16 +105,11 @@ func makeString(len int) string {
return s
}
-func TestEncodedAccountDataSize(t *testing.T) {
- partitiontest.PartitionTest(t)
-
+func getSampleAccountData() AccountData {
oneTimeSecrets := crypto.GenerateOneTimeSignatureSecrets(0, 1)
vrfSecrets := crypto.GenerateVRFSecrets()
- maxStateSchema := StateSchema{
- NumUint: 0x1234123412341234,
- NumByteSlice: 0x1234123412341234,
- }
- ad := AccountData{
+
+ return AccountData{
Status: NotParticipating,
MicroAlgos: MicroAlgos{},
RewardsBase: 0x1234123412341234,
@@ -128,9 +123,19 @@ func TestEncodedAccountDataSize(t *testing.T) {
Assets: make(map[AssetIndex]AssetHolding),
AppLocalStates: make(map[AppIndex]AppLocalState),
AppParams: make(map[AppIndex]AppParams),
- TotalAppSchema: maxStateSchema,
AuthAddr: Address(crypto.Hash([]byte{1, 2, 3, 4})),
}
+}
+
+func TestEncodedAccountDataSize(t *testing.T) {
+ partitiontest.PartitionTest(t)
+
+ maxStateSchema := StateSchema{
+ NumUint: 0x1234123412341234,
+ NumByteSlice: 0x1234123412341234,
+ }
+ ad := getSampleAccountData()
+ ad.TotalAppSchema = maxStateSchema
// TODO after applications enabled: change back to protocol.ConsensusCurrentVersion
currentConsensusParams := config.Consensus[protocol.ConsensusFuture]
@@ -253,3 +258,20 @@ func TestAppIndexHashing(t *testing.T) {
i = AppIndex(77)
require.Equal(t, "PCYUFPA2ZTOYWTP43MX2MOX2OWAIAXUDNC2WFCXAGMRUZ3DYD6BWFDL5YM", i.Address().String())
}
+
+func TestOnlineAccountData(t *testing.T) {
+ partitiontest.PartitionTest(t)
+
+ ad := getSampleAccountData()
+ ad.MicroAlgos.Raw = 1000000
+ ad.Status = Offline
+
+ oad := ad.OnlineAccountData()
+ require.Empty(t, oad)
+
+ ad.Status = Online
+ oad = ad.OnlineAccountData()
+ require.Equal(t, ad.MicroAlgos, oad.MicroAlgosWithRewards)
+ require.Equal(t, ad.VoteID, oad.VoteID)
+ require.Equal(t, ad.SelectionID, oad.SelectionID)
+}