/* 
 * Hydrogen Integration API
 *
 * The Hydrogen Integration API
 *
 * OpenAPI spec version: 1.3.1
 * Contact: info@hydrogenplatform.com
 * Generated by: https://github.com/swagger-api/swagger-codegen.git
 */

using System;
using System.IO;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Reflection;
using RestSharp;
using NUnit.Framework;

using Integration.Client;
using Integration.Api;
using Integration.ModelEntity;

namespace Integration.Test
{
    /// <summary>
    ///  Class for testing AggregationApi
    /// </summary>
    /// <remarks>
    /// This file is automatically generated by Swagger Codegen.
    /// Please update the test case below to test the API endpoint.
    /// </remarks>
    [TestFixture]
    public class AggregationApiTests
    {
        private AggregationApi instance;

        /// <summary>
        /// Setup before each unit test
        /// </summary>
        [SetUp]
        public void Init()
        {
            instance = new AggregationApi();
        }

        /// <summary>
        /// Clean up after each unit test
        /// </summary>
        [TearDown]
        public void Cleanup()
        {

        }

        /// <summary>
        /// Test an instance of AggregationApi
        /// </summary>
        [Test]
        public void InstanceTest()
        {
            // TODO uncomment below to test 'IsInstanceOfType' AggregationApi
            //Assert.IsInstanceOfType(typeof(AggregationApi), instance, "instance is a AggregationApi");
        }

        
        /// <summary>
        /// Test CreateAggregationAccountUsingPost
        /// </summary>
        [Test]
        public void CreateAggregationAccountUsingPostTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //AggregationRequestObject aggregationRequestObject = null;
            //var response = instance.CreateAggregationAccountUsingPost(aggregationRequestObject);
            //Assert.IsInstanceOf<AggregationAccountsResponseVO> (response, "response is AggregationAccountsResponseVO");
        }
        
        /// <summary>
        /// Test DeleteAggregationAccountUsingDelete
        /// </summary>
        [Test]
        public void DeleteAggregationAccountUsingDeleteTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //Guid? nucleusAggregationAccountId = null;
            //string deleteType = null;
            //string nucleusData = null;
            //instance.DeleteAggregationAccountUsingDelete(nucleusAggregationAccountId, deleteType, nucleusData);
            
        }
        
        /// <summary>
        /// Test GetAggregationAccountAllUsingGet
        /// </summary>
        [Test]
        public void GetAggregationAccountAllUsingGetTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //List<Guid?> aggregationAccountIdList = null;
            //var response = instance.GetAggregationAccountAllUsingGet(aggregationAccountIdList);
            //Assert.IsInstanceOf<List<AggregationAccountResponseVO>> (response, "response is List<AggregationAccountResponseVO>");
        }
        
        /// <summary>
        /// Test GetAggregationAccountBalanceAllUsingGet
        /// </summary>
        [Test]
        public void GetAggregationAccountBalanceAllUsingGetTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //List<Guid?> aggregationAccountIdList = null;
            //var response = instance.GetAggregationAccountBalanceAllUsingGet(aggregationAccountIdList);
            //Assert.IsInstanceOf<List<AggregationAccountBalanceResponseVO>> (response, "response is List<AggregationAccountBalanceResponseVO>");
        }
        
        /// <summary>
        /// Test GetAggregationAccountBalanceUsingGet
        /// </summary>
        [Test]
        public void GetAggregationAccountBalanceUsingGetTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //Guid? nucleusAggregationAccountId = null;
            //var response = instance.GetAggregationAccountBalanceUsingGet(nucleusAggregationAccountId);
            //Assert.IsInstanceOf<AggregationAccountBalanceResponseVO> (response, "response is AggregationAccountBalanceResponseVO");
        }
        
        /// <summary>
        /// Test GetAggregationAccountHoldingAllUsingGet
        /// </summary>
        [Test]
        public void GetAggregationAccountHoldingAllUsingGetTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //List<Guid?> aggregationAccountIdList = null;
            //var response = instance.GetAggregationAccountHoldingAllUsingGet(aggregationAccountIdList);
            //Assert.IsInstanceOf<List<AggregationAccountHoldingResponseVO>> (response, "response is List<AggregationAccountHoldingResponseVO>");
        }
        
        /// <summary>
        /// Test GetAggregationAccountHoldingUsingGet
        /// </summary>
        [Test]
        public void GetAggregationAccountHoldingUsingGetTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //Guid? nucleusAggregationAccountId = null;
            //var response = instance.GetAggregationAccountHoldingUsingGet(nucleusAggregationAccountId);
            //Assert.IsInstanceOf<AggregationAccountHoldingResponseVO> (response, "response is AggregationAccountHoldingResponseVO");
        }
        
        /// <summary>
        /// Test GetAggregationAccountTransactionAllUsingGet
        /// </summary>
        [Test]
        public void GetAggregationAccountTransactionAllUsingGetTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //List<Guid?> aggregationAccountIdList = null;
            //var response = instance.GetAggregationAccountTransactionAllUsingGet(aggregationAccountIdList);
            //Assert.IsInstanceOf<List<AggregationAccountTransactionResponseVO>> (response, "response is List<AggregationAccountTransactionResponseVO>");
        }
        
        /// <summary>
        /// Test GetAggregationAccountTransactionUsingGet
        /// </summary>
        [Test]
        public void GetAggregationAccountTransactionUsingGetTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //Guid? nucleusAggregationAccountId = null;
            //var response = instance.GetAggregationAccountTransactionUsingGet(nucleusAggregationAccountId);
            //Assert.IsInstanceOf<AggregationAccountTransactionResponseVO> (response, "response is AggregationAccountTransactionResponseVO");
        }
        
        /// <summary>
        /// Test GetAggregationAccountUsingGet
        /// </summary>
        [Test]
        public void GetAggregationAccountUsingGetTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //Guid? nucleusAggregationAccountId = null;
            //var response = instance.GetAggregationAccountUsingGet(nucleusAggregationAccountId);
            //Assert.IsInstanceOf<AggregationAccountResponseVO> (response, "response is AggregationAccountResponseVO");
        }
        
        /// <summary>
        /// Test GetPropertyValue
        /// </summary>
        [Test]
        public void GetPropertyValueTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //Guid? nucleusAggregationAccountId = null;
            //Guid? nucleusBusinessId = null;
            //Guid? nucleusClientId = null;
            //string product = null;
            //var response = instance.GetPropertyValue(nucleusAggregationAccountId, nucleusBusinessId, nucleusClientId, product);
            //Assert.IsInstanceOf<PropertyValueResponseVO> (response, "response is PropertyValueResponseVO");
        }
        
    }

}
