Esempio n. 1
0
        public async Task UpdateAssetPair()
        {
            string url = ApiPaths.ASSET_PAIRS_PATH;

            AssetPairDTO TestAssetPairUpdate = await CreateTestAssetPair();

            AssetPairDTO updateAssetPair = new AssetPairDTO()
            {
                Accuracy         = Helpers.Random.Next(2, 8),
                BaseAssetId      = TestAssetPairUpdate.BaseAssetId,
                Id               = TestAssetPairUpdate.Id,
                InvertedAccuracy = TestAssetPairUpdate.InvertedAccuracy,
                IsDisabled       = TestAssetPairUpdate.IsDisabled,
                Name             = TestAssetPairUpdate.Name + Helpers.Random.Next(1000, 9999).ToString() + GlobalConstants.AutoTest,
                QuotingAssetId   = TestAssetPairUpdate.QuotingAssetId,
                Source           = TestAssetPairUpdate.Source,
                Source2          = TestAssetPairUpdate.Source2
            };
            string updateParam = JsonUtils.SerializeObject(updateAssetPair);

            var response = await this.Consumer.ExecuteRequest(url, Helpers.EmptyDictionary, updateParam, Method.PUT);

            Assert.NotNull(response);
            Assert.True(response.Status == HttpStatusCode.NoContent);

            AssetPairEntity entity = await this.AssetPairManager.TryGetAsync(updateAssetPair.Id) as AssetPairEntity;

            entity.ShouldBeEquivalentTo(updateAssetPair, o => o
                                        .ExcludingMissingMembers());
        }
Esempio n. 2
0
        public async Task CreateAssetPair()
        {
            AssetPairDTO newAssetPair = await this.CreateTestAssetPair();

            Assert.NotNull(newAssetPair);

            AssetPairEntity entity = await this.AssetPairManager.TryGetAsync(newAssetPair.Id) as AssetPairEntity;

            entity.ShouldBeEquivalentTo(newAssetPair, o => o
                                        .ExcludingMissingMembers());
        }
Esempio n. 3
0
        public async Task DeleteAssetPair()
        {
            AssetPairDTO TestAssetPairDelete = await CreateTestAssetPair();

            string url    = ApiPaths.ASSET_PAIRS_PATH + "/" + TestAssetPairDelete.Id;
            var    result = await this.Consumer.ExecuteRequest(url, Helpers.EmptyDictionary, null, Method.DELETE);

            Assert.NotNull(result);
            Assert.True(result.Status == HttpStatusCode.NoContent);

            AssetPairEntity entity = await this.AssetPairManager.TryGetAsync(TestAssetPairDelete.Id) as AssetPairEntity;

            Assert.Null(entity);
        }
Esempio n. 4
0
        public async Task <AssetPairDTO> CreateTestAssetPair()
        {
            string          url            = ApiPaths.ASSET_PAIRS_PATH;
            AssetPairEntity templateEntity = EnumerableUtils.PickRandom(AllAssetPairsFromDB);
            AssetPairDTO    createDTO      = this.mapper.Map <AssetPairDTO>(templateEntity);

            createDTO.Id       = templateEntity.Id + Helpers.Random.Next(1000, 9999).ToString() + GlobalConstants.AutoTest;
            createDTO.Name    += Helpers.Random.Next(1000, 9999).ToString() + GlobalConstants.AutoTest;
            createDTO.Accuracy = Helpers.Random.Next(2, 8);
            string createParam = JsonUtils.SerializeObject(createDTO);

            var response = await Consumer.ExecuteRequest(url, Helpers.EmptyDictionary, createParam, Method.POST);

            if (response.Status != HttpStatusCode.Created)
            {
                return(null);
            }

            AddOneTimeCleanupAction(async() => await DeleteTestAssetPair(createDTO.Id));

            return(createDTO);
        }
Esempio n. 5
0
        private async Task prepareTestData()
        {
            ConfigBuilder apiv2Config          = new ConfigBuilder("ApiV2");
            ApiConsumer   registerConsumer1    = new ApiConsumer(apiv2Config);
            ApiConsumer   registerConsumer2    = new ApiConsumer(apiv2Config);
            var           registerTestAccount1 = registerConsumer1.RegisterNewUser();
            var           registerTestAccount2 = registerConsumer2.RegisterNewUser();

            TestAsset1 = Constants.TestAsset1;
            TestAsset2 = Constants.TestAsset2;

            TestAccountId1 = (await registerTestAccount1)?.Account.Id;
            TestAccountId2 = (await registerTestAccount2)?.Account.Id;

            AddOneTimeCleanupAction(async() => await ClientAccounts.DeleteClientAccount(TestAccountId1));
            AddOneTimeCleanupAction(async() => await ClientAccounts.DeleteClientAccount(TestAccountId2));

            //give test clients some cash to work with
            List <Task> giveCashTasks = new List <Task>()
            {
                Consumer.Client.UpdateBalanceAsync(Guid.NewGuid().ToString(), TestAccountId1, TestAsset1, Constants.InitialAssetAmmount),
                Consumer.Client.UpdateBalanceAsync(Guid.NewGuid().ToString(), TestAccountId1, TestAsset2, Constants.InitialAssetAmmount),
                Consumer.Client.UpdateBalanceAsync(Guid.NewGuid().ToString(), TestAccountId2, TestAsset1, Constants.InitialAssetAmmount),
                Consumer.Client.UpdateBalanceAsync(Guid.NewGuid().ToString(), TestAccountId2, TestAsset2, Constants.InitialAssetAmmount)
            };

            if (!Int32.TryParse(_configBuilder.Config["AssetPrecission"], out AssetPrecission))
            {
                AssetPrecission = 2;
            }

            this.TestAssetPair = (AssetPairEntity)Task.Run(async() =>
            {
                return(await this.AssetPairsRepository.TryGetAsync(TestAsset1 + TestAsset2));
            }).Result;

            await Task.WhenAll(giveCashTasks);
        }
Esempio n. 6
0
 public async Task <IAssetPair> GetAsync(string assetPairId)
 {
     return(Convert(await _tableStorage.GetDataAsync(AssetPairEntity.GeneratePartitionKey(),
                                                     AssetPairEntity.GenerateRowKey(assetPairId))));
 }