示例#1
0
        public void GetMyOrders_Should_RespondWithUserOrdersArray()
        {
            // arrange
            var orders = new SwitcheoOrder[]
            {
                new SwitcheoOrder()
                {
                    Id                 = new Guid("c415f943-bea8-4dbf-82e3-8460c559d8b7"),
                    Blockchain         = BlockchainType.Neo,
                    ContractHash       = SampleContractHash,
                    Address            = SampleAddress,
                    Side               = OrderSide.Buy,
                    OfferAsset         = SampleTokensList[0],
                    WantAsset          = SampleTokensList[1],
                    OfferAmount        = SwitcheoHelpers.FromAssetAmount("100000000", SampleTokensList[0].Precision),
                    WantAmount         = SwitcheoHelpers.FromAssetAmount("20000000", SampleTokensList[1].Precision),
                    UseNativeToken     = true,
                    DepositTransaction = null,
                    CreatedAt          = DateTime.Now,
                    Status             = OrderStatus.Processed,
                    Fills              = new SwitcheoFill[0],
                    Makes              = new SwitcheoMake[0]
                }
            };

            var client = PrepareClient(JsonConvert.SerializeObject(orders), true);

            // act
            var result = client.GetMyOrders();

            // assert
            Assert.AreEqual(true, result.Success);
            Assert.IsTrue(Compare.PublicInstancePropertiesEqual(orders[0], result.Data[0], "Fills", "Makes"));
        }
示例#2
0
        public void CreateOrder_Should_RespondWithOrder()
        {
            // arrange
            var expected = new SwitcheoOrder()
            {
                Id                 = new Guid("cfd3805c-50e1-4786-a81f-a60ffba33434"),
                Blockchain         = BlockchainType.Neo,
                ContractHash       = SampleContractHash,
                Address            = SampleAddress,
                Side               = OrderSide.Buy,
                OfferAsset         = SampleTokensList[0],
                WantAsset          = SampleTokensList[2],
                OfferAmount        = SwitcheoHelpers.FromAssetAmount("2050000", SampleTokensList[0].Precision),
                WantAmount         = SwitcheoHelpers.FromAssetAmount("2050000000", SampleTokensList[2].Precision),
                UseNativeToken     = true,
                DepositTransaction = null,
                CreatedAt          = DateTime.Now,
                Status             = OrderStatus.Pending,
                Fills              = new SwitcheoFill[]
                {
                    new SwitcheoFill()
                    {
                        Id              = new Guid("2eaa3621-0e7e-4b3d-9c8c-454427f20949"),
                        OfferHash       = "bb70a40e8465596bf63dbddf9862a009246e3ca27a4cf5140d70f01bdd107277",
                        OfferAsset      = SampleTokensList[0],
                        WantAsset       = SampleTokensList[2],
                        FillAmount      = SwitcheoHelpers.FromAssetAmount("1031498", SampleTokensList[0].Precision),
                        WantAmount      = SwitcheoHelpers.FromAssetAmount("2050000000", SampleTokensList[2].Precision),
                        FilledAmount    = 0,
                        FeeAsset        = SampleTokensList[2],
                        Price           = 0.00050317m,
                        Transaction     = null,
                        Status          = FillStatus.Pending,
                        CreatedAt       = DateTime.Now,
                        TransactionHash = "97ad8c0af68d22304e7f2d09d04f3beed29a845fe57de53444fff1507b752b99"
                    }
                }
            };

            var client = PrepareClient(JsonConvert.SerializeObject(expected), true);

            // act
            var result = client.CreateOrder("SWTH_NEO", BlockchainType.Neo, OrderSide.Buy, 0.00100000m,
                                            SwitcheoHelpers.FromAssetAmount("2050000000", SampleTokensList[0].Precision), true, OrderType.Limit);

            // assert
            Assert.AreEqual(true, result.Success);
            Assert.IsTrue(Compare.PublicInstancePropertiesEqual(expected, result.Data, "Fills", "Makes"));
            Assert.IsTrue(Compare.PublicInstancePropertiesEqual(expected.Fills[0], result.Data.Fills[0]));
        }