/*
 * OpenAPI Petstore
 *
 * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
 *
 * 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 Acme.Net.Client;
using Acme.Net.Api;
// uncomment below to import models
//using Acme.Net.Model;

namespace Acme.Net.Test.Api
{
    /// <summary>
    ///  Class for testing PetApi
    /// </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 PetApiTests : IDisposable
    {
        private PetApi instance;

        public PetApiTests()
        {
            instance = new PetApi();
        }

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

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

        /// <summary>
        /// Test Add
        /// </summary>
        [Fact]
        public void AddTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //Pet pet = null;
            //var response = instance.Add(pet);
            //Assert.IsType<Pet>(response);
        }

        /// <summary>
        /// Test Delete
        /// </summary>
        [Fact]
        public void DeleteTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //long petId = null;
            //instance.Delete(petId);
        }

        /// <summary>
        /// Test FindByStatus
        /// </summary>
        [Fact]
        public void FindByStatusTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //List<string> status = null;
            //var response = instance.FindByStatus(status);
            //Assert.IsType<List<Pet>>(response);
        }

        /// <summary>
        /// Test FindByTags
        /// </summary>
        [Fact]
        public void FindByTagsTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //List<string> tags = null;
            //var response = instance.FindByTags(tags);
            //Assert.IsType<List<Pet>>(response);
        }

        /// <summary>
        /// Test GetById
        /// </summary>
        [Fact]
        public void GetByIdTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //long petId = null;
            //var response = instance.GetById(petId);
            //Assert.IsType<Pet>(response);
        }

        /// <summary>
        /// Test Update
        /// </summary>
        [Fact]
        public void UpdateTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //Pet pet = null;
            //var response = instance.Update(pet);
            //Assert.IsType<Pet>(response);
        }

        /// <summary>
        /// Test UpdateWithForm
        /// </summary>
        [Fact]
        public void UpdateWithFormTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //long petId = null;
            //string name = null;
            //string status = null;
            //instance.UpdateWithForm(petId, name, status);
        }

        /// <summary>
        /// Test UploadImage
        /// </summary>
        [Fact]
        public void UploadImageTest()
        {
            // TODO uncomment below to test the method and replace null with proper value
            //long petId = null;
            //string additionalMetadata = null;
            //System.IO.Stream file = null;
            //var response = instance.UploadImage(petId, additionalMetadata, file);
            //Assert.IsType<ApiResponse>(response);
        }
    }
}
