Beispiel #1
0
        public async Task PSS18()
        {
            string testName = "PSS18";

            //Arrange
            HttpClient client = _factory.CreateClient();

            OneWayANOVAPowerAnalysisUserBasedInputsModel model = new OneWayANOVAPowerAnalysisUserBasedInputsModel();

            model.Means = "3.5,3.75,5.5,8";
            model.VariabilityEstimate = VariabilityEstimate.Variance;
            model.Variance            = 8;
            model.Significance        = "0.001";
            model.PlottingRangeType   = PlottingRangeTypeOption.SampleSize;
            model.SampleSizeFrom      = 2;
            model.SampleSizeTo        = 20;

            //Act
            StatsOutput statsOutput = await Helpers.SubmitAnalysis(client, "OneWayANOVAPowerAnalysisUserBasedInputs", new FormUrlEncodedContent(model.ToKeyValue()));

            Helpers.SaveTestOutput("OneWayANOVAPowerAnalysisUserBasedInputs", model, testName, statsOutput);

            //Assert
            string expectedHtml = File.ReadAllText(Path.Combine("ExpectedResults", "OneWayANOVAPowerAnalysisUserBasedInputs", testName + ".html"));

            Assert.Equal(Helpers.FixForUnixOSs(expectedHtml), Helpers.FixForUnixOSs(statsOutput.HtmlResults));
        }
Beispiel #2
0
        public async Task PSS23()
        {
            string testName = "PSS23";

            //Arrange
            HttpClient client = _factory.CreateClient();

            OneWayANOVAPowerAnalysisUserBasedInputsModel model = new OneWayANOVAPowerAnalysisUserBasedInputsModel();

            model.Means = "3.5,3.75,5.5,8";
            model.VariabilityEstimate = VariabilityEstimate.StandardDeviation;
            model.StandardDeviation   = 3;
            model.Significance        = "0.05";
            model.PlottingRangeType   = PlottingRangeTypeOption.Power;
            model.PowerFrom           = 50;
            model.PowerTo             = 70;

            //Act
            StatsOutput statsOutput = await Helpers.SubmitAnalysis(client, "OneWayANOVAPowerAnalysisUserBasedInputs", new FormUrlEncodedContent(model.ToKeyValue()));

            Helpers.SaveTestOutput("OneWayANOVAPowerAnalysisUserBasedInputs", model, testName, statsOutput);

            //Assert
            string expectedHtml = File.ReadAllText(Path.Combine("ExpectedResults", "OneWayANOVAPowerAnalysisUserBasedInputs", testName + ".html"));

            Assert.Equal(Helpers.RemoveAllImageNodes(expectedHtml), Helpers.RemoveAllImageNodes(statsOutput.HtmlResults));
        }
Beispiel #3
0
        public async Task PSS15()
        {
            string testName = "PSS15";

            //Arrange
            HttpClient client = _factory.CreateClient();

            OneWayANOVAPowerAnalysisUserBasedInputsModel model = new OneWayANOVAPowerAnalysisUserBasedInputsModel();

            model.Means = "2,2,3";
            model.VariabilityEstimate = VariabilityEstimate.StandardDeviation;
            model.StandardDeviation   = 10;
            model.PlottingRangeType   = PlottingRangeTypeOption.SampleSize;
            model.SampleSizeFrom      = 80;
            model.SampleSizeTo        = 50;

            //Act
            HttpResponseMessage response = await client.PostAsync("Analyses/OneWayANOVAPowerAnalysisUserBasedInputs", new FormUrlEncodedContent(model.ToKeyValue()));

            IEnumerable <string> errors = await Helpers.ExtractErrors(response);

            //Assert
            Assert.Contains("Sample Size To value must be greater than the From value.", errors);
            Helpers.SaveOutput("OneWayANOVAPowerAnalysisUserBasedInputs", testName, errors);
        }
Beispiel #4
0
        public void GetArguments_ReturnsCorrectArguments()
        {
            //Arrange
            System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
            OneWayANOVAPowerAnalysisUserBasedInputsModel sut = GetModel();

            //Act
            List <Argument> result = sut.GetArguments().ToList();

            //Assert
            var graphTitle = result.Single(x => x.Name == "GraphTitle");

            Assert.Equal("TitleTest", graphTitle.Value);

            var means = result.Single(x => x.Name == "Means");

            Assert.Equal("55", means.Value);

            var variabilityEstimate = result.Single(x => x.Name == "VariabilityEstimate");

            Assert.Equal("Variance", variabilityEstimate.Value);

            var variance = result.Single(x => x.Name == "Variance");

            Assert.Equal("42", variance.Value);

            var standardDeviation = result.Single(x => x.Name == "StandardDeviation");

            Assert.Null(standardDeviation.Value);

            var plottingRangeType = result.Single(x => x.Name == "PlottingRangeType");

            Assert.Equal("Power", plottingRangeType.Value);

            var powerFrom = result.Single(x => x.Name == "PowerFrom");

            Assert.Equal("70", powerFrom.Value);

            var powerTo = result.Single(x => x.Name == "PowerTo");

            Assert.Equal("90", powerTo.Value);

            var sampleSizeFrom = result.Single(x => x.Name == "SampleSizeFrom");

            Assert.Null(sampleSizeFrom.Value);

            var sampleSizeTo = result.Single(x => x.Name == "SampleSizeTo");

            Assert.Null(sampleSizeTo.Value);

            var significance = result.Single(x => x.Name == "Significance");

            Assert.Equal("0.05", significance.Value);
        }
Beispiel #5
0
        public void GetCommandLineArguments_ReturnsCorrectString()
        {
            //Arrange
            System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
            OneWayANOVAPowerAnalysisUserBasedInputsModel sut = GetModel();

            //Act
            string result = sut.GetCommandLineArguments();

            //Assert
            Assert.Equal("UserValues 55 Variance 42 NULL 0.05 PowerAxis 70 90 TitleTest", result);
        }
Beispiel #6
0
        public void ScriptFileName_ReturnsCorrectString()
        {
            //Arrange
            System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
            OneWayANOVAPowerAnalysisUserBasedInputsModel sut = new OneWayANOVAPowerAnalysisUserBasedInputsModel();

            //Act
            string result = sut.ScriptFileName;

            //Assert
            Assert.Equal("OneWayANOVAPowerAnalysisUserBasedInputs", result);
        }
Beispiel #7
0
        public void SignificancesList_ReturnsCorrectList()
        {
            //Arrange
            System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
            OneWayANOVAPowerAnalysisUserBasedInputsModel sut = new OneWayANOVAPowerAnalysisUserBasedInputsModel();

            //Act
            IEnumerable <string> result = sut.SignificancesList;

            //Assert
            Assert.IsAssignableFrom <IEnumerable <string> >(result);
            Assert.Equal(new List <string>()
            {
                "0.1", "0.05", "0.025", "0.01", "0.001"
            }, result);
        }
Beispiel #8
0
        private OneWayANOVAPowerAnalysisUserBasedInputsModel GetModel()
        {
            var model = new OneWayANOVAPowerAnalysisUserBasedInputsModel
            {
                Means = "55",
                VariabilityEstimate = VariabilityEstimate.Variance,
                Variance            = 42,
                StandardDeviation   = null,
                GraphTitle          = "TitleTest",
                PlottingRangeType   = PlottingRangeTypeOption.Power,
                PowerFrom           = 70,
                PowerTo             = 90,
                SampleSizeFrom      = null,
                SampleSizeTo        = null,
                Significance        = "0.05"
            };

            return(model);
        }
Beispiel #9
0
        public async Task PSS4()
        {
            string testName = "PSS4";

            //Arrange
            HttpClient client = _factory.CreateClient();

            OneWayANOVAPowerAnalysisUserBasedInputsModel model = new OneWayANOVAPowerAnalysisUserBasedInputsModel();

            model.Means = "2,2,3";
            model.VariabilityEstimate = VariabilityEstimate.Variance;
            model.Variance            = 0;

            model.PlottingRangeType = PlottingRangeTypeOption.Power;

            //Act
            HttpResponseMessage response = await client.PostAsync("Analyses/OneWayANOVAPowerAnalysisUserBasedInputs", new FormUrlEncodedContent(model.ToKeyValue()));

            IEnumerable <string> errors = await Helpers.ExtractErrors(response);

            //Assert
            Assert.Contains("Variance must be > 0.", errors);
            Helpers.SaveOutput("OneWayANOVAPowerAnalysisUserBasedInputs", testName, errors);
        }
Beispiel #10
0
        public async Task PSS2()
        {
            string testName = "PSS2";

            //Arrange
            HttpClient client = _factory.CreateClient();

            OneWayANOVAPowerAnalysisUserBasedInputsModel model = new OneWayANOVAPowerAnalysisUserBasedInputsModel();

            model.Means = "2,2,,3";
            model.VariabilityEstimate = VariabilityEstimate.Variance;
            model.Variance            = 2;

            model.PlottingRangeType = PlottingRangeTypeOption.Power;

            //Act
            HttpResponseMessage response = await client.PostAsync("Analyses/OneWayANOVAPowerAnalysisUserBasedInputs", new FormUrlEncodedContent(model.ToKeyValue()));

            IEnumerable <string> errors = await Helpers.ExtractErrors(response);

            //Assert
            Assert.Contains("The list of means contains missing values, please remove any blank entries between the comma separated means.", errors);
            Helpers.SaveOutput("OneWayANOVAPowerAnalysisUserBasedInputs", testName, errors);
        }
 public async Task <IActionResult> OneWayANOVAPowerAnalysisUserBasedInputs(OneWayANOVAPowerAnalysisUserBasedInputsModel model, bool ignoreWarnings)
 {
     return(await RunAnalysis(model, ignoreWarnings));
 }
 public OneWayANOVAPowerAnalysisUserBasedInputsValidator(OneWayANOVAPowerAnalysisUserBasedInputsModel ow)
 {
     owVariables = ow;
 }
Beispiel #13
0
        public void LoadArguments_ReturnsCorrectArguments()
        {
            //Arrange
            System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
            OneWayANOVAPowerAnalysisUserBasedInputsModel sut = new OneWayANOVAPowerAnalysisUserBasedInputsModel();

            List <Argument> arguments = new List <Argument>();

            arguments.Add(new Argument {
                Name = "GraphTitle", Value = "TitleTest"
            });
            arguments.Add(new Argument {
                Name = "EffectSizeEstimate", Value = "TreatmentMeanSquare"
            });
            arguments.Add(new Argument {
                Name = "TreatmentMeanSquare", Value = "12.5"
            });
            arguments.Add(new Argument {
                Name = "Means", Value = "55"
            });
            arguments.Add(new Argument {
                Name = "VariabilityEstimate", Value = "Variance"
            });
            arguments.Add(new Argument {
                Name = "ResidualMeanSquare"
            });
            arguments.Add(new Argument {
                Name = "Variance", Value = "42"
            });
            arguments.Add(new Argument {
                Name = "StandardDeviation"
            });
            arguments.Add(new Argument {
                Name = "NoOfTreatmentGroups", Value = "5"
            });
            arguments.Add(new Argument {
                Name = "PlottingRangeType", Value = "Power"
            });
            arguments.Add(new Argument {
                Name = "PowerFrom", Value = "70"
            });
            arguments.Add(new Argument {
                Name = "PowerTo", Value = "90"
            });
            arguments.Add(new Argument {
                Name = "SampleSizeFrom"
            });
            arguments.Add(new Argument {
                Name = "SampleSizeTo"
            });
            arguments.Add(new Argument {
                Name = "Significance", Value = "0.05"
            });

            Assert.Equal(15, arguments.Count);

            //Act
            sut.LoadArguments(arguments);

            //Assert
            Assert.Equal("55", sut.Means);
            Assert.Equal("Variance", sut.VariabilityEstimate.ToString());
            Assert.Equal("42", sut.Variance.ToString());
            Assert.Null(sut.StandardDeviation);
            Assert.Equal("55", sut.Means);
            Assert.Equal("TitleTest", sut.GraphTitle);
            Assert.Equal(PlottingRangeTypeOption.Power, sut.PlottingRangeType);
            Assert.Equal(70, sut.PowerFrom);
            Assert.Equal(90, sut.PowerTo);
            Assert.Null(sut.SampleSizeFrom);
            Assert.Null(sut.SampleSizeTo);
            Assert.Equal("0.05", sut.Significance);
        }