예제 #1
0
        public void PValueConversion(double originalValue, double convertedValue, PValueFormats pvalueFormat)
        {
            // Arrange
            var rg = new RegionGenerator {
                Value = convertedValue
            };

            using (var file = new TempFileCreator(rg))
            {
                // Act
                var parser = new BedParser()
                {
                    PValueFormat = pvalueFormat
                };
                var parsedData = parser.Parse(file.Path);

                // Assert
                Assert.True(parsedData.Chromosomes[rg.Chr].Strands[rg.Strand].Intervals[0].Value == originalValue);
            }
        }
예제 #2
0
        public void ReadParserConfig(
            byte chr,
            byte left,
            sbyte right,
            byte name,
            sbyte strand,
            sbyte summit,
            byte value,
            bool dropPeakIfInvalidValue,
            double defaultValue,
            PValueFormats pValueFormat,
            string culture)
        {
            // Arrange
            ParserConfig cols = new ParserConfig()
            {
                Chr                    = chr,
                Left                   = left,
                Right                  = right,
                Name                   = name,
                Strand                 = strand,
                Summit                 = summit,
                Value                  = value,
                DefaultValue           = defaultValue,
                PValueFormat           = pValueFormat,
                DropPeakIfInvalidValue = dropPeakIfInvalidValue,
                Culture                = culture
            };
            var path = Environment.CurrentDirectory + Path.DirectorySeparatorChar + "MSPCTests_" + new Random().NextDouble().ToString();

            using (StreamWriter w = new StreamWriter(path))
                w.WriteLine(JsonConvert.SerializeObject(cols));

            // Act
            ParserConfig parsedCols = ParserConfig.LoadFromJSON(path);

            File.Delete(path);

            // Assert
            Assert.True(parsedCols.Equals(cols));
        }
예제 #3
0
        public void PValueAssertion(double value, PValueFormats pvalueFormat, bool validate, bool expected)
        {
            // Arrange
            var rg = new RegionGenerator {
                Value = value
            };

            // Act
            using (var file = new TempFileCreator(rg))
            {
                var parser = new BedParser()
                {
                    PValueFormat   = pvalueFormat,
                    ValidatePValue = validate
                };
                var parsedData = parser.Parse(file.Path);

                // Assert
                Assert.True(parsedData.Chromosomes.Any() == expected);
            }
        }
예제 #4
0
 public ParserConfig()
 {
     DropPeakIfInvalidValue = true;
     DefaultValue           = 1E-8;
     PValueFormat           = PValueFormats.minus1_Log10_pValue;
 }