From 45829a9fb6f4b0d4443e22c972cf8543be533d4e Mon Sep 17 00:00:00 2001 From: Roy Ben-Shabat Date: Mon, 18 Feb 2019 18:16:24 +0200 Subject: Working on Tokens Manager. --- .../Tango.UnitTesting/MachineService_TST.cs | 64 ++++++++++++++++++++++ .../Tango.UnitTesting/Tango.UnitTesting.csproj | 7 ++- 2 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 Software/Visual_Studio/Tango.UnitTesting/MachineService_TST.cs (limited to 'Software/Visual_Studio/Tango.UnitTesting') diff --git a/Software/Visual_Studio/Tango.UnitTesting/MachineService_TST.cs b/Software/Visual_Studio/Tango.UnitTesting/MachineService_TST.cs new file mode 100644 index 000000000..ca1653e3e --- /dev/null +++ b/Software/Visual_Studio/Tango.UnitTesting/MachineService_TST.cs @@ -0,0 +1,64 @@ +using System; +using System.Threading; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using Tango.Web.Authentication; + +namespace Tango.UnitTesting +{ + [TestClass] + [TestCategory("Machine Service")] + public class MachineService_TST + { + private class TokenObject : IEquatable + { + public String Value { get; set; } + + public bool Equals(TokenObject other) + { + return Value == other.Value; + } + } + + [TestMethod] + public void Test_Tokens_Manager() + { + TokensManager tokensManager = new TokensManager(); + + TokenObject t1 = new TokenObject(); + t1.Value = "Roy"; + + TokenObject t2 = new TokenObject(); + t2.Value = "Sagi"; + + String token1 = tokensManager.GetOrCreate(t1); + String token2 = tokensManager.GetOrCreate(t2); + + Assert.AreEqual(tokensManager.GetTokenObject(token1), t1); + Assert.AreEqual(tokensManager.GetTokenObject(token2), t2); + + TokenObject t3 = new TokenObject(); + t3.Value = "Roy"; + + String token3 = tokensManager.GetOrCreate(t3); + Assert.AreEqual(token3, token1); + Assert.AreEqual(tokensManager.GetTokenObject(token1), tokensManager.GetTokenObject(token3)); + + TokenObject tOld = new TokenObject() + { + Value = "Expired Token" + }; + + tokensManager.ExpirationTime = TimeSpan.FromSeconds(2); + + Thread.Sleep(2000); + + String recent_token = tokensManager.GetOrCreate(tOld); + + Thread.Sleep(1000); + + Assert.IsTrue(tokensManager.Exists(recent_token)); + + Assert.IsFalse(tokensManager.Exists(token1)); + } + } +} diff --git a/Software/Visual_Studio/Tango.UnitTesting/Tango.UnitTesting.csproj b/Software/Visual_Studio/Tango.UnitTesting/Tango.UnitTesting.csproj index fa4652899..9ebc45dfc 100644 --- a/Software/Visual_Studio/Tango.UnitTesting/Tango.UnitTesting.csproj +++ b/Software/Visual_Studio/Tango.UnitTesting/Tango.UnitTesting.csproj @@ -107,6 +107,7 @@ + @@ -193,6 +194,10 @@ {74e700b0-1156-4126-be40-ee450d3c3026} Tango.Transport + + {5001990f-977b-48ff-b217-0236a5022ad8} + Tango.Web + {ebb7cb9f-6af2-456b-a5dd-1b136b605d90} Tango.DBObservablesGenerator.CLI @@ -212,7 +217,7 @@ - + \ No newline at end of file -- cgit v1.3.1