<reponame>dojah-inc/dojah-sdks/*
 * DOJAH APIs
 *
 * Use Dojah to verify, onboard and manage user identity across Africa!
 *
 * The version of the OpenAPI document: 1.0.0
 * Generated by: https://konfigthis.com
 */

using System;
using System.IO;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Reflection;
using RestSharp;
using Xunit;

using Dojah.Net.Client;
using Dojah.Net.Api;
using Dojah.Net.Model;
// uncomment below to import models
//using Dojah.Net.Model;

namespace Dojah.Net.Test.Api
{
    /// <summary>
    ///  Class for testing GHKYCApi
    /// </summary>
    /// <remarks>
    /// This file is automatically generated by Konfig (https://konfigthis.com).
    /// Please update the test case below to test the API endpoint.
    /// </remarks>
    public class GHKYCApiTests : IDisposable
    {
        private GHKYCApi instance;

        public GHKYCApiTests()
        {
            Configuration config = new Configuration();
            string apiKey = System.Environment.GetEnvironmentVariable("DOJAH_API_KEY");
            string appId = System.Environment.GetEnvironmentVariable("DOJAH_APP_ID");
            config.ApiKey.Add("Authorization", apiKey);
            config.ApiKey.Add("AppId", appId);
            config.BasePath = "https://sandbox.dojah.io";
            instance = new GHKYCApi(config);
        }

        public void Dispose()
        {
            // Cleanup when everything is done.
        }

        /// <summary>
        /// Test an instance of GHKYCApi
        /// </summary>
        [Fact]
        public void InstanceTest()
        {
            // TODO uncomment below to test 'IsType' GHKYCApi
            //Assert.IsType<GHKYCApi>(instance);
        }

        /// <summary>
        /// Test GetDriversLicense
        /// </summary>
        [Fact]
        public void GetDriversLicenseTest()
        {
            string id = "V0000";
            string fullName = "John Doe";
            string dateOfBirth = "1988-09-01";
            var response = instance.GetDriversLicense(id, fullName, dateOfBirth);
            Assert.IsType<GetDriversLicenseResponse>(response);
        }

        /// <summary>
        /// Test GetPassport
        /// </summary>
        [Fact]
        public void GetPassportTest()
        {
            string id = "V0000";
            string firstName = "John";
            string lastName = "Doe";
            string middleName = "";
            string dateOfBirth = "1988-09-01";
            var response = instance.GetPassport(id, firstName, lastName, middleName, dateOfBirth);
            Assert.IsType<GetPassportResponse>(response);
        }

        /// <summary>
        /// Test GetSsnit
        /// </summary>
        [Fact]
        public void GetSsnitTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //string id = null;
            //string fullName = null;
            //string dateOfBirth = null;
            //var response = instance.GetSsnit(id, fullName, dateOfBirth);
            //Assert.IsType<GetSsnitResponse>(response);
        }
    }
}
