65 lines
2.3 KiB
C#
65 lines
2.3 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 ClientSubscriptionControllerTest
|
|
{
|
|
private int TESTID = 4;
|
|
private int CLIENTID = 1;
|
|
private string CLIENTURL = "test";
|
|
[TestMethod]
|
|
public void UpdateSeatCount()
|
|
{
|
|
// Arrange
|
|
ClientSubscriptionController controller = new ClientSubscriptionController();
|
|
|
|
// Act
|
|
ClientSubscriptionModel result = controller.Get(CLIENTURL);
|
|
|
|
// Assert
|
|
Assert.IsNotNull(result);
|
|
Assert.IsTrue((result.InstanceUrl == CLIENTURL));
|
|
|
|
foreach (ClientSeatModel m in result.SeatCounts)
|
|
{
|
|
if (m.CurrentUsers == 0)
|
|
m.CurrentUsers++;
|
|
else if (m.CurrentUsers == m.MaxUsers)
|
|
m.CurrentUsers--;
|
|
else
|
|
m.CurrentUsers++;
|
|
var SeatController = new ClientSeatController();
|
|
SeatController.Post(m);
|
|
ClientSeatModel n=SeatController.Get(m.Id);
|
|
Assert.AreEqual(n.CurrentUsers, m.CurrentUsers);
|
|
Assert.AreEqual(n.Id, m.Id);
|
|
Assert.AreEqual(n.MaxUsers, m.MaxUsers);
|
|
Assert.AreEqual(n.Rate.Id, m.Rate.Id);
|
|
Assert.AreEqual(n.Rate.Rate, m.Rate.Rate);
|
|
Assert.AreEqual(n.Rate.Name, m.Rate.Name);
|
|
Assert.AreEqual(n.Rate.IsActive, m.Rate.IsActive);
|
|
Assert.AreEqual(n.ClientID, m.ClientID);
|
|
Assert.AreEqual(n.UserType.Id, m.UserType.Id);
|
|
Assert.AreEqual(n.UserType.IsActive, m.UserType.IsActive);
|
|
Assert.AreEqual(n.UserType.Name, m.UserType.Name);
|
|
Assert.AreEqual(n.UserType.PerUserPricing, m.UserType.PerUserPricing);
|
|
Assert.AreEqual(n.UserType.Token, m.UserType.Token);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
}
|
|
}
|