Esempio n. 1
0
        public IActionResult ConsoleStart(string consoleText)
        {
            var consx = ConsoleRepository.AddConsole(new VirtualConsole(DateTime.Now.Ticks.ToString(), 80, 40));

            consx.WriteLine($"Starting command '{consoleText}'... ");

            GetBuilder().RunAsync(consx, cons =>
            {
                SampleDocuments.MarkDownBasics(cons);
                SlowPlayback.LiveElements(cons);
                SampleDocuments.ColourPalette(cons);

                if (consoleText == "err")
                {
                    throw new Exception("Sample Error");
                }

                var a = new ProgressBar(cons, "Test Scrolling").Start(100);
                for (int i = 0; i < a.ItemsTotal; i++)
                {
                    a.Increment(i.ToString());
                    Thread.Sleep(200);
                }
                a.Stop();



                cons.SetProp("DoneUrl", "/Home/Privacy");
            });

            return(Console(consx));
        }
Esempio n. 2
0
        private static void RunMarkDownSample()
        {
            var cons = AnsiConsole.Singleton;

            cons.UsePrefix = true;

            using (var fileTxt =
                       new BufferedFileConsole(File.CreateText("e:\\Scratch\\console.txt"), "file", cons.Width, cons.Height)
            {
                Renderer = new PlainConsoleRenderer()
            })
            {
                using (var fileHtml =
                           new BufferedFileConsole(File.CreateText("e:\\Scratch\\console.html"), "file", cons.Width,
                                                   cons.Height)
                {
                    Renderer = new HtmlConsoleRenderer()
                })
                {
                    cons.Parent = fileTxt;

                    fileTxt.Parent = fileHtml;

                    SampleDocuments.DescribeConsole(cons);

                    //foreach (var i in Enumerable.Range(0, 100))
                    //{
                    //    cons.WriteLine(i.ToString());
                    //}

                    //var ok = cons.UpdateLine(1, "XXX");
                    //cons.WriteLine($"Update -1 => {ok}");

                    SampleDocuments.MarkDownBasics(cons);
                    SlowPlayback.LiveElements(cons);
                    SampleDocuments.ColourPalette(cons);



                    SlowPlayback.LiveElementsFast(cons);


                    SampleDocuments.DescribeConsole(cons);
                    //var a = new ProgressBar(cons, "Test Scrolling").Start(100);
                    //for (int i = 0; i < a.ItemsTotal; i++)
                    //{
                    //    a.Increment(i.ToString());
                    //    Thread.Sleep(200);
                    //    cons.WriteLine(i.ToString());
                    //}
                    //a.Stop();
                }
            }
        }
Esempio n. 3
0
        private static IWorkload CreateWorkload(MeepMeepOptions options)
        {
            switch (options.WorkloadType)
            {
            case WorkloadType.MutationPercentage:
                return(new MixedGetSetJsonDocumentWorkload(
                           new RangedWorkloadDocKeyGenerator(
                               options.DocKeyPrefix,
                               MixedGetSetJsonDocumentWorkload.DefaultKeyGenerationPart,
                               options.DocKeySeed,
                               options.DocKeyRange
                               ),
                           options.WorkloadSize,
                           options.WarmupMs,
                           options.MutationPercentage,
                           options.EnableOperationTiming,
                           options.UseSync,
                           options.RateLimit,
                           SampleDocuments.ReadJsonSampleDocument(options.DocSamplePath)));

            case WorkloadType.SetOnly:
                return(new AddJsonDocumentWorkload(
                           new RangedWorkloadDocKeyGenerator(
                               options.DocKeyPrefix,
                               AddJsonDocumentWorkload.DefaultKeyGenerationPart,
                               options.DocKeySeed,
                               options.DocKeyRange
                               ),
                           options.WorkloadSize,
                           options.WarmupMs,
                           options.EnableOperationTiming,
                           options.UseSync,
                           options.RateLimit,
                           SampleDocuments.ReadJsonSampleDocument(options.DocSamplePath)));

            case WorkloadType.SetAndGet:
                return(new AddAndGetJsonDocumentWorkload(
                           new RangedWorkloadDocKeyGenerator(
                               options.DocKeyPrefix,
                               AddAndGetJsonDocumentWorkload.DefaultKeyGenerationPart,
                               options.DocKeySeed,
                               options.DocKeyRange
                               ),
                           options.WorkloadSize,
                           options.WarmupMs,
                           options.EnableOperationTiming,
                           options.UseSync,
                           options.RateLimit));

            default:
                throw new ArgumentException($"Unknown workload type: {options.WorkloadType}");
            }
        }