Falcon.SugarApi/Falcon.SugarApi.Test/JwtTokenBuilderTest.cs

52 lines
1.6 KiB
C#
Raw Normal View History

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Falcon.SugarApi.JWT;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace Falcon.SugarApi.Test
{
/// <summary>
/// JwtTokenBuilderTest
/// </summary>
[TestClass]
public class JwtTokenBuilderTest
{
/// <summary>
/// Token获取测试
/// </summary>
[TestMethod]
public void GetTokenTest() {
var loginTime = DateTime.Now;
var playload = new LoginUserInfo {
UserName = "abdc",
LoginTime = loginTime,
Roles = new List<string> { "admin", "user" },
};
if (new JwtTokenBuilder().TryGetToken(playload, out var token, out var exception)) {
Console.WriteLine("token:{0}", token);
}
else {
Console.WriteLine(exception.ToString());
Assert.Fail("获取token失败");
}
Assert.IsNotNull(token);
if (new JwtTokenBuilder().TryGetPlayload(token, out var pl, out var exception1)) {
}
else {
Console.WriteLine(exception1.ToString());
Assert.Fail("获取Playload失败");
}
Assert.IsNotNull(pl);
Assert.AreEqual(playload.UserName, pl.UserName);
Assert.IsTrue(pl.Roles != null);
Assert.IsTrue(pl.Roles.Count == 2);
Assert.IsTrue(pl.Roles.Any(m => m == "admin"));
Assert.IsTrue(pl.Roles.Any(m => m == "user"));
}
}
}