public void EC_WinFormsTest_WMED0004() { using (var fs = new LocalFileSystem(NOPApplication.Instance)) using (var mb = new Metabank(fs, null, TestSources.RPATH)) using (var skyApp = new SkyApplication(NOPApplication.Instance, SystemApplicationType.TestRig, mb, TestSources.THIS_HOST, true, null, null)) { var host = mb.CatalogReg.NavigateHost(WMED0004); var conf = host.GetEffectiveAppConfig("WinFormsTest"); Aver.AreEqual("WinFormsTest on HOST1", conf.Navigate("/$application-name").Value); Aver.AreEqual("Nikulin", conf.Navigate("/$clown").Value); Aver.AreEqual("A", conf.Navigate("/gv/$a").Value); Aver.AreEqual("B", conf.Navigate("/gv/$b").Value); Aver.IsNull(conf.Navigate("/glue/$zoloto").Value); Aver.AreEqual("da", conf.Navigate("/glue/$serebro").Value); Aver.AreEqual(123, conf.Navigate("/east-block/$something").ValueAsInt()); Aver.IsTrue(conf.Navigate("/cleveland/$solon").ValueAsBool()); Aver.IsFalse(conf.Navigate("/cleveland/$hudson").ValueAsBool()); Aver.IsFalse(conf.Navigate("/windows7/$build").Exists); } }
public void EC_Various_Parallel() { using (var fs = new LocalFileSystem(NOPApplication.Instance)) using (var mb = new Metabank(fs, null, TestSources.RPATH)) using (var skyApp = new SkyApplication(NOPApplication.Instance, SystemApplicationType.TestRig, mb, TestSources.THIS_HOST, true, null, null)) { Parallel.For(0, TestSources.PARALLEL_LOOP_TO, (i) => { Thread.SpinWait(Ambient.Random.NextScaledRandomInteger(10, 2000)); var host = mb.CatalogReg.NavigateHost(WMED0004); var conf = host.GetEffectiveAppConfig("WebApp1"); Aver.AreEqual("WebApp1", conf.Navigate("/$application-name").Value); Aver.AreEqual("A", conf.Navigate("/gv/$a").Value); Aver.AreEqual("B", conf.Navigate("/gv/$b").Value); Aver.AreEqual("da", conf.Navigate("/glue/$zoloto").Value); Aver.AreEqual("da", conf.Navigate("/glue/$serebro").Value); Aver.AreEqual(123, conf.Navigate("/east-block/$something").ValueAsInt()); Aver.AreEqual(true, conf.Navigate("/cleveland/$solon").ValueAsBool()); Aver.AreEqual(true, conf.Navigate("/cleveland/$hudson").ValueAsBool()); Aver.IsFalse(conf.Navigate("/windows7/$build").Exists); //-------------------------------------------- Thread.SpinWait(Ambient.Random.NextScaledRandomInteger(10, 2000)); host = mb.CatalogReg.NavigateHost(WMED0002); conf = host.GetEffectiveAppConfig("WebApp"); Aver.AreEqual("1.2.0890b", conf.Navigate("/windows7/$build").Value); //-------------------------------------------- Thread.SpinWait(Ambient.Random.NextScaledRandomInteger(10, 2000)); host = mb.CatalogReg.NavigateHost(WMED0004); conf = host.GetEffectiveAppConfig("WinFormsTest"); Aver.AreEqual("WinFormsTest on HOST1", conf.Navigate("/$application-name").Value); Aver.AreEqual("A", conf.Navigate("/gv/$a").Value); Aver.AreEqual("B", conf.Navigate("/gv/$b").Value); Aver.IsNull(conf.Navigate("/glue/$zoloto").Value); Aver.AreEqual("da", conf.Navigate("/glue/$serebro").Value); Aver.AreEqual(123, conf.Navigate("/east-block/$something").ValueAsInt()); Aver.AreEqual(true, conf.Navigate("/cleveland/$solon").ValueAsBool()); Aver.AreEqual(false, conf.Navigate("/cleveland/$hudson").ValueAsBool()); Aver.IsFalse(conf.Navigate("/windows7/$build").Exists); }); } }
private static void run() { using (var app = new SkyApplication(SystemApplicationType.TestRig, new string[] {}, null)) { ((Azos.Sky.Identification.GdidGenerator)app.GdidProvider).TestingAuthorityNode = "sync://127.0.0.1:4000"; Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new MenuForm()); } }
public void EC_Server_fail() { using (var fs = new LocalFileSystem(NOPApplication.Instance)) using (var mb = new Metabank(fs, null, TestSources.RPATH)) using (var skyApp = new SkyApplication(NOPApplication.Instance, SystemApplicationType.TestRig, mb, TestSources.THIS_HOST, true, null, null)) { var host = mb.CatalogReg.NavigateHost(WMED0002); var conf = host.GetEffectiveAppConfig("TestApp"); } }
void IRunnableHook.Prologue(Runner runner, FID id) { Console.WriteLine("{0}.{1}".Args(GetType().FullName, "RigSetup()...")); m_FS = new LocalFileSystem(NOPApplication.Instance); m_Metabank = new Metabank(m_FS, null, TestSources.RPATH); m_TestApp = new SkyApplication(NOPApplication.Instance, SystemApplicationType.TestRig, m_Metabank, TestSources.THIS_HOST, true, null, null); DoRigSetup(); Console.WriteLine("{0}.{1}".Args(GetType().FullName, "...RigSetup() DONE")); }
public void EC_Server_success() { using (var fs = new LocalFileSystem(NOPApplication.Instance)) using (var mb = new Metabank(fs, null, TestSources.RPATH)) using (var skyApp = new SkyApplication(NOPApplication.Instance, SystemApplicationType.TestRig, mb, TestSources.THIS_HOST, true, null, null)) { var host = mb.CatalogReg.NavigateHost(WMED0003); var conf = host.GetEffectiveAppConfig("AZGov"); Aver.IsFalse(conf.Navigate("/windows7/$build").Exists); } }
public void MI_Test() { using (var fs = new LocalFileSystem(NOPApplication.Instance)) using (var mb = new Metabank(fs, null, TestSources.RPATH)) using (var app = new SkyApplication(NOPApplication.Instance, SystemApplicationType.TestRig, mb, TestSources.THIS_HOST, true, null, null)) { var host = mb.CatalogReg.NavigateHost(WMED0004); var conf = host.GetEffectiveAppConfig("WebApp1"); Aver.AreEqual("value", conf.Navigate("/$var").Value); } }
void IRunnableHook.Prologue(Runner runner, FID id) { Console.WriteLine("{0}.{1}".Args(GetType().FullName, "RigSetup()...")); m_FS = new LocalFileSystem(NOPApplication.Instance); var m_TestApp = new SkyApplication(NOPApplication.Instance, SystemApplicationType.TestRig, m_FS, new FileSystemSessionConnectParams(), TestSources.RPATH, TestSources.THIS_HOST, false, null, null); DoRigSetup(); Console.WriteLine("{0}.{1}".Args(GetType().FullName, "...RigSetup() DONE")); }
static void run(string[] args) { const string FROM = "AGDIDA.Program"; using (var app = new SkyApplication(SystemApplicationType.GDIDAuthority, args, null)) { try { using (var authority = new GdidAuthorityService(app)) { authority.Configure(null); authority.Start(); try { // WARNING: Do not modify what this program reads/writes from/to standard IO streams because // AHGOV uses those particular string messages for its protocol Console.WriteLine("OK."); //<-- AHGOV protocol, AHGOV waits for this token to assess startup situation ConsoleUtils.WriteMarkupContent(typeof(ProgramBody).GetText("Welcome.txt")); Console.WriteLine("Waiting for line to terminate..."); var abortableConsole = new TerminalUtils.AbortableLineReader(); try { while (app.Active) { if (abortableConsole.Line != null) { app.Log.Write(new Message { Type = MessageType.Info, Topic = SysConsts.LOG_TOPIC_ID_GEN, From = FROM, Text = "Main loop received CR|LF. Exiting..." }); break; //<-- AHGOV protocol, AHGOV sends a <CRLF> when it is time to shut down } Thread.Sleep(250); } } finally { abortableConsole.Abort(); } } finally { authority.WaitForCompleteStop(); } } } catch (Exception error) { app.Log.Write(new Message { Type = MessageType.CatastrophicError, Topic = SysConsts.LOG_TOPIC_ID_GEN, From = FROM, Text = "Exception leaked in run(): " + error.ToMessageWithType(), Exception = error }); throw error; } }//using app }
static void run(string[] args) { const string FROM = "AHGOV.Program"; using (var app = new SkyApplication(SystemApplicationType.HostGovernor, args, null)) { try { var fromARD = app.CommandArgs[SysConsts.ARD_PARENT_CMD_PARAM].Exists; var updateProblem = app.CommandArgs[SysConsts.ARD_UPDATE_PROBLEM_CMD_PARAM].Exists; using (var governor = new HostGovernorService(app, fromARD, updateProblem)) { governor.Configure(null); governor.Start(); try { // WARNING: Do not modify what this program reads/writes from/to standard IO streams because // ARD uses those particular string messages for its protocol Console.WriteLine("OK."); //<-- ARD protocol, ARD waits for this token to assess startup situation ConsoleUtils.WriteMarkupContent(typeof(ProgramBody).GetText("Welcome.txt")); Console.WriteLine("Waiting for line to terminate..."); var abortableConsole = new TerminalUtils.AbortableLineReader(); try { while (app.Active && !governor.NeedsProcessRestart) { if (abortableConsole.Line != null) { app.Log.Write(new Message { Type = MessageType.Info, Topic = SysConsts.LOG_TOPIC_APP_MANAGEMENT, From = FROM, Text = "Main loop received CR|LF. Exiting..." }); break; //<-- ARD protocol, ARD sends a <CRLF> when it is time to shut down } Thread.Sleep(250); } } finally { abortableConsole.Abort(); } } finally { governor.WaitForCompleteStop(); } }//using governor } catch (Exception error) { app.Log.Write(new Message { Type = MessageType.CatastrophicError, Topic = SysConsts.LOG_TOPIC_APP_MANAGEMENT, From = FROM, Text = "Exception leaked in run(): " + error.ToMessageWithType(), Exception = error }); throw error; } }//using APP }
static void run(string[] args) { using (var app = new AzosApplication(allowNesting: true, args: args, rootConfig: null)) { var silent = app.CommandArgs["s", "silent"].Exists; if (!silent) { ConsoleUtils.WriteMarkupContent(typeof(ProgramBody).GetText("Welcome.txt")); ConsoleUtils.Info("Build information:"); Console.WriteLine(" Azos: " + BuildInformation.ForFramework); Console.WriteLine(" Tool: " + new BuildInformation(typeof(amm.ProgramBody).Assembly)); } if (app.CommandArgs["?", "h", "help"].Exists) { ConsoleUtils.WriteMarkupContent(typeof(ProgramBody).GetText("Help.txt")); return; } var mbPath = app.CommandArgs .AttrByIndex(0) .ValueAsString(System.Environment.GetEnvironmentVariable(BootConfLoader.ENV_VAR_METABASE_FS_ROOT)); if (!Directory.Exists(mbPath)) { throw new Exception("Specified metabase path not found"); } var fromHost = app.CommandArgs["host", "from"].AttrByIndex(0).Value; if (fromHost.IsNullOrWhiteSpace()) { fromHost = System.Environment.GetEnvironmentVariable(BootConfLoader.ENV_VAR_HOST_NAME); } if (!silent) { ConsoleUtils.Info("Metabase path: " + mbPath); ConsoleUtils.Info("Host (this machine): " + fromHost); } var w = System.Diagnostics.Stopwatch.StartNew(); using (var fs = new LocalFileSystem(app)) using (var mb = new Metabank(fs, new FileSystemSessionConnectParams(), mbPath)) { //using (new BootConfLoader(SystemApplicationType.Tool, mb, fromHost)) using (var skyApp = new SkyApplication(app, SystemApplicationType.Tool, mb, fromHost, allowNesting: false, args: null, rootConfig: null)) { if (app.CommandArgs["gbm"].Exists) { generateManifests(mb, silent); } else { validate(mb, silent); } } } if (!silent) { Console.WriteLine(); ConsoleUtils.Info("Run time: " + w.Elapsed.ToString()); } }//using APP }