Exemple #1
0
        public static string LoginU8(string cAccId, string cYear, string appServer, string dataSource, string sdata, string userid, string pass, string curlangid)
        {
            var login     = TokenTransfer.DoLogin(cAccId, cYear, appServer, dataSource, sdata, userid, pass, curlangid);
            var userToken = login.UserToken;

            return(userToken);
        }
Exemple #2
0
        public TezosTokenTransferViewModel(TokenTransfer tx, TezosConfig tezosConfig)
        {
            _tezosConfig = tezosConfig;

            Transaction  = tx ?? throw new ArgumentNullException(nameof(tx));
            Id           = tx.Hash;
            State        = Transaction.State;
            Type         = GetType(Transaction.Type);
            From         = tx.From;
            To           = tx.To;
            Amount       = GetAmount(tx);
            AmountFormat = $"F{Math.Min(tx.Token.Decimals, MaxAmountDecimals)}";
            CurrencyCode = tx.Token.Symbol;
            Time         = tx.CreationTime ?? DateTime.UtcNow;
            Alias        = tx.Alias;

            TxExplorerUri = $"{_tezosConfig.TxExplorerUri}{Id}";

            Description = GetDescription(
                type: tx.Type,
                amount: Amount,
                netAmount: Amount,
                amountDigits: tx.Token.Decimals,
                currencyCode: tx.Token.Symbol);
        }
Exemple #3
0
    public void OtherObjectsAreNotConsideredEqual()
    {
        var  token   = new Address(0, 0, Generator.Integer(0, 200));
        var  address = new Address(0, 0, Generator.Integer(200, 400));
        long amount  = Generator.Integer(500, 600);
        var  tt      = new TokenTransfer(token, address, amount);

        Assert.False(tt.Equals("Something that is not an TokenTransfer"));
    }
Exemple #4
0
    public void ReferenceEqualIsconsideredEqual()
    {
        var    token     = new Address(0, 0, Generator.Integer(0, 200));
        var    address   = new Address(0, 0, Generator.Integer(200, 400));
        long   amount    = Generator.Integer(500, 600);
        var    tt        = new TokenTransfer(token, address, amount);
        object reference = tt;

        Assert.True(tt.Equals(reference));
        Assert.True(reference.Equals(tt));
    }
Exemple #5
0
    public void TokenTransferCastAsObjectIsconsideredEqual()
    {
        var    token      = new Address(0, 0, Generator.Integer(0, 200));
        var    address    = new Address(0, 0, Generator.Integer(200, 400));
        long   amount     = Generator.Integer(500, 600);
        var    tt         = new TokenTransfer(token, address, amount);
        object equivalent = new TokenTransfer(token, address, amount);

        Assert.True(tt.Equals(equivalent));
        Assert.True(equivalent.Equals(tt));
    }
Exemple #6
0
    public void CanCreateTokenTransferObject()
    {
        var  token   = new Address(0, 0, Generator.Integer(0, 200));
        var  address = new Address(0, 0, Generator.Integer(200, 400));
        long amount  = Generator.Integer(500, 600);
        var  tt      = new TokenTransfer(token, address, amount);

        Assert.Equal(token, tt.Token);
        Assert.Equal(address, tt.Address);
        Assert.Equal(amount, tt.Amount);
    }
Exemple #7
0
 public API_TokenTransfer_4_3(TokenTransfer tt)
 {
     Token       = Base58CheckEncoding.EncodePlain(tt.Token);
     Code        = tt.Code;
     Sender      = Base58CheckEncoding.EncodePlain(tt.Sender);
     Receiver    = Base58CheckEncoding.EncodePlain(tt.Receiver);
     Amount      = tt.Amount;
     Initiator   = Base58CheckEncoding.EncodePlain(tt.Initiator);
     Transaction = ConvertTransactionId(tt.Transaction);
     Time        = tt.Time;
 }
Exemple #8
0
    public void NullTokenTransfersAreNotConsideredEqual()
    {
        object asNull  = null;
        var    token   = new Address(0, 0, Generator.Integer(0, 200));
        var    address = new Address(0, 0, Generator.Integer(200, 400));
        long   amount  = Generator.Integer(500, 600);
        var    tt      = new TokenTransfer(token, address, amount);

        Assert.False(tt == null);
        Assert.False(null == tt);
        Assert.True(tt != null);
        Assert.False(tt.Equals(null));
        Assert.False(tt.Equals(asNull));
    }
Exemple #9
0
        private static decimal GetAmount(TokenTransfer tx)
        {
            if (tx.Amount.TryParseWithRound(tx.Token.Decimals, out var amount))
            {
                var sign = tx.Type.HasFlag(BlockchainTransactionType.Input)
                    ? 1
                    : -1;


                return(sign * amount);
            }

            return(0);
        }
Exemple #10
0
    public void EquivalentTokenTransferAreConsideredEqual()
    {
        var  token   = new Address(0, 0, Generator.Integer(0, 200));
        var  address = new Address(0, 0, Generator.Integer(200, 400));
        long amount  = Generator.Integer(500, 600);
        var  tt1     = new TokenTransfer(token, address, amount);
        var  tt2     = new TokenTransfer(token, address, amount);

        Assert.Equal(tt1, tt2);
        Assert.True(tt1 == tt2);
        Assert.False(tt1 != tt2);
        Assert.True(tt1.Equals(tt2));
        Assert.True(tt2.Equals(tt1));
        Assert.True(null as TokenTransfer == null as TokenTransfer);
    }
Exemple #11
0
        public static string LoginU8()
        {
            string cAccId     = "999";
            string cYear      = "2015";
            string appServer  = "localhost";
            string dataSource = "(default)";
            string sdata      = "2015/08/14";
            string userid     = "ASUSER";
            string pass       = "******";
            string curlangid  = "zh-CN";
            var    login      = TokenTransfer.DoLogin(cAccId, cYear, appServer, dataSource, sdata, userid, pass, curlangid);
            var    userToken  = login.UserToken;

            return(userToken);
        }
Exemple #12
0
    public void DisimilarTokenTransfersAreNotConsideredEqual()
    {
        var  token   = new Address(0, 0, Generator.Integer(0, 200));
        var  address = new Address(0, 0, Generator.Integer(200, 400));
        var  other   = new Address(0, 0, Generator.Integer(500, 600));
        long amount  = Generator.Integer(500, 600);
        var  tt      = new TokenTransfer(token, address, amount);

        Assert.NotEqual(tt, new TokenTransfer(token, other, amount));
        Assert.NotEqual(tt, new TokenTransfer(other, address, amount));
        Assert.NotEqual(tt, new TokenTransfer(token, address, amount + 1));
        Assert.False(tt == new TokenTransfer(token, address, amount + 1));
        Assert.True(tt != new TokenTransfer(token, address, amount + 1));
        Assert.False(tt.Equals(new TokenTransfer(other, address, amount)));
        Assert.False(tt.Equals(new TokenTransfer(token, other, amount)));
        Assert.False(tt.Equals(new TokenTransfer(token, address, amount + 1)));
    }
    public static TokenTransfer decTokenTransfer(byte[] raw)
    {
        TokenTransfer tt   = new TokenTransfer();
        int           seek = 0;
        int           len  = 0;

        len      = (int)raw.Range(seek, 2).AsBigInteger();
        seek    += 2;
        tt.token = decTokenInfo(raw.Range(seek, len));
        seek    += len;

        len         = (int)raw.Range(seek, 2).AsBigInteger();
        seek       += 2;
        tt.receiver = decAccountAmtPair(raw.Range(seek, len));
        seek       += len;
        BasicMethods.assert(raw.Length == seek, "decTokenInfo raw data illegal");
        return(tt);
    }
Exemple #14
0
    public void CombinAmountsForNewTokenTransferRecord()
    {
        var  token   = new Address(0, 0, Generator.Integer(0, 200));
        var  address = new Address(0, 0, Generator.Integer(200, 400));
        long amount  = Generator.Integer(500, 600);
        var  tt1     = new TokenTransfer(token, address, amount);
        var  tt2     = tt1 with {
            Amount = tt1.Amount + amount
        };
        var tt3 = tt2 with {
            Amount = tt2.Amount - amount
        };

        Assert.Equal(amount, tt1.Amount);
        Assert.Equal(amount * 2, tt2.Amount);
        Assert.Equal(amount, tt3.Amount);
        Assert.True(tt1.Equals(tt3));
        Assert.True(tt3.Equals(tt1));
    }
}