private CorrelationAnalysisModel GetModel(IDataset dataset) { var model = new CorrelationAnalysisModel(dataset) { ByCategoriesAndOverall = false, CorrelationCoefficient = true, FirstCatFactor = "Factor 1", FourthCatFactor = "Factor 4", Hypothesis = "2-sided", Matrixplot = false, Method = "Pearson", PValue = true, Responses = new List <string> { "Resp 1", "Resp 2" }, Scatterplot = false, SecondCatFactor = "Factor 2", Significance = "0.05", TestStatistic = true, ThirdCatFactor = "Factor 3", Transformation = "None" }; return(model); }
public void ScriptFileName_ReturnsCorrectString() { //Arrange System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; CorrelationAnalysisModel sut = new CorrelationAnalysisModel(); //Act string result = sut.ScriptFileName; //Assert Assert.Equal("CorrelationAnalysis", result); }
public void GetCommandLineArguments_ReturnsCorrectString() { //Arrange System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; CorrelationAnalysisModel sut = GetModel(GetDataset()); //Act string result = sut.GetCommandLineArguments(); //Assert Assert.Equal("Respivs_sp_ivs1,Respivs_sp_ivs2 None Factorivs_sp_ivs1 Factorivs_sp_ivs2 Factorivs_sp_ivs3 Factorivs_sp_ivs4 Pearson 2-sided Y Y Y N N 0.05 N", result); }
public void MethodsList_ReturnsCorrectList() { //Arrange System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; CorrelationAnalysisModel sut = new CorrelationAnalysisModel(); //Act IEnumerable <string> result = sut.MethodsList; //Assert Assert.IsAssignableFrom <IEnumerable <string> >(result); Assert.Equal(new List <string>() { "Pearson", "Kendall", "Spearman" }, result); }
public void HypothesesList_ReturnsCorrectList() { //Arrange System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; CorrelationAnalysisModel sut = new CorrelationAnalysisModel(); //Act IEnumerable <string> result = sut.HypothesesList; //Assert Assert.IsAssignableFrom <IEnumerable <string> >(result); Assert.Equal(new List <string>() { "2-sided", "Less than", "Greater than" }, result); }
public void TransformationsList_ReturnsCorrectList() { //Arrange System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; CorrelationAnalysisModel sut = new CorrelationAnalysisModel(); //Act IEnumerable <string> result = sut.TransformationsList; //Assert Assert.IsAssignableFrom <IEnumerable <string> >(result); Assert.Equal(new List <string>() { "None", "Log10", "Loge", "Square Root", "ArcSine" }, result); }
public void ExportData_ReturnsCorrectStringArray() { //Arrange System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; Mock <IDataset> mockDataset = new Mock <IDataset>(); mockDataset.Setup(x => x.DatasetID).Returns(It.IsAny <int>); mockDataset.Setup(x => x.DatasetToDataTable()).Returns(GetTestDataTable()); CorrelationAnalysisModel sut = GetModel(mockDataset.Object); //Act string[] result = sut.ExportData(); //Assert Assert.Equal("Respivs_sp_ivs1,Respivs_sp_ivs2,Factorivs_sp_ivs1,Factorivs_sp_ivs2,Factorivs_sp_ivs3,Factorivs_sp_ivs4,catfact", result[0]); Assert.Equal(33, result.Count()); //as blank responses are removed Assert.StartsWith("0.51,0.86,D,2,2,D,D 2 2 D", result[32]); }
public void LoadArguments_ReturnsCorrectArguments() { //Arrange System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; CorrelationAnalysisModel sut = new CorrelationAnalysisModel(GetDataset()); List <Argument> arguments = new List <Argument>(); arguments.Add(new Argument { Name = "Responses", Value = "Resp 1,Resp2" }); arguments.Add(new Argument { Name = "FirstCatFactor", Value = "Factor 1" }); arguments.Add(new Argument { Name = "SecondCatFactor", Value = "Factor 2" }); arguments.Add(new Argument { Name = "ThirdCatFactor", Value = "Factor 3" }); arguments.Add(new Argument { Name = "FourthCatFactor", Value = "Factor 4" }); arguments.Add(new Argument { Name = "Transformation", Value = "Log10" }); arguments.Add(new Argument { Name = "ByCategoriesAndOverall", Value = "False" }); arguments.Add(new Argument { Name = "CorrelationCoefficient", Value = "True" }); arguments.Add(new Argument { Name = "Hypothesis", Value = "2-sided" }); arguments.Add(new Argument { Name = "Matrixplot", Value = "False" }); arguments.Add(new Argument { Name = "Method", Value = "Pearson" }); arguments.Add(new Argument { Name = "PValue", Value = "True" }); arguments.Add(new Argument { Name = "TestStatistic", Value = "True" }); arguments.Add(new Argument { Name = "Significance", Value = "0.05" }); arguments.Add(new Argument { Name = "Scatterplot", Value = "False" }); Assert.Equal(15, arguments.Count); //Act sut.LoadArguments(arguments); //Assert Assert.Equal(new List <string> { "Resp 1", "Resp2" }, sut.Responses); Assert.Equal("Factor 1", sut.FirstCatFactor); Assert.Equal("Factor 2", sut.SecondCatFactor); Assert.Equal("Factor 3", sut.ThirdCatFactor); Assert.Equal("Factor 4", sut.FourthCatFactor); Assert.Equal("Log10", sut.Transformation); Assert.False(sut.ByCategoriesAndOverall); Assert.True(sut.CorrelationCoefficient); Assert.False(sut.Matrixplot); Assert.Equal("2-sided", sut.Hypothesis); Assert.Equal("Pearson", sut.Method); Assert.True(sut.PValue); Assert.True(sut.TestStatistic); Assert.Equal("0.05", sut.Significance); Assert.False(sut.Scatterplot); }
public void GetArguments_ReturnsCorrectArguments() { //Arrange System.Threading.Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; CorrelationAnalysisModel sut = GetModel(GetDataset()); //Act List <Argument> result = sut.GetArguments().ToList(); //Assert var responses = result.Single(x => x.Name == "Responses"); Assert.Equal("Resp 1,Resp 2", responses.Value); var firstCatFactor = result.Single(x => x.Name == "FirstCatFactor"); Assert.Equal("Factor 1", firstCatFactor.Value); var secondCatFactor = result.Single(x => x.Name == "SecondCatFactor"); Assert.Equal("Factor 2", secondCatFactor.Value); var thirdCatFactor = result.Single(x => x.Name == "ThirdCatFactor"); Assert.Equal("Factor 3", thirdCatFactor.Value); var fourthCatFactor = result.Single(x => x.Name == "FourthCatFactor"); Assert.Equal("Factor 4", fourthCatFactor.Value); var transformation = result.Single(x => x.Name == "Transformation"); Assert.Equal("None", transformation.Value); var byCategoriesAndOverall = result.Single(x => x.Name == "ByCategoriesAndOverall"); Assert.Equal("False", byCategoriesAndOverall.Value); var estimate = result.Single(x => x.Name == "CorrelationCoefficient"); Assert.Equal("True", estimate.Value); var hypothesis = result.Single(x => x.Name == "Hypothesis"); Assert.Equal("2-sided", hypothesis.Value); var matrixplot = result.Single(x => x.Name == "Matrixplot"); Assert.Equal("False", matrixplot.Value); var method = result.Single(x => x.Name == "Method"); Assert.Equal("Pearson", method.Value); var pValue = result.Single(x => x.Name == "PValue"); Assert.Equal("True", pValue.Value); var significance = result.Single(x => x.Name == "Significance"); Assert.Equal("0.05", significance.Value); var testStatistic = result.Single(x => x.Name == "TestStatistic"); Assert.Equal("True", testStatistic.Value); var scatterplot = result.Single(x => x.Name == "Scatterplot"); Assert.Equal("False", scatterplot.Value); }
public async Task <IActionResult> CorrelationAnalysis(CorrelationAnalysisModel model, bool ignoreWarnings) { return(await RunAnalysis(model, ignoreWarnings)); }
public CorrelationAnalysisValidator(CorrelationAnalysisModel ca) : base(ca.DataTable) { caVariables = ca; }