public void TestGetAssetsByAddressReturnsValidData()
        {
            using (var memoryState = new KeokenMemoryState())
                using (var address_source = new PaymentAddress("16TGufqQ9FPnEbixbD4ZjVabaP455roE6t"))
                    using (var address_target = new PaymentAddress("my2dxGb5jz43ktwGxg2doUaEb9WhZ9PQ7K"))
                    {
                        byte[] hash = Binary.HexStringToByteArray("000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f");
                        memoryState.InitialAssetId = 5;

                        memoryState.CreateAsset("test asset", 15, address_source, 10, hash);

                        memoryState.CreateBalanceEntry(5, 15, address_source, address_target, 5, hash);

                        using (var ret = memoryState.GetAssetsByAddress(address_target))
                        {
                            Assert.Equal <ulong>(1, ret.Count);

                            var data = ret[0];

                            Assert.Equal <uint>(5, data.AssetId);
                            Assert.Equal(15, data.Amount);
                            Assert.Equal("test asset", data.AssetName);
                            Assert.Equal(address_source.Encoded, data.AssetCreator.Encoded);
                        }
                    }
        }
        public void TestCreateBalanceEntry()
        {
            using (var memoryState = new KeokenMemoryState())
                using (var address_source = new PaymentAddress("16TGufqQ9FPnEbixbD4ZjVabaP455roE6t"))
                    using (var address_target = new PaymentAddress("my2dxGb5jz43ktwGxg2doUaEb9WhZ9PQ7K"))
                    {
                        byte[] hash = Binary.HexStringToByteArray("000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f");
                        memoryState.InitialAssetId = 5;

                        memoryState.CreateAsset("test asset", 15, address_source, 10, hash);

                        memoryState.CreateBalanceEntry(5, 15, address_source, address_target, 5, hash);

                        Assert.Equal(0, memoryState.GetBalance(5, address_source));
                        Assert.Equal(15, memoryState.GetBalance(5, address_target));
                    }
        }