Add SGU credential provider and authentication broker
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
using SGU.AuthBroker.Core.Identity;
|
||||
using Xunit;
|
||||
|
||||
namespace SGU.AuthBroker.Core.Tests;
|
||||
|
||||
public sealed class UserIdentityClassifierTests
|
||||
{
|
||||
[Theory]
|
||||
[InlineData("DO123456", "DO123456", InstitutionalRole.Professor)]
|
||||
[InlineData("al000001", "AL000001", InstitutionalRole.Student)]
|
||||
[InlineData("LCI\\AD654321", "AD654321", InstitutionalRole.Administrative)]
|
||||
[InlineData("do123456@lci.lasalle.mx", "DO123456", InstitutionalRole.Professor)]
|
||||
public void MapsPrefixesToExpectedRoles(string input, string expectedUserName, InstitutionalRole expectedRole)
|
||||
{
|
||||
Assert.True(UserIdentityClassifier.TryParse(input, out UserIdentity? identity));
|
||||
Assert.NotNull(identity);
|
||||
Assert.Equal(expectedUserName, identity.UserName);
|
||||
Assert.Equal(expectedRole, identity.Role);
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("")]
|
||||
[InlineData("XX123456")]
|
||||
[InlineData("DO12345")]
|
||||
[InlineData("AL1234567")]
|
||||
[InlineData("AD12A456")]
|
||||
public void RejectsUnknownOrMalformedUserNames(string input)
|
||||
{
|
||||
Assert.False(UserIdentityClassifier.TryParse(input, out _));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user