示例#1
0
        public async Task GridViewerExcludeTest(string expr)
        {
            await HostScript.InitializeAsync();

            var e      = Substitute.For <IDataObjectEvaluator>();
            var viewer = new GridViewer(Services.GetService <ICoreShell>(), e);

            viewer.CanView(null).Should().BeFalse();
            var session = HostScript.Session;

            await session.ExecuteAsync($"x <- {expr}");

            var value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

            viewer.CanView(value).Should().BeFalse();
        }
示例#2
0
        public async Task GridViewerExcludeTest(string expr)
        {
            var e      = Substitute.For <IDataObjectEvaluator>();
            var viewer = new GridViewer(_aggregator, e);

            viewer.CanView(null).Should().BeFalse();

            using (var hostScript = new RHostScript(_sessionProvider)) {
                var session = hostScript.Session;

                await session.ExecuteAsync($"x <- {expr}");

                var value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

                viewer.CanView(value).Should().BeFalse();
            }
        }
示例#3
0
        public async Task GridViewerDimLengthTest(string cast)
        {
            var e      = Substitute.For <IDataObjectEvaluator>();
            var viewer = new GridViewer(_aggregator, e);

            viewer.CanView(null).Should().BeFalse();

            using (var hostScript = new RHostScript(_sessionProvider)) {
                var session = hostScript.Session;

                await session.ExecuteAsync($"x <- {cast}(c())");

                var value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

                viewer.CanView(value).Should().BeFalse();

                await session.ExecuteAsync($"x <- {cast}(1)");

                value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

                viewer.CanView(value).Should().BeFalse();

                value = await session.EvaluateAndDescribeAsync("dim(x) <- 1", AllFields, null);

                value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

                viewer.CanView(value).Should().BeFalse();

                value = await session.EvaluateAndDescribeAsync("dim(x) <- c(1, 1)", AllFields, null);

                value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

                viewer.CanView(value).Should().BeTrue();

                value = await session.EvaluateAndDescribeAsync("dim(x) <- c(1, 1, 1)", AllFields, null);

                value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

                viewer.CanView(value).Should().BeFalse();

                await session.ExecuteAsync($"x <- {cast}(1:100)");

                value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

                viewer.CanView(value).Should().BeTrue();

                await session.ExecuteAsync($"dim(x) <- 100");

                value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

                viewer.CanView(value).Should().BeTrue();

                await session.ExecuteAsync($"dim(x) <- c(10, 10)");

                value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

                viewer.CanView(value).Should().BeTrue();

                await session.ExecuteAsync($"dim(x) <- c(10, 5, 2)");

                value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

                viewer.CanView(value).Should().BeFalse();
            }
        }
示例#4
0
        public async Task GridViewerDimLengthTest(string cast)
        {
            var e      = Substitute.For <IDataObjectEvaluator>();
            var viewer = new GridViewer(Services.GetService <ICoreShell>(), e);

            viewer.CanView(null).Should().BeFalse();

            await HostScript.InitializeAsync();

            var session = HostScript.Session;

            await session.ExecuteAsync($"x <- {cast}(c())");

            var value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

            viewer.CanView(value).Should().BeFalse();

            await session.ExecuteAsync($"x <- {cast}(1)");

            value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

            viewer.CanView(value).Should().BeFalse();

            value = await session.EvaluateAndDescribeAsync("dim(x) <- 1", AllFields, null);

            value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

            viewer.CanView(value).Should().BeFalse();

            value = await session.EvaluateAndDescribeAsync("dim(x) <- c(1, 1)", AllFields, null);

            value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

            viewer.CanView(value).Should().BeTrue();

            value = await session.EvaluateAndDescribeAsync("dim(x) <- c(1, 1, 1)", AllFields, null);

            value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

            viewer.CanView(value).Should().BeFalse();

            await session.ExecuteAsync($"x <- {cast}(1:100)");

            value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

            viewer.CanView(value).Should().BeTrue();

            await session.ExecuteAsync($"dim(x) <- 100");

            value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

            viewer.CanView(value).Should().BeTrue();

            await session.ExecuteAsync($"dim(x) <- c(10, 10)");

            value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

            viewer.CanView(value).Should().BeTrue();

            await session.ExecuteAsync($"dim(x) <- c(10, 5, 2)");

            value = await session.EvaluateAndDescribeAsync("x", AllFields, null);

            viewer.CanView(value).Should().BeFalse();
        }