/// <summary> /// メソッド実行前処理 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="id">The identifier.</param> /// <param name="targetMethod">The target method.</param> /// <param name="instance"></param> /// <param name="args">The arguments.</param> public void PreProcess <T>(Guid id, MethodInfo targetMethod, T instance, object[] args) { try { var data = new AkReproductionData(); Type typ = instance.GetType(); data.TypeName = typ.FullName; data.AssemblyName = typ.Assembly.FullName; data.MethodName = targetMethod.Name; data.Arguments = args; string fileName = Path.Combine(Environment.CurrentDirectory, DateTime.Now.ToString("yyyyMMddHHmmss") + ".dat"); Console.WriteLine("[出力ファイル名]" + fileName); //ファイル出力 AkAspectUtility.SaveToBinaryFile(data, fileName); } catch (Exception ex) { Console.WriteLine("例外発生!!"); Console.WriteLine(ex.ToString()); } }
public void TestMethod2() { //var cls = AkProxy<ILogicClass>.Create(new LogicClass()); var cls = AkAspectUtility.Create <ILogicClass>(new LogicClass()); Console.WriteLine(cls.Method2("ほげほげ")); List <string> logList = GetLogList(); Assert.AreEqual(0, logList.Count); logList.Clear(); }
public void TestMethod3() { //var cls = AkProxy<ILogicClass>.Create(new LogicClass()); var cls = AkAspectUtility.Create <ILogicClass>(new LogicClass()); Console.WriteLine(cls.Method3("ほげほげ")); List <string> logList = GetLogList(); Assert.AreEqual("Method3 を実行します。", logList[0]); Assert.AreEqual("Method3 の実行が終了しました。", logList[1]); logList.Clear(); }
public void TestMethod5() { //AkProxy.SetAspectPartsSettingHandler(new AspectPartsSettingHandler("")); //var cls = AkProxy<ILogicClass>.Create(new LogicClass()); var cls = AkAspectUtility.Create <ILogicClass>(new LogicClass()); Console.WriteLine(cls.Method("ほげほげ")); List <string> logList = GetLogList(); Assert.AreEqual("Method を実行します。", logList[0]); Assert.AreEqual("Method の実行が終了しました。", logList[1]); logList.Clear(); }
public void TestMethod4() { try { //var cls = AkProxy<ILogicClass>.Create(new LogicClass()); var cls = AkAspectUtility.Create <ILogicClass>(new LogicClass()); Console.WriteLine(cls.Method4("ほげほげ")); Assert.Fail(); } catch (ApplicationException e) { Assert.AreEqual("TEST04", e.Message); } List <string> logList = GetLogList(); logList.Clear(); }