150 lines
4.6 KiB
C#
150 lines
4.6 KiB
C#
using Castle.DynamicProxy.Generators;
|
|
using LCU.API.Collections.CollectionsApiLib.Models;
|
|
using LCU.API.Collections.RepoApi.Domain.Extensions;
|
|
using Microsoft.AspNetCore.Mvc.ModelBinding;
|
|
using Microsoft.AspNetCore.Mvc.ViewFeatures.Internal;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Collections.ObjectModel;
|
|
using System.Text;
|
|
using Xunit;
|
|
using Xunit.Sdk;
|
|
|
|
namespace LCU.API.Collections.RepoApiTests.Extensions
|
|
{
|
|
|
|
public class TemenosAccountExtensionTest
|
|
{
|
|
|
|
TemenosCase validCase = new TemenosCase()
|
|
{
|
|
CaseId = 1,
|
|
RepoStatus = RepoStatus.REPO,
|
|
CaseStatusId = 33
|
|
};
|
|
|
|
TemenosCase invalidStatusCase = new TemenosCase()
|
|
{
|
|
CaseId = 2,
|
|
RepoStatus = RepoStatus.UNKNOWN,
|
|
CaseStatusId = 33
|
|
};
|
|
|
|
TemenosCase invalidStatusIdCase = new TemenosCase()
|
|
{
|
|
CaseId = 3,
|
|
RepoStatus = RepoStatus.RECA,
|
|
CaseStatusId = 13
|
|
};
|
|
|
|
public List<TemenosCase> validList, invalidStatusList, invalidStatusIdList, emptyList;
|
|
|
|
TemenosAccount temenosAccount = new TemenosAccount();
|
|
|
|
public TemenosAccountExtensionTest()
|
|
{
|
|
validList = new List<TemenosCase> { validCase, invalidStatusCase, invalidStatusIdCase };
|
|
invalidStatusIdList = new List<TemenosCase> { invalidStatusIdCase };
|
|
invalidStatusList = new List<TemenosCase> { invalidStatusCase };
|
|
emptyList = new List<TemenosCase>();
|
|
}
|
|
[Fact]
|
|
public void HasOldIntellectStatus_Ok()
|
|
{
|
|
temenosAccount.CustomFieldMap = new Dictionary<string, string> { };
|
|
Assert.False(temenosAccount.HasOldIntellectStatus());
|
|
|
|
temenosAccount.CustomFieldMap = new Dictionary<string, string> { { "User Status Code 1", null } };
|
|
Assert.False(temenosAccount.HasOldIntellectStatus());
|
|
|
|
temenosAccount.CustomFieldMap = new Dictionary<string, string> { { "User Status Code 1", "" } };
|
|
Assert.False(temenosAccount.HasOldIntellectStatus());
|
|
|
|
temenosAccount.CustomFieldMap = new Dictionary<string, string> { { "User Status Code 1", "OLDSTATUS" } };
|
|
Assert.True(temenosAccount.HasOldIntellectStatus());
|
|
|
|
|
|
}
|
|
|
|
[Fact]
|
|
public void HasOpenRecoveryCase_OK()
|
|
{
|
|
temenosAccount.Cases = new ReadOnlyCollection<TemenosCase>(validList);
|
|
|
|
Assert.True(temenosAccount.HasOpenRecoveryCase());
|
|
|
|
temenosAccount.Cases = new ReadOnlyCollection<TemenosCase>(invalidStatusIdList);
|
|
|
|
Assert.False(temenosAccount.HasOpenRecoveryCase());
|
|
|
|
temenosAccount.Cases = new ReadOnlyCollection<TemenosCase>(invalidStatusList);
|
|
|
|
Assert.False(temenosAccount.HasOpenRecoveryCase());
|
|
|
|
temenosAccount.Cases = new ReadOnlyCollection<TemenosCase>(emptyList);
|
|
|
|
Assert.False(temenosAccount.HasOpenRecoveryCase());
|
|
}
|
|
|
|
[Fact]
|
|
public void HasSpecificCase_OK()
|
|
{
|
|
temenosAccount.Cases = new ReadOnlyCollection<TemenosCase>(emptyList);
|
|
|
|
Assert.False(temenosAccount.HasSpecificCase(1));
|
|
|
|
temenosAccount.Cases = new ReadOnlyCollection<TemenosCase>(validList);
|
|
|
|
Assert.True(temenosAccount.HasSpecificCase(1));
|
|
Assert.False(temenosAccount.HasSpecificCase(99));
|
|
}
|
|
|
|
[Fact]
|
|
public void FindRecoveryCaseOrDefault_OK()
|
|
{
|
|
temenosAccount.Cases = new ReadOnlyCollection<TemenosCase>(validList);
|
|
|
|
var res = temenosAccount.FindRecoveryCaseOrDefault(1);
|
|
|
|
Assert.Equal(validCase, res);
|
|
}
|
|
|
|
[Fact]
|
|
public void FindRecoveryCaseOrDefault_Empty_Cases()
|
|
{
|
|
temenosAccount.Cases = new ReadOnlyCollection<TemenosCase>(emptyList);
|
|
|
|
var res = temenosAccount.FindRecoveryCaseOrDefault(1);
|
|
|
|
Assert.Null(res);
|
|
|
|
temenosAccount.Cases = null;
|
|
|
|
res = temenosAccount.FindRecoveryCaseOrDefault(1);
|
|
|
|
Assert.Null(res);
|
|
}
|
|
|
|
[Fact]
|
|
public void FindRecoveryCaseOrDefault_Id_Not_Exist()
|
|
{
|
|
temenosAccount.Cases = new ReadOnlyCollection<TemenosCase>(validList);
|
|
var res = temenosAccount.FindRecoveryCaseOrDefault(22);
|
|
|
|
Assert.Null(res);
|
|
}
|
|
|
|
[Fact]
|
|
public void FindRecoveryCaseOrDefault_Id_Points_To_Bad_Case()
|
|
{
|
|
temenosAccount.Cases = new ReadOnlyCollection<TemenosCase>(validList);
|
|
var res = temenosAccount.FindRecoveryCaseOrDefault(2);
|
|
|
|
Assert.Equal(invalidStatusCase, res);
|
|
}
|
|
|
|
|
|
}
|
|
|
|
}
|