public GivenAMeasureConverterRaw() { metric = new Metric(); metric.MetricKey = "key"; this.mockMeasureAggregator = new Mock <IMeasureAggregator <string> >(); this.mockMeasureAggregator.Setup(m => m.HasValue(It.IsAny <DailyCodeChurn>())). Returns((DailyCodeChurn d) => d.FileName.Length > 0); this.mockMeasureAggregator.Setup(m => m.GetValueForNewMeasure(It.IsAny <DailyCodeChurn>())). Returns((DailyCodeChurn d) => d.FileName); this.mockMeasureAggregator.Setup(m => m.GetValueForExistingMeasure(It.IsAny <DailyCodeChurn>(), It.IsAny <Measure <string> >())). Returns((DailyCodeChurn d, Measure <string> existingMeasure) => d.FileName + "," + existingMeasure.Value); this.mockMeasureAggregatorProject = new Mock <IMeasureAggregatorProject <string> >(); this.mockMeasureAggregatorProject.Setup(m => m.HasValue(It.IsAny <DailyCodeChurn>())). Returns((DailyCodeChurn d) => d.FileName.Length > 0); this.mockMeasureAggregatorProject.Setup(m => m.GetValueForNewMeasure(It.IsAny <DailyCodeChurn>())). Returns((DailyCodeChurn d) => d.FileName); this.mockMeasureAggregatorProject.Setup(m => m.GetValueForExistingMeasure(It.IsAny <DailyCodeChurn>(), It.IsAny <Measure <string> >())). Returns((DailyCodeChurn d, Measure <string> existingMeasure) => d.FileName + "," + existingMeasure.Value); this.mockMeasureAggregatorProject.Setup(m => m.GetValueForProjectMeasure()). Returns("FileName"); this.measureConverter = new MeasureConverterRaw <string>(metric, mockMeasureAggregator.Object, "//prefix/"); }
public void WhenConvertingNoProjectMeausreShouldAppendProjectMeasure() { this.measureConverter = new MeasureConverterRaw <string>(metric, mockMeasureAggregatorProject.Object, "//prefix/"); var measures = new SonarMeasuresJson(); this.measureConverter.ProcessProjectMeasure(measures); Assert.NotEmpty(measures.MeasuresProject.Where(m => m.MetricKey == "key")); }
public void WhenConvertingWithinRangeAndNoFilePrefixShouldConvert() { this.measureConverter = new MeasureConverterRaw <string>(metric, mockMeasureAggregator.Object, null); var dailyCodeChurn = new DailyCodeChurn() { Timestamp = "2018/09/17 00:00:00", FileName = "//prefix/file" }; var measures = new SonarMeasuresJson(); this.measureConverter.ProcessFileMeasure(dailyCodeChurn, measures); Assert.Equal("//prefix/file", measures.MeasuresRaw.Where(m => m.MetricKey == "key").Single().File); }
public void WhenConvertingANonProjectAggregatorWithProjectMeausreShouldDoNothing() { this.measureConverter = new MeasureConverterRaw <string>(metric, mockMeasureAggregator.Object, "//prefix/"); var dailyCodeChurn = new DailyCodeChurn() { Timestamp = "2018/09/17 00:00:00", FileName = "file1" }; var measures = new SonarMeasuresJson(); this.measureConverter.ProcessProjectMeasure(measures); Assert.Empty(measures.MeasuresProject.Where(m => m.MetricKey == "key")); }