public void SimpleMultiClassInheritance() { Variable c = DefaultModule.GetVariable("simpleMultiClassInheritanceTest"); Assert.Equal(42.0f, (float)c.GetField("c")); Assert.Equal(42.0, (double)c.GetField("b")); Assert.Equal(42, (byte)c.GetField("a")); Variable a = c.GetBaseClass("SimpleMultiClassInheritanceA"); Assert.Equal(42, (byte)a.GetField("a")); Variable b = c.GetBaseClass("SimpleMultiClassInheritanceB"); Assert.Equal(42.0, (double)b.GetField("b")); if (ExecuteCodeGen) { InterpretInteractive($@" Variable global = Process.Current.GetGlobal(""{DefaultModuleName}!simpleMultiClassInheritanceTest""); var c = new SimpleMultiClassInheritanceC(global); AreEqual(42.0f, c.c); AreEqual(42, c.BaseClass_SimpleMultiClassInheritanceA.a); AreEqual(42.0, c.BaseClass_SimpleMultiClassInheritanceB.b); "); } }
public void MultiClassInheritance2() { Variable d = DefaultModule.GetVariable("multiClassInheritanceTest2"); Assert.Equal(42, (double)d.GetField("d")); Assert.Equal(42, (int)d.GetField("b")); Assert.Equal(42, (float)d.GetField("a")); Variable a = d.GetBaseClass("MultiClassInheritanceA"); Assert.Equal(42, (float)a.GetField("a")); Variable b = d.GetBaseClass("MultiClassInheritanceB"); Assert.Equal(42, (int)b.GetField("b")); Assert.Equal(d.GetPointerAddress(), a.DowncastInterface().GetPointerAddress()); Assert.Equal(d.GetPointerAddress(), b.DowncastInterface().GetPointerAddress()); if (ExecuteCodeGen) { InterpretInteractive($@" Variable global = Process.Current.GetGlobal(""{DefaultModuleName}!multiClassInheritanceTest2""); var d = new MultiClassInheritanceD(global); var a = d.BaseClass_MultiClassInheritanceA; var b = d.BaseClass_MultiClassInheritanceB; AreEqual(42, d.d); AreEqual(42, a.a); AreEqual(42, b.b); IsTrue(a.GetDowncast() is MultiClassInheritanceD); IsTrue(b.GetDowncast() is MultiClassInheritanceD); AreEqual(42, a.As<MultiClassInheritanceB>().b); "); } }
/// <summary> /// 開始ボタン押下時 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnStart_Click(object sender, EventArgs e) { if (this.chkExt.CheckedItems.Count == 0) { MessageBox.Show("検証する拡張子を1つ以上選択してください", "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (System.IO.Directory.Exists(this.txtSrcFolder.Text) == false) { MessageBox.Show("対象のフォルダを指定してください", "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (MessageBox.Show("テキストファイル内の全角・半角変換を行います" + Environment.NewLine + "(0~9→0~9、A~Z→A~Z、()→()、/→/)" + Environment.NewLine + "よろしいですか?", "確認", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } EnableControl(false); try { DateTime dtDate = DateTime.Now; string[] strExts = new string[0]; int iCount = 0; foreach (var strExt in this.chkExt.CheckedItems) { // CheckedListbox内のチェックの付いた値のみ配列に代入する iCount += 1; Array.Resize(ref strExts, iCount); strExts[iCount - 1] = (string)strExt; } var strFiles = DefaultModule.GetFilesMostDeep(this.txtSrcFolder.Text, strExts); foreach (var strFile in strFiles) { Application.DoEvents(); string strOutFile = System.IO.Path.GetDirectoryName(strFile) + "\\" + System.IO.Path.GetFileNameWithoutExtension(strFile) + "_" + dtDate.ToString("yyyyMMdd_HHmmss") + System.IO.Path.GetExtension(strFile); using (var sr = new System.IO.StreamReader(strFile, System.Text.Encoding.GetEncoding("Shift-JIS"))) { string strValue = sr.ReadToEnd(); using (var sw = new System.IO.StreamWriter(strOutFile, false, System.Text.Encoding.GetEncoding("Shift-JIS"))) { sw.Write(ConvertToNarrow(strValue)); } } } MessageBox.Show("テキストファイル内の全角・半角変換が終了しました", "確認", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception ex) { DefaultModule.OutputLogFile("発生場所:" + System.Reflection.MethodBase.GetCurrentMethod() + Environment.NewLine + ex.Message + Environment.NewLine + ex.StackTrace); MessageBox.Show("発生場所:" + System.Reflection.MethodBase.GetCurrentMethod() + Environment.NewLine + ex.Message + Environment.NewLine + ex.StackTrace, "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { EnableControl(true); } }
public int CreateModule(EditModuleModel editModule, string[] selectedLicenses) { DefaultModule defaultModule = new DefaultModule() { Name = editModule.Name, Description = editModule.Description, Price = editModule.Price }; defaultModuleRepository.Save(defaultModule); if (selectedLicenses != null) { var defaultLicenses = defaultLicenseRepository.GetByNames(selectedLicenses.ToList()); foreach (var license in defaultLicenses) { license.DefaultModules.Add(defaultModule); } defaultLicenseRepository.Save(defaultLicenses.ToList()); var licenses = licenseRepository.GetByDefaultLicenseIds(defaultLicenses.Select(m => m.Id).ToArray()); foreach (var license in licenses) { Module module = new Module() { DefaultModuleId = defaultModule.Id, Price = defaultModule.Price, LicenseId = license.Id, IsActive = false, }; moduleRepository.Save(module); } } return(defaultModule.Id); }
public void VirtualMultiClassInheritance2() { Variable e = DefaultModule.GetVariable("virtualMultiClassInheritanceTest2"); Assert.Equal(42, (int)e.GetField("e")); Assert.Equal(42, (double)e.GetField("b")); Assert.Equal(42, (float)e.GetField("c")); Assert.Equal(42, (sbyte)e.GetField("a")); Variable a = e.GetBaseClass("VirtualMultiClassInheritanceA"); Assert.Equal(42, (sbyte)a.GetField("a")); Variable b = e.GetBaseClass("VirtualMultiClassInheritanceB"); Assert.Equal(42, (double)b.GetField("b")); Variable ba = b.GetBaseClass("VirtualMultiClassInheritanceA"); Assert.Equal(42, (sbyte)ba.GetField("a")); Variable c = e.GetBaseClass("VirtualMultiClassInheritanceC"); Assert.Equal(42, (float)c.GetField("c")); Variable ca = c.GetBaseClass("VirtualMultiClassInheritanceA"); Assert.Equal(42, (sbyte)ca.GetField("a")); Assert.Equal(a.GetPointerAddress(), ba.GetPointerAddress()); Assert.Equal(ca.GetPointerAddress(), ba.GetPointerAddress()); Assert.Equal(e.GetPointerAddress(), b.DowncastInterface().GetPointerAddress()); Assert.Equal(ba.GetPointerAddress(), ba.DowncastInterface().GetPointerAddress()); Assert.Equal(e.GetPointerAddress(), c.DowncastInterface().GetPointerAddress()); Assert.Equal(ca.GetPointerAddress(), ca.DowncastInterface().GetPointerAddress()); if (ExecuteCodeGen) { InterpretInteractive($@" Variable global = Process.Current.GetGlobal(""{DefaultModuleName}!virtualMultiClassInheritanceTest2""); var e = new VirtualMultiClassInheritanceE(global); var a = e.BaseClass_VirtualMultiClassInheritanceA; var b = e.BaseClass_VirtualMultiClassInheritanceB; var ba = b.BaseClass; var c = e.BaseClass_VirtualMultiClassInheritanceC; var ca = c.BaseClass; AreEqual(42, e.e); AreEqual(42, a.a); AreEqual(42, b.b); AreEqual(42, ba.a); AreEqual(42, c.c); AreEqual(42, ca.a); IsTrue(a.GetDowncast() is VirtualMultiClassInheritanceE); IsTrue(b.GetDowncast() is VirtualMultiClassInheritanceE); IsTrue(ba.GetDowncast() is VirtualMultiClassInheritanceE); IsTrue(c.GetDowncast() is VirtualMultiClassInheritanceE); IsTrue(ca.GetDowncast() is VirtualMultiClassInheritanceE); AreEqual(42, b.As<VirtualMultiClassInheritanceC>().c); AreEqual(42, a.As<VirtualMultiClassInheritanceB>().b); AreEqual(42, ba.As<VirtualMultiClassInheritanceC>().c); AreEqual(42, ca.As<VirtualMultiClassInheritanceB>().b); "); } }
public int Save(DefaultModule module) { using (var session = sessionFactory.OpenSession()) { using (var t = session.BeginTransaction()) { session.Save(module); t.Commit(); return(module.Id); } } }
public void ReadingFloatPointTypes() { Variable doubleTest = DefaultModule.GetVariable("doubleTest"); Assert.Equal(3.5, (double)doubleTest.GetField("d")); Assert.Equal(2.5, (float)doubleTest.GetField("f")); Assert.Equal(5, (int)doubleTest.GetField("i")); Variable doubleTest2 = Process.Current.GetGlobal($"{DefaultModuleName}!doubleTest"); Assert.Equal(doubleTest.GetPointerAddress(), doubleTest2.GetPointerAddress()); Assert.Equal(doubleTest.GetCodeType(), doubleTest2.GetCodeType()); }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); var module = new DefaultModule(); var kernel = new StandardKernel(module); kernel.Unbind <ModelValidatorProvider>(); DependencyResolver.SetResolver(new NinjectDependencyResolver(kernel)); }
public void UserTypeAutoCast() { Execute_AutoCast(() => { Variable doubleTestVariable = DefaultModule.GetVariable("doubleTest"); Assert.IsType <DoubleTest>(doubleTestVariable); DoubleTest doubleTest = (DoubleTest)doubleTestVariable; Assert.Equal(3.5, doubleTest.d); Assert.Equal(2.5, doubleTest.f); Assert.Equal(5, doubleTest.i); }); }
public void TestReadingBuiltinTypes() { Variable var = DefaultModule.GetVariable("builtinTypesTest"); TestReading <bool>(var.GetField("b"), false); TestReading <sbyte>(var.GetField("i8"), 42); TestReading <short>(var.GetField("i16"), 42); TestReading <int>(var.GetField("i32"), 42); TestReading <long>(var.GetField("i64"), 42); TestReading <byte>(var.GetField("u8"), 42); TestReading <ushort>(var.GetField("u16"), 42); TestReading <uint>(var.GetField("u32"), 42); TestReading <ulong>(var.GetField("u64"), 42); TestReading <float>(var.GetField("f32"), 42); TestReading <double>(var.GetField("f64"), 42); }
public void CheckCodeFunction() { StackFrame defaultTestCaseFrame = GetFrame($"{DefaultModuleName}!DefaultTestCase"); CodeFunction defaultTestCaseFunction = new CodeFunction(defaultTestCaseFrame.InstructionOffset); Assert.NotEqual(0U, defaultTestCaseFunction.Address); Assert.NotEqual(0U, defaultTestCaseFunction.FunctionDisplacement); Assert.Equal($"{DefaultModuleName}!DefaultTestCase", defaultTestCaseFunction.FunctionName); Assert.Equal($"DefaultTestCase", defaultTestCaseFunction.FunctionNameWithoutModule); Assert.Equal(Process.Current, defaultTestCaseFunction.Process); Assert.Contains(MainSourceFileName, defaultTestCaseFunction.SourceFileName.ToLower()); Assert.NotEqual(0U, defaultTestCaseFunction.SourceFileLine); Console.WriteLine("SourceFileDisplacement: {0}", defaultTestCaseFunction.SourceFileDisplacement); Variable codeFunctionVariable = DefaultModule.GetVariable($"{DefaultModuleName}!defaultTestCaseAddress"); Assert.True(codeFunctionVariable.GetCodeType().IsPointer); CodeFunction codeFunction = new CodePointer <CodeFunction>(new NakedPointer(codeFunctionVariable)).Element; Assert.Equal($"{DefaultModuleName}!DefaultTestCase", codeFunction.FunctionName); }
/// <summary> /// SQLite.DataReaderをList形式に変換する /// </summary> /// <param name="sqliteDataReader"></param> /// <returns></returns> private List <DefaultModule> ReaderToList(SQLiteDataReader sqliteDataReader) { List <DefaultModule> defaultModules = new List <DefaultModule>(); while (sqliteDataReader.Read()) { DefaultModule defaultModule = new DefaultModule(); defaultModule.id = dataReader["MODULE_ID"].ToString(); defaultModule.moduleTypeId = dataReader["MODULE_TYPE_ID"].ToString(); defaultModule.rectangle = dataReader["RECT_FLG"].ToString(); defaultModule.widthSize1 = double.Parse(dataReader["WIDTH_SIZE1"].ToString()); defaultModule.widthSize2 = double.Parse(dataReader["WIDTH_SIZE2"].ToString()); defaultModule.heightSize1 = double.Parse(dataReader["HEIGHT_SIZE1"].ToString()); defaultModule.heightSize2 = double.Parse(dataReader["HEIGHT_SIZE2"].ToString()); defaultModule.lowVirticalSize = double.Parse(dataReader["LOW_VIR_SIZE"].ToString()); defaultModule.highVirticalSize = double.Parse(dataReader["HI_VIR_SIZE"].ToString()); defaultModule.direction = dataReader["DIRECTION"].ToString(); defaultModules.Add(defaultModule); } return(defaultModules); }
public void GettingClassStaticMember() { Variable staticVariable = DefaultModule.GetVariable("MyTestClass::staticVariable"); Assert.Equal(1212121212, (int)staticVariable); }
/// <summary> /// 開始ボタン押下時 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnStart_Click(object sender, EventArgs e) { try { if (this.chkExt.CheckedItems.Count == 0) { MessageBox.Show("検証する拡張子を1つ以上選択してください", "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (System.IO.Directory.Exists(this.txtSrcFolder.Text) == false) { MessageBox.Show("対象の画像フォルダを指定してください", "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (System.IO.Directory.Exists(this.txtLogFolder.Text) == false) { MessageBox.Show("対象のログフォルダを指定してください", "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (MessageBox.Show("イメージ破損チェックを開始します" + Environment.NewLine + "よろしいですか?", "確認", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } EnableControl(false); this.lstResult.Items.Clear(); DefaultModule.WriteLstResult(this.lstResult, "画像フォルダ:" + this.txtSrcFolder.Text); DefaultModule.WriteLstResult(this.lstResult, "ログフォルダ:" + this.txtLogFolder.Text); DefaultModule.WriteLstResult(this.lstResult, "対象色:" + this.cpTargetColor.Value.ToString()); DefaultModule.WriteLstResult(this.lstResult, "エラーとするピクセル数:" + this.numPixel.Value); DefaultModule.WriteLstResult(this.lstResult, "走査方向:" + this.cmbDirection.SelectedItem); if (this.cmbDirection.SelectedIndex == 0) { // 縦 DefaultModule.WriteLstResult(this.lstResult, "起点横:" + this.numPointX.Value); } else { // 縦 DefaultModule.WriteLstResult(this.lstResult, "起点縦:" + this.numPointY.Value); } DefaultModule.WriteLstResult(this.lstResult, "イメージ破損チェック開始:" + this.txtLogFolder.Text); string dtDateTime = DateTime.Now.ToString("yyyyMMdd_HHmmss"); string strLogFile = this.txtLogFolder.Text + "\\" + dtDateTime + ".log"; string[] strExts = new string[0]; int iCount = 0; foreach (var strExt in this.chkExt.CheckedItems) { // CheckedListbox内のチェックの付いた値のみ配列に代入する iCount += 1; Array.Resize(ref strExts, iCount); strExts[iCount - 1] = (string)strExt; DefaultModule.WriteLstResult(this.lstResult, "対象画像形式:" + (string)strExt); } var strFiles = DefaultModule.GetFilesMostDeep(this.txtSrcFolder.Text, strExts); DefaultModule.WriteLstResult(this.lstResult, strFiles.Count() + "ファイル存在確認"); foreach (var strFile in strFiles) { Application.DoEvents(); if (blnAbort == true) { if (MessageBox.Show("処理を中止しますか?", "確認", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes) { blnAbort = false; DefaultModule.WriteLstResult(this.lstResult, "処理中断"); DefaultModule.OutputListLog(this.lstResult, strLogFile, System.Text.Encoding.GetEncoding("Shift-JIS")); return; } else { blnAbort = false; } } if (CheckCorrupt(strFile) == false) { DefaultModule.WriteLstResult(this.lstResult, "破損している可能性あり:" + strFile, DefaultModule.ResultMark.ErrorMark); continue; } else { DefaultModule.WriteLstResult(this.lstResult, "正常:" + strFile); } } DefaultModule.WriteLstResult(this.lstResult, "イメージ破損チェック終了"); DefaultModule.OutputListLog(this.lstResult, strLogFile, System.Text.Encoding.GetEncoding("Shift-JIS")); MessageBox.Show("イメージ破損チェックが終了しました", "確認", MessageBoxButtons.OK, MessageBoxIcon.Information); EnableControl(true); } catch (Exception ex) { DefaultModule.OutputLogFile("発生場所:" + System.Reflection.MethodBase.GetCurrentMethod() + Environment.NewLine + ex.Message + Environment.NewLine + ex.StackTrace); MessageBox.Show("発生場所:" + System.Reflection.MethodBase.GetCurrentMethod() + Environment.NewLine + ex.Message + Environment.NewLine + ex.StackTrace, "エラー", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { EnableControl(true); } }