public StandardIOKernelServerTests(ITestOutputHelper output)
        {
            var displayIdSeed = 0;

            Kernel.DisplayIdGenerator =
                () => Interlocked.Increment(ref displayIdSeed).ToString();

            var kernel = new CompositeKernel
            {
                new CSharpKernel()
                .UseKernelHelpers()
                .UseNugetDirective()
                .UseDefaultFormatting()
                .UseDefaultMagicCommands()
            };

            _standardIOKernelServer = new StandardIOKernelServer(
                kernel,
                new StreamReader(new MemoryStream()),
                new StringWriter());

            _kernelEvents = _standardIOKernelServer
                            .Output
                            .Where(s => !string.IsNullOrWhiteSpace(s))
                            .Select(KernelEventEnvelope.Deserialize)
                            .ToSubscribedList();

            _disposables.Add(_standardIOKernelServer);
            _disposables.Add(output.SubscribeToPocketLogger());
            _disposables.Add(kernel.LogEventsToPocketLogger());
            _disposables.Add(kernel);
            _disposables.Add(() => Kernel.DisplayIdGenerator = null);
        }
Beispiel #2
0
        public KernelServerTests(ITestOutputHelper output)
        {
            var kernel = new CompositeKernel
            {
                new CSharpKernel()
                .UseKernelHelpers()
                .UseNugetDirective()
                .UseDefaultFormatting()
                .UseDefaultMagicCommands()
            };


            _kernelServer = kernel.CreateKernelServer(new StreamReader(new MemoryStream()), new StringWriter(), new DirectoryInfo(Environment.CurrentDirectory));

            _kernelEvents = _kernelServer
                            .Output
                            .Where(s => !string.IsNullOrWhiteSpace(s))
                            .Select(KernelEventEnvelope.Deserialize)
                            .ToSubscribedList();

            _disposables.Add(_kernelServer);
            _disposables.Add(output.SubscribeToPocketLogger());
            _disposables.Add(kernel.LogEventsToPocketLogger());
            _disposables.Add(kernel);
        }
Beispiel #3
0
        public KernelClientTests(ITestOutputHelper output)
        {
            _output = output;
            var displayIdSeed = 0;

            _configuration = new Configuration()
                             .UsingExtension("json");

            _configuration = _configuration.SetInteractive(Debugger.IsAttached);

            Microsoft.DotNet.Interactive.Kernel.DisplayIdGenerator =
                () => Interlocked.Increment(ref displayIdSeed).ToString();

            var kernel = new CompositeKernel
            {
                new CSharpKernel()
                .UseKernelHelpers()
                .UseNugetDirective()
                .UseDefaultRendering()
            };

            _io = new IOStreams();

            _kernelClient = new KernelStreamClient(
                kernel,
                _io,
                _io);

            _events = _io.OutputStream
                      .Where(s => !string.IsNullOrWhiteSpace(s))
                      .Select(JObject.Parse)
                      .ToSubscribedList();

            _disposables.Add(_kernelClient);
            _disposables.Add(_output.SubscribeToPocketLogger());
            _disposables.Add(kernel.LogEventsToPocketLogger());
            _disposables.Add(kernel);
            _disposables.Add(() => Microsoft.DotNet.Interactive.Kernel.DisplayIdGenerator = null);
        }