private CashOperationsFeeModel GetCashOperationsFeeModel(decimal volume, CashType cashType) { var result = new CashOperationsFeeModel { BrokerId = BrokerId, Asset = Btc }; switch (cashType) { case CashType.CashIn: result.CashInValue = volume; result.CashInFeeType = CashOperationsFeeTypeModel.Percentage; break; case CashType.CashOut: result.CashOutValue = volume; result.CashOutFeeType = CashOperationsFeeTypeModel.Percentage; break; case CashType.Transfer: result.CashTransferValue = volume; result.CashTransferFeeType = CashOperationsFeeTypeModel.Percentage; break; } return(result); }
public async Task <CashOperationsFeeModel> GetByBrokerIdAndAsset(string brokerId, string asset) { var response = await _client.GetByBrokerIdAndAssetAsync(new GetCashOperationsFeeByBrokerIdAndAssetRequest { BrokerId = brokerId, Asset = asset }); if (response.CashOperationsFee == null) { return(null); } var result = new CashOperationsFeeModel(response.CashOperationsFee); return(result); }
private IFeesClient InitializeFeesClient(CashOperationsFeeModel feeModel, SettingsModel settings) { var feesClientMock = new Mock <IFeesClient>(); var cashOperationsFeesApiMock = new Mock <ICashOperationsFeesApi>(); cashOperationsFeesApiMock.Setup(x => x.GetByBrokerIdAndAsset(It.IsAny <string>(), It.IsAny <string>())) .Returns((string brokerId, string asset) => { return(Task.FromResult(feeModel)); }); feesClientMock.SetupGet(x => x.CashOperationsFees).Returns(() => cashOperationsFeesApiMock.Object); var settingsApiMock = new Mock <ISettingsApi>(); settingsApiMock.Setup(x => x.GetByBrokerId(It.IsAny <string>())) .Returns((string brokerId) => { return(Task.FromResult(settings)); }); feesClientMock.SetupGet(x => x.Settings).Returns(() => settingsApiMock.Object); return(feesClientMock.Object); }