示例#1
0
        public async Task UpdateMarginAssetPair()
        {
            string url = ApiPaths.MARGIN_ASSET_PAIRS_PATH;

            MarginAssetPairDTO TestMarginAssetPairUpdate = await CreateTestMarginAssetPair();

            MarginAssetPairDTO updateDTO = new MarginAssetPairDTO()
            {
                Id               = TestMarginAssetPairUpdate.Id,
                Accuracy         = TestMarginAssetPairUpdate.Accuracy + Helpers.Random.Next(1, 4),
                InvertedAccuracy = TestMarginAssetPairUpdate.InvertedAccuracy,
                Name             = TestMarginAssetPairUpdate.Name + "_AutoTest",
                BaseAssetId      = TestMarginAssetPairUpdate.BaseAssetId,
                QuotingAssetId   = TestMarginAssetPairUpdate.QuotingAssetId
            };

            string editParam = JsonUtils.SerializeObject(updateDTO);
            var    response  = await this.Consumer.ExecuteRequest(url, Helpers.EmptyDictionary, editParam, Method.PUT);

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

            MarginAssetPairsEntity entity = await this.MarginAssetPairManager.TryGetAsync(updateDTO.Id) as MarginAssetPairsEntity;

            Assert.NotNull(entity);
            entity.ShouldBeEquivalentTo(updateDTO, o => o.ExcludingMissingMembers());
        }
示例#2
0
        public async Task <MarginAssetPairDTO> CreateTestMarginAssetPair()
        {
            string url = ApiPaths.MARGIN_ASSET_PAIRS_PATH;
            MarginAssetPairsEntity templateEntity = EnumerableUtils.PickRandom(AllMarginAssetPairsFromDB);
            MarginAssetPairDTO     createDTO      = this.mapper.Map <MarginAssetPairDTO>(templateEntity);

            createDTO.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);
            createDTO.InvertedAccuracy = Helpers.Random.Next(2, 8);
            createDTO.BaseAssetId     += Helpers.Random.Next(1000, 9999).ToString() + GlobalConstants.AutoTest;
            createDTO.QuotingAssetId  += Helpers.Random.Next(1000, 9999).ToString() + GlobalConstants.AutoTest;
            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 DeleteTestMarginAssetPair(createDTO.Id));

            return(createDTO);
        }
示例#3
0
        public async Task CreateMarginAssetPair()
        {
            MarginAssetPairDTO createdDTO = await this.CreateTestMarginAssetPair();

            Assert.NotNull(createdDTO);

            MarginAssetPairsEntity entity = await this.MarginAssetPairManager.TryGetAsync(createdDTO.Id) as MarginAssetPairsEntity;

            Assert.NotNull(entity);
            entity.ShouldBeEquivalentTo(createdDTO, o => o.ExcludingMissingMembers());
        }
示例#4
0
        public async Task GetSingleMarginAssetPairs()
        {
            string url      = ApiPaths.MARGIN_ASSET_PAIRS_PATH + "/" + this.TestMarginAssetPair.Id;
            var    response = await this.Consumer.ExecuteRequest(url, Helpers.EmptyDictionary, null, Method.GET);

            Assert.True(response.Status == HttpStatusCode.OK);

            MarginAssetPairDTO parsedResponse = JsonUtils.DeserializeJson <MarginAssetPairDTO>(response.ResponseJson);

            this.TestMarginAssetPair.ShouldBeEquivalentTo(parsedResponse, o => o
                                                          .ExcludingMissingMembers());
        }
示例#5
0
        public async Task DeleteMarginAssetPair()
        {
            MarginAssetPairDTO TestMarginAssetPairDelete = await CreateTestMarginAssetPair();

            string url      = ApiPaths.MARGIN_ASSET_PAIRS_PATH + "/" + TestMarginAssetPairDelete.Id;
            var    response = await this.Consumer.ExecuteRequest(url, Helpers.EmptyDictionary, null, Method.DELETE);

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

            MarginAssetPairsEntity entity = await this.MarginAssetPairManager.TryGetAsync(TestMarginAssetPairDelete.Id) as MarginAssetPairsEntity;

            Assert.Null(entity);
        }