Saxonite 1.2.11.2
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netcoreapp3.1</TargetFramework>
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
|
||||
<IsPackable>false</IsPackable>
|
||||
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Sarand.Net.Standard.Base.Utils;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Sacs.UnitTests.Net.Standard.Base.Utils
|
||||
{
|
||||
[TestClass]
|
||||
public class SerializableUtil_Tester
|
||||
{
|
||||
//-------------------------------------------------------------------
|
||||
// Definitions.
|
||||
[Serializable]
|
||||
private class TestData
|
||||
{
|
||||
public String stringValue = "String Value";
|
||||
public long longValue = 123456;
|
||||
}
|
||||
[Serializable]
|
||||
private class TestDataA : TestData
|
||||
{
|
||||
public TestDataA()
|
||||
{
|
||||
stringValue = "String Value A";
|
||||
longValue = 654321;
|
||||
}
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Data members.
|
||||
private Random random = new Random();
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Deep Copy.
|
||||
//-------------------------------------------------------------------
|
||||
[TestMethod]
|
||||
public void SerializableUtil_DeepCopy()
|
||||
{
|
||||
// Clone test data.
|
||||
TestData data = new TestData();
|
||||
TestData data_DeepCopy = SerializableUtil.DeepCopy(data);
|
||||
|
||||
// Verify results.
|
||||
Assert.AreEqual(true, data_DeepCopy is TestData);
|
||||
Assert.AreEqual(data.stringValue, data_DeepCopy.stringValue);
|
||||
Assert.AreEqual(data.longValue, data_DeepCopy.longValue);
|
||||
|
||||
// Clone test data A.
|
||||
TestDataA dataA = new TestDataA();
|
||||
TestDataA dataA_DeepCopy = SerializableUtil.DeepCopy(dataA);
|
||||
|
||||
// Verify results.
|
||||
Assert.AreEqual(true, dataA_DeepCopy is TestData);
|
||||
Assert.AreEqual(true, dataA_DeepCopy is TestDataA);
|
||||
Assert.AreEqual(dataA.stringValue, dataA_DeepCopy.stringValue);
|
||||
Assert.AreEqual(dataA.longValue, dataA_DeepCopy.longValue);
|
||||
Assert.AreNotEqual(data.stringValue, dataA_DeepCopy.stringValue);
|
||||
Assert.AreNotEqual(data.longValue, dataA_DeepCopy.longValue);
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,111 @@
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Reflection;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Sarand.Net.Standard.Base.Utils;
|
||||
|
||||
namespace Sarand.UnitTests.Core.Base.Utils
|
||||
{
|
||||
[TestClass]
|
||||
public class SysUtil_Tester
|
||||
{
|
||||
//-------------------------------------------------------------------
|
||||
// Data members.
|
||||
private static readonly String ClassName_GeneratedMemberName_Prefix = "<";
|
||||
private static readonly String ClassName_CompilerGeneratedClass = ClassName_GeneratedMemberName_Prefix + ">c";
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Calling code class name.
|
||||
//-------------------------------------------------------------------
|
||||
[TestMethod]
|
||||
public void SysUtil_GetCallerClassName_Test()
|
||||
{
|
||||
// Leading spaces.
|
||||
Assert.AreNotEqual(null, SysUtil.GetCallerClassName());
|
||||
Assert.AreNotEqual("", SysUtil.GetCallerClassName());
|
||||
Assert.AreEqual("SysUtil_Tester", SysUtil.GetCallerClassName());
|
||||
|
||||
// Compiler generated context.
|
||||
Func<string> temp = () => { return SysUtil.GetCallerClassName(); };
|
||||
Assert.AreEqual(ClassName_CompilerGeneratedClass, temp());
|
||||
|
||||
// Anonymous function.
|
||||
Assert.AreEqual(ClassName_CompilerGeneratedClass, ((Func<string>)(() => SysUtil.GetCallerClassName()))());
|
||||
Assert.AreEqual(ClassName_CompilerGeneratedClass, new Func<string>(() => SysUtil.GetCallerClassName())());
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Calling code function name.
|
||||
//-------------------------------------------------------------------
|
||||
[TestMethod]
|
||||
public void SysUtil_GetCallerMemberName_Test()
|
||||
{
|
||||
// Leading spaces.
|
||||
Assert.AreNotEqual(null, SysUtil.GetCallerMemberName());
|
||||
Assert.AreNotEqual("", SysUtil.GetCallerMemberName());
|
||||
Assert.AreEqual("SysUtil_GetCallerMemberName_Test", SysUtil.GetCallerMemberName());
|
||||
Assert.AreEqual(nameof(SysUtil_GetCallerMemberName_Test), SysUtil.GetCallerMemberName());
|
||||
Assert.AreEqual(MethodBase.GetCurrentMethod().Name, SysUtil.GetCallerMemberName());
|
||||
|
||||
// Compiler generated context.
|
||||
Func<string> temp = () => { return SysUtil.GetCallerMemberName(); };
|
||||
Assert.AreEqual(MethodBase.GetCurrentMethod().Name, temp());
|
||||
|
||||
// Anonymous function.
|
||||
Assert.AreEqual(MethodBase.GetCurrentMethod().Name, ((Func<string>)(() => SysUtil.GetCallerMemberName()))());
|
||||
Assert.AreEqual(MethodBase.GetCurrentMethod().Name, new Func<string>(() => SysUtil.GetCallerMemberName())());
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Calling code file path.
|
||||
//-------------------------------------------------------------------
|
||||
[TestMethod]
|
||||
public void SysUtil_GetCallerFilePath_Test()
|
||||
{
|
||||
// Leading spaces.
|
||||
Assert.AreNotEqual(null, SysUtil.GetCallerFilePath());
|
||||
Assert.AreNotEqual("", SysUtil.GetCallerFilePath());
|
||||
Assert.AreEqual(@"D:\Sarand\Projects\Users\AHoward\VS2022\Common-VS\Workspace\SacsCoreUnitTests\Standard\Base\Utils\SysUtil_Tester.cs", SysUtil.GetCallerFilePath());
|
||||
Assert.AreEqual(true, SysUtil.GetCallerFilePath().EndsWith("SysUtil_Tester.cs"));
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Calling code line number.
|
||||
//-------------------------------------------------------------------
|
||||
[TestMethod]
|
||||
public void SysUtil_GetCallerLineNumber_Test()
|
||||
{
|
||||
// Leading spaces.
|
||||
Assert.AreNotEqual(0, SysUtil.GetCallerLineNumber());
|
||||
Assert.AreEqual((new StackFrame(0, true)).GetFileLineNumber(), SysUtil.GetCallerLineNumber());
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Calling code file path.
|
||||
//-------------------------------------------------------------------
|
||||
[TestMethod]
|
||||
public void SysUtil_GetCallerClassMethod_Test()
|
||||
{
|
||||
// Leading spaces.
|
||||
Assert.AreNotEqual(null, SysUtil.GetCallerClassMethod());
|
||||
Assert.AreNotEqual("", SysUtil.GetCallerClassMethod());
|
||||
Assert.AreEqual(GetType().Name + "." + MethodBase.GetCurrentMethod().Name, SysUtil.GetCallerClassMethod());
|
||||
Assert.AreEqual(nameof(SysUtil_Tester) + "." + nameof(SysUtil_GetCallerClassMethod_Test), SysUtil.GetCallerClassMethod());
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
// Calling code file path.
|
||||
//-------------------------------------------------------------------
|
||||
[TestMethod]
|
||||
public void SysUtil_Fn_Test()
|
||||
{
|
||||
// Leading spaces.
|
||||
Assert.AreNotEqual(null, SysUtil.Fn);
|
||||
Assert.AreNotEqual("", SysUtil.Fn);
|
||||
Assert.AreEqual(GetType().Name + "." + MethodBase.GetCurrentMethod().Name, SysUtil.Fn);
|
||||
Assert.AreEqual(nameof(SysUtil_Tester) + "." + nameof(SysUtil_Fn_Test), SysUtil.Fn);
|
||||
}
|
||||
|
||||
//-------------------------------------------------------------------
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user