EnVisageOnline/Main/Source/iniPHIClientControlAPI/iniPHIClientControlAPI.Tests/Controllers/ClientSeatControllerTest.cs

168 lines
5.2 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Web.Http;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using iniPHIClientControlAPI;
using iniPHIClientControlAPI.Controllers;
using iniPHIClientControlAPI.Models;
using iniPHIClientControlAPI.Tests.helper;
namespace iniPHIClientControlAPI.Tests.Controllers
{
[TestClass]
public class ClientSeatControllerTest
{
private Guid TESTID = Guid.NewGuid();
private Guid CLIENTID = Guid.NewGuid();
private string CLIENTURL = "test";
//[TestMethod]
public void GetAllClientSeatRecords()
{
// Arrange
ClientSeatController controller = new ClientSeatController();
// Act
IEnumerable<ClientSeatModel> result = controller.Get();
// Assert
Assert.IsNotNull(result);
Assert.IsTrue((result.Count() > 0));
}
[TestMethod]
public void GetClientSeatRecordsByID()
{
// Arrange
ClientSeatController controller = new ClientSeatController();
// Act
ClientSeatModel result = controller.Get(TESTID);
// Assert
Assert.IsNotNull(result);
Assert.AreEqual(TESTID, result.Id);
}
[TestMethod]
public void UpdateClientSeatRecord()
{
Random r = new Random(11);
int curusers=r.Next();
// Arrange
ClientSeatController controller = new ClientSeatController();
DateTime testdate = DateTime.Now;
// Act
ClientSeatModel i = new ClientSeatModel()
{
Id = TESTID,
ClientID = CLIENTID,
IsActive = true,
CurrentUsers = curusers,
MaxUsers = curusers+20,
Rate = new RateModel()
{
Id = Guid.NewGuid(),
IsActive = true,
Name="test",
Rate=100
},
UserType= new UserTypeModel()
{
Id= Guid.NewGuid(),
Name ="TestUserType",
BlockCount=4,
Token=Guid.Parse("591cef39-10bb-451f-8092-a1c576c83496"),
IsActive=true,
PerUserPricing=true
}
};
controller.Post(i);
// Act
ClientSeatModel result = controller.Get(TESTID);
// Assert
Assert.IsNotNull(result);
Assert.IsNotNull(result.CurrentUsers);
Assert.AreEqual(curusers, result.CurrentUsers);
Assert.AreEqual(curusers + 20, result.MaxUsers);
Assert.IsNotNull(result.Rate);
Assert.AreEqual(result.Rate.Id, 1);
Assert.IsNotNull(result.UserType);
Assert.AreEqual(result.UserType.Id, 1);
// Assert
}
[TestMethod]
public void AddNewClientSeatRecord()
{
ClientSeatController controller = new ClientSeatController();
DateTime testdate = DateTime.Now;
Guid id = Guid.NewGuid();
int NextID=sqlClass.getNextId("ClientPricing");
// Act
ClientSeatModel i = new ClientSeatModel()
{
Id = Guid.Empty,
ClientID = CLIENTID,
IsActive = true,
CurrentUsers = 0,
MaxUsers =100,
Rate = new RateModel()
{
Id = Guid.Empty,
IsActive = true,
Name = "Test Add By ClientSeat",
Rate = 88
},
UserType = new UserTypeModel()
{
Id = Guid.Empty,
Name = "Test Add By ClientSeat",
BlockCount = 5,
Token = id,
IsActive = true,
PerUserPricing = true
}
};
controller.Post(i);
// Act
//ClientSeatModel result = controller.Get(NextID);
//// Assert
//Assert.IsNotNull(result);
//Assert.IsNotNull(result.CurrentUsers);
//Assert.AreEqual(0, result.CurrentUsers);
//Assert.AreEqual(100, result.MaxUsers);
//Assert.IsNotNull(result.Rate);
//Assert.AreEqual(result.Rate.Rate, 88);
//Assert.IsNotNull(result.UserType);
//Assert.AreEqual(result.UserType.Token, id);
}
//[TestMethod]
//public void Delete()
//{
// // Arrange
// ClientSeatController controller = new ClientSeatController();
// List<ClientSeatModel> result = controller.Get("test");
// // Act
// Assert.AreNotEqual(0,result.Count);
// controller.Delete(result[0].Id);
// ClientSeatModel result2 = controller.Get(result[0].Id);
// Assert.IsNotNull(result2);
// Assert.AreEqual(-1, result2.Id);
//}
}
}