|
|
@ -20,13 +20,14 @@ namespace ICSharpCode.Reporting.Test.Expressions.IntegrationTests |
|
|
|
Collection<ExportText> collection; |
|
|
|
Collection<ExportText> collection; |
|
|
|
CollectionDataSource dataSource; |
|
|
|
CollectionDataSource dataSource; |
|
|
|
ContributorCollection list; |
|
|
|
ContributorCollection list; |
|
|
|
ExpressionVisitor visitor; |
|
|
|
|
|
|
|
ReportSettings reportSettings; |
|
|
|
ReportSettings reportSettings; |
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
[Test] |
|
|
|
public void TestMethod() |
|
|
|
public void SumGroupedList() |
|
|
|
{ |
|
|
|
{ |
|
|
|
visitor = new ExpressionVisitor(reportSettings,dataSource.GroupedList); |
|
|
|
// visitor = new ExpressionVisitor(reportSettings,dataSource.GroupedList);
|
|
|
|
|
|
|
|
var visitor = new ExpressionVisitor (reportSettings); |
|
|
|
|
|
|
|
visitor.SetCurrentDataSource(dataSource.GroupedList); |
|
|
|
var script = "= sum('randomint')"; |
|
|
|
var script = "= sum('randomint')"; |
|
|
|
collection[0].Text = script; |
|
|
|
collection[0].Text = script; |
|
|
|
visitor.Visit(collection[0]); |
|
|
|
visitor.Visit(collection[0]); |
|
|
@ -35,6 +36,47 @@ namespace ICSharpCode.Reporting.Test.Expressions.IntegrationTests |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
|
|
|
|
public void SumOneGroup () { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var container = new ExportContainer(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var script = "= sum('randomint')"; |
|
|
|
|
|
|
|
collection[0].Text = script; |
|
|
|
|
|
|
|
container.ExportedItems.AddRange(collection); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// visitor = new ExpressionVisitor(reportSettings,dataSource.GroupedList);
|
|
|
|
|
|
|
|
var visitor = new ExpressionVisitor (reportSettings); |
|
|
|
|
|
|
|
visitor.SetCurrentDataSource(dataSource.GroupedList); |
|
|
|
|
|
|
|
var group = dataSource.GroupedList.FirstOrDefault(); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
visitor.SetCurrentDataSource(group); |
|
|
|
|
|
|
|
visitor.Visit(container); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var result = list.Where(k => k.GroupItem == group.Key.ToString()).Sum(x => x.RandomInt); |
|
|
|
|
|
|
|
Assert.That(Convert.ToDouble(collection[0].Text),Is.EqualTo(result)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[Test] |
|
|
|
|
|
|
|
public void SumAllGroups () { |
|
|
|
|
|
|
|
var container = new ExportContainer(); |
|
|
|
|
|
|
|
container.ExportedItems.AddRange(collection); |
|
|
|
|
|
|
|
// visitor = new ExpressionVisitor(reportSettings,dataSource.GroupedList);
|
|
|
|
|
|
|
|
var visitor = new ExpressionVisitor (reportSettings); |
|
|
|
|
|
|
|
visitor.SetCurrentDataSource(dataSource.GroupedList); |
|
|
|
|
|
|
|
foreach (var group in dataSource.GroupedList) { |
|
|
|
|
|
|
|
var script = "= sum('randomint')"; |
|
|
|
|
|
|
|
collection[0].Text = script; |
|
|
|
|
|
|
|
visitor.SetCurrentDataSource(group); |
|
|
|
|
|
|
|
visitor.Visit(container); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var result = list.Where(k => k.GroupItem == group.Key.ToString()).Sum(x => x.RandomInt); |
|
|
|
|
|
|
|
Assert.That(Convert.ToDouble(collection[0].Text),Is.EqualTo(result)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[SetUp] |
|
|
|
[SetUp] |
|
|
|
public void CreateExportlist() { |
|
|
|
public void CreateExportlist() { |
|
|
|
collection = new Collection<ExportText>(); |
|
|
|
collection = new Collection<ExportText>(); |
|
|
|