Browse Source

Cleanup test's

reports
Peter Forstmeier 13 years ago
parent
commit
4469614665
  1. 19
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/BasePageBuilder.cs
  2. 30
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/Converter/ContainerConverter.cs
  3. 4
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/Converter/IContainerConverter.cs
  4. 33
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/DataPageBuilder.cs
  5. 2
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/MeasureArrange/ContainerArrangeStrategyFixture.cs
  6. 7
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/Model/Report_FromListFixture.cs
  7. 1
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/PageBuilder/BaseConvertFixture.cs
  8. 1
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/Reportingfactory/PushModelFixture.cs

19
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/BasePageBuilder.cs

@ -115,10 +115,12 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -115,10 +115,12 @@ namespace ICSharpCode.Reporting.PageBuilder
{
var containerConverter = new ContainerConverter(Graphics, location);
var convertedContainer = containerConverter.Convert(container);
var list = containerConverter.CreateConvertedList(container,convertedContainer);
convertedContainer.ExportedItems.AddRange(list);
containerConverter.Measure(convertedContainer);
containerConverter.ArrangeContainer(convertedContainer);
convertedContainer.DesiredSize = MeasureElement(convertedContainer);
ArrangeContainer(convertedContainer);
return convertedContainer;
}
@ -130,6 +132,19 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -130,6 +132,19 @@ namespace ICSharpCode.Reporting.PageBuilder
}
protected Size MeasureElement (IExportColumn element) {
var measureStrategy = element.MeasurementStrategy();
return measureStrategy.Measure(element, Graphics);
}
protected void ArrangeContainer(IExportContainer exportContainer)
{
var exportArrange = exportContainer.GetArrangeStrategy();
exportArrange.Arrange(exportContainer);
}
IPageInfo CreatePageInfo()
{
var pi = new PageInfo();

30
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/Converter/ContainerConverter.cs

@ -36,26 +36,28 @@ namespace ICSharpCode.Reporting.PageBuilder.Converter @@ -36,26 +36,28 @@ namespace ICSharpCode.Reporting.PageBuilder.Converter
{
var exportContainer = (ExportContainer)reportContainer.CreateExportColumn();
exportContainer.Location = CurrentLocation;
exportContainer.DesiredSize = Measure(exportContainer);
// exportContainer.DesiredSize = Measure(exportContainer);
return exportContainer;
}
public List<IExportColumn> CreateConvertedList(IReportContainer reportContainer,IExportContainer exportContainer,Point position){
public List<IExportColumn> CreateConvertedList(IReportContainer reportContainer,
IExportContainer exportContainer,
Point position){
var itemsList = new List<IExportColumn>();
foreach (var element in reportContainer.Items) {
var exportColumn = ExportColumnFactory.CreateItem(element);
foreach (var item in reportContainer.Items) {
var exportColumn = ExportColumnFactory.CreateItem(item);
exportColumn.Parent = exportContainer;
exportColumn.Location = new Point(element.Location.X,element.Location.Y + position.Y);
// exportColumn.Location = new Point(element.Location.X,element.Location.Y + position.Y);
exportColumn.Location = new Point(item.Location.X,item.Location.Y + position.Y);
itemsList.Add(exportColumn);
}
return itemsList;
}
public List<IExportColumn> CreateConvertedList(IReportContainer reportContainer,IExportContainer exportContainer)
{
public List<IExportColumn> CreateConvertedList(IReportContainer reportContainer
,IExportContainer exportContainer){
// Console.WriteLine("CreateConvertedList {0}",reportContainer.Name);
var itemsList = new List<IExportColumn>();
foreach (var element in reportContainer.Items) {
@ -69,20 +71,14 @@ namespace ICSharpCode.Reporting.PageBuilder.Converter @@ -69,20 +71,14 @@ namespace ICSharpCode.Reporting.PageBuilder.Converter
return itemsList;
}
public Size Measure(IExportColumn element)
{
// Console.WriteLine("Measure {0}",element.Name);
var measureStrategy = element.MeasurementStrategy();
return measureStrategy.Measure(element, Graphics);
}
/*
public void ArrangeContainer(IExportContainer exportContainer)
{
// Console.WriteLine("ArrangeContainer {0}",exportContainer.Name);
Console.WriteLine("ArrangeContainer {0}",exportContainer.Name);
var exportArrange = exportContainer.GetArrangeStrategy();
exportArrange.Arrange(exportContainer);
}
*/
internal IReportContainer Container { get; private set; }

4
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/Converter/IContainerConverter.cs

@ -20,7 +20,7 @@ namespace ICSharpCode.Reporting.PageBuilder.Converter @@ -20,7 +20,7 @@ namespace ICSharpCode.Reporting.PageBuilder.Converter
IExportContainer Convert(IReportContainer reportContainer);
List<IExportColumn> CreateConvertedList(IReportContainer reportContainer,IExportContainer exportContainer);
List<IExportColumn> CreateConvertedList(IReportContainer reportContainer,IExportContainer exportContainer,Point position);
Size Measure(IExportColumn element);
void ArrangeContainer(IExportContainer exportContainer);
// Size Measure(IExportColumn element);
// void ArrangeContainer(IExportContainer exportContainer);
}
}

33
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/DataPageBuilder.cs

@ -46,7 +46,7 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -46,7 +46,7 @@ namespace ICSharpCode.Reporting.PageBuilder
void aaBuildDetail()
{
Container = ReportModel.DetailSection;
CurrentSection = ReportModel.DetailSection;
var collectionSource = new CollectionSource(List,ElementType,ReportModel.ReportSettings);
IExportContainer detail = null;
if(collectionSource.Count > 0) {
@ -60,7 +60,7 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -60,7 +60,7 @@ namespace ICSharpCode.Reporting.PageBuilder
do {
collectionSource.Fill(Container.Items);
collectionSource.Fill(CurrentSection.Items);
var convertedItems = converter.CreateConvertedList(ReportModel.DetailSection,detail,position);
if (PageFull(convertedItems)) {
detail.ExportedItems.AddRange(convertedItems);
@ -77,7 +77,7 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -77,7 +77,7 @@ namespace ICSharpCode.Reporting.PageBuilder
} else {
detail.ExportedItems.AddRange(convertedItems);
MeasureAndArrangeContainer(converter,detail);
position = new Point(Container.Location.Y,position.Y + Container.Size.Height);
position = new Point(CurrentSection.Location.Y,position.Y + CurrentSection.Size.Height);
}
}
@ -96,7 +96,7 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -96,7 +96,7 @@ namespace ICSharpCode.Reporting.PageBuilder
void BuildDetail()
{
Container = ReportModel.DetailSection;
CurrentSection = ReportModel.DetailSection;
var collectionSource = new CollectionSource(List,ElementType,ReportModel.ReportSettings);
IExportContainer detail = null;
if(collectionSource.Count > 0) {
@ -108,9 +108,9 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -108,9 +108,9 @@ namespace ICSharpCode.Reporting.PageBuilder
do {
var row = CreateContainerIfNotExist(Container,detail, position);
collectionSource.Fill(Container.Items);
var row = CreateContainerIfNotExist(CurrentSection,detail, position);
collectionSource.Fill(CurrentSection.Items);
//var convertedItems = converter.CreateConvertedList(ReportModel.DetailSection,row);
var convertedItems = converter.CreateConvertedList(ReportModel.DetailSection,row,position);
MeasureAndArrangeContainer(converter,row);
row.ExportedItems.AddRange(convertedItems);
@ -123,13 +123,13 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -123,13 +123,13 @@ namespace ICSharpCode.Reporting.PageBuilder
detail = CreateDetail(DetailStart);
CurrentLocation = DetailStart;
row = CreateContainerIfNotExist(Container,detail,position);
row = CreateContainerIfNotExist(CurrentSection,detail,position);
var recreate = converter.CreateConvertedList(ReportModel.DetailSection,row,position);
MeasureAndArrangeContainer(converter,row);
row.ExportedItems.AddRange(recreate);
}
detail.ExportedItems.Add(row);
position = new Point(Container.Location.Y,position.Y + Container.Size.Height);
position = new Point(CurrentSection.Location.Y,position.Y + CurrentSection.Size.Height);
}
while (collectionSource.MoveNext());
@ -147,13 +147,17 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -147,13 +147,17 @@ namespace ICSharpCode.Reporting.PageBuilder
IExportContainer CreateContainerIfNotExist(IReportContainer container, IExportContainer parent, Point position)
{
var row = CreateContainerForSection(position);
var isContainer = container.Items[0] is IReportContainer;
if (!isContainer) {
var row = CreateContainerForSection(position);
row.Name = "Row";
row.Parent = parent;
row.Location = new Point(50, position.Y);
row.Size = new Size(400, 40);
row.BackColor = Color.Green;
return row;
}
return CreateContainerForSection(container.Items[0].Location);
}
@ -173,14 +177,14 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -173,14 +177,14 @@ namespace ICSharpCode.Reporting.PageBuilder
void MeasureAndArrangeContainer(IContainerConverter converter,IExportContainer container)
{
converter.Measure(container);
converter.ArrangeContainer(container);
container.DesiredSize = MeasureElement(container);
ArrangeContainer(container);
}
IExportContainer CreateContainerForSection(Point location )
{
var detail = (ExportContainer)Container.CreateExportColumn();
var detail = (ExportContainer)CurrentSection.CreateExportColumn();
detail.Location = location;
return detail;
}
@ -196,7 +200,8 @@ namespace ICSharpCode.Reporting.PageBuilder @@ -196,7 +200,8 @@ namespace ICSharpCode.Reporting.PageBuilder
}
internal IReportContainer Container { get; private set; }
// internal IReportContainer Container { get; private set; }
internal IReportContainer CurrentSection { get; private set; }
public IEnumerable List {get; private set;}

2
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/MeasureArrange/ContainerArrangeStrategyFixture.cs

@ -32,10 +32,10 @@ namespace ICSharpCode.Reporting.Test.MeasureArrange @@ -32,10 +32,10 @@ namespace ICSharpCode.Reporting.Test.MeasureArrange
}
[Test]
[Ignore]
public void ItemAtTopOfContainer() {
var container = CreateContainer();
container.ExportedItems[0].Location = container.Location;
Measure(container);
strategy.Arrange(container);
var containerRect = new Rectangle(container.Location,container.DesiredSize);

7
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/Model/Report_FromListFixture.cs

@ -16,23 +16,26 @@ namespace ICSharpCode.Reporting.Test.Model @@ -16,23 +16,26 @@ namespace ICSharpCode.Reporting.Test.Model
private ReportModel model;
[Test]
public void ReportHeaderOneItem () {
public void ReportHeaderContainsOneItem () {
var section = model.ReportHeader;
Assert.That(section.Items.Count,Is.EqualTo(1));
}
[Test]
public void PageHeaderOneItem () {
public void PageHeaderContainsOneItem () {
var section = model.ReportHeader;
Assert.That(section.Items.Count,Is.EqualTo(1));
}
[Test]
public void DetailContainsOneDataItem() {
var section = model.DetailSection;
Assert.That(section.Items.Count,Is.EqualTo(1));
}
[SetUp]
public void LoadModelFromStream()
{

1
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/PageBuilder/BaseConvertFixture.cs

@ -37,7 +37,6 @@ namespace ICSharpCode.Reporting.Test.PageBuilder @@ -37,7 +37,6 @@ namespace ICSharpCode.Reporting.Test.PageBuilder
[Test]
[IgnoreAttribute]
public void ExportContainerContainsExportText() {
reportCreator.BuildExportList();
var page = reportCreator.Pages[0];

1
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/Reportingfactory/PushModelFixture.cs

@ -74,6 +74,7 @@ namespace ICSharpCode.Reporting.Test.Reportingfactory @@ -74,6 +74,7 @@ namespace ICSharpCode.Reporting.Test.Reportingfactory
Assert.That(result,Is.AssignableFrom(typeof(ExportContainer)));
}
[Test]
public void ParentOfSectionsIsPage() {
reportCreator.BuildExportList();

Loading…
Cancel
Save