Browse Source

CQA OverviewReport.srd is running, this report can be used as an example to handle SectionEvents, useful to work with ReportItems at run time.

reports
Peter Forstmeier 12 years ago
parent
commit
b3946f3862
  1. 6
      SharpDevelop.Tests.sln
  2. 1
      src/AddIns/Analysis/CodeQuality/Gui/MainView.xaml.cs
  3. 32
      src/AddIns/Analysis/CodeQuality/Reporting/DependencyReport.cs
  4. 69
      src/AddIns/Analysis/CodeQuality/Reporting/OverviewReport.cs
  5. 2
      src/AddIns/Analysis/CodeQuality/Reporting/Overviewreport.srd
  6. 1
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/ICSharpCode.Reporting.csproj
  7. 6
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/Globals/GlobalEnums.cs
  8. 2
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/Interfaces/IReportContainer.cs
  9. 14
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/BasePageBuilder.cs
  10. 3
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/FormPageBuilder.cs
  11. 53
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/ReportSectionNames.cs
  12. 24
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/ReportingFactory.cs
  13. 1
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/Xml/MycroParser.cs
  14. 10
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/PageBuilder/BaseConvertFixture.cs
  15. 2
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/PageBuilder/PageLayoutFixture.cs
  16. 3
      src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/Reportingfactory/PushModelFixture.cs

6
SharpDevelop.Tests.sln

@ -1,7 +1,9 @@
 
Microsoft Visual Studio Solution File, Format Version 11.00 Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2010 # Visual Studio 2012
# SharpDevelop 5.0 # SharpDevelop 5.0
VisualStudioVersion = 12.0.20827.3
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Main", "Main", "{256F5C28-532C-44C0-8AB8-D8EC5E492E01}" Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Main", "Main", "{256F5C28-532C-44C0-8AB8-D8EC5E492E01}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker35", "src\Main\ICSharpCode.SharpDevelop.BuildWorker35\ICSharpCode.SharpDevelop.BuildWorker35.csproj", "{B5F54272-49F0-40DB-845A-8D837875D3BA}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker35", "src\Main\ICSharpCode.SharpDevelop.BuildWorker35\ICSharpCode.SharpDevelop.BuildWorker35.csproj", "{B5F54272-49F0-40DB-845A-8D837875D3BA}"

1
src/AddIns/Analysis/CodeQuality/Gui/MainView.xaml.cs

@ -97,7 +97,6 @@ namespace ICSharpCode.CodeQuality.Gui
void DependecyReport_Click(object sender, RoutedEventArgs e) void DependecyReport_Click(object sender, RoutedEventArgs e)
{ {
var dependencyReport = new DependencyReport(fileNames); var dependencyReport = new DependencyReport(fileNames);
var reportCreator = dependencyReport.Run(list); var reportCreator = dependencyReport.Run(list);
var previewViewModel = new PreviewViewModel(dependencyReport.ReportSettings,reportCreator.Pages); var previewViewModel = new PreviewViewModel(dependencyReport.ReportSettings,reportCreator.Pages);

32
src/AddIns/Analysis/CodeQuality/Reporting/DependencyReport.cs

@ -32,7 +32,7 @@ namespace ICSharpCode.CodeQuality.Reporting
/// </summary> /// </summary>
public class DependencyReport:BaseReport public class DependencyReport:BaseReport
{ {
private const string overviewReport = "DependencyReport.srd"; const string overviewReport = "DependencyReport.srd";
public DependencyReport(List<string> fileNames):base(fileNames) public DependencyReport(List<string> fileNames):base(fileNames)
{ {
@ -41,10 +41,8 @@ namespace ICSharpCode.CodeQuality.Reporting
public IReportCreator Run(ReadOnlyCollection<AssemblyNode> list) public IReportCreator Run(ReadOnlyCollection<AssemblyNode> list)
{ {
var newList = MakeList (list); var newList = MakeList (list);
var asm = Assembly.GetExecutingAssembly();
Assembly asm = Assembly.GetExecutingAssembly(); var stream = asm.GetManifestResourceStream("ICSharpCode.CodeQuality.Reporting.DependencyReport.srd");
System.IO.Stream stream = asm.GetManifestResourceStream("ICSharpCode.CodeQuality.Reporting.DependencyReport.srd");
var reportingFactory = new ReportingFactory(); var reportingFactory = new ReportingFactory();
var reportCreator = reportingFactory.ReportCreator (stream,newList); var reportCreator = reportingFactory.ReportCreator (stream,newList);
ReportSettings = reportingFactory.ReportModel.ReportSettings; ReportSettings = reportingFactory.ReportModel.ReportSettings;
@ -53,23 +51,21 @@ namespace ICSharpCode.CodeQuality.Reporting
} }
private List <DependencyViewModel> MakeList (ReadOnlyCollection<AssemblyNode> list) List <DependencyViewModel> MakeList (ReadOnlyCollection<AssemblyNode> list)
{ {
var newList = new List<DependencyViewModel>(); var newList = new List<DependencyViewModel>();
foreach (var baseNode in list) { foreach (var baseNode in list) {
foreach (var element in list) { foreach (var element in list) {
if (baseNode.Name != element.Name) { if (baseNode.Name != element.Name) {
var referenceCount = baseNode.GetUses(element);
if (referenceCount > 0) {
var referenceCount = baseNode.GetUses(element); newList.Add(new DependencyViewModel()
if (referenceCount > 0) { {
newList.Add(new DependencyViewModel() Node = baseNode,
{ References = element.Name,
Node = baseNode, ReferenceCount = referenceCount
References = element.Name, });
ReferenceCount = referenceCount }
});
}
} }
} }
} }
@ -78,7 +74,7 @@ namespace ICSharpCode.CodeQuality.Reporting
} }
internal class DependencyViewModel:ReportViewModel class DependencyViewModel:ReportViewModel
{ {
public DependencyViewModel() public DependencyViewModel()
{ {

69
src/AddIns/Analysis/CodeQuality/Reporting/OverviewReport.cs

@ -19,12 +19,14 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.ObjectModel; using System.Collections.ObjectModel;
using System.IO;
using System.Linq; using System.Linq;
using System.Reflection; using System.Reflection;
using ICSharpCode.NRefactory.Utils; using ICSharpCode.NRefactory.Utils;
using ICSharpCode.Reporting; using ICSharpCode.Reporting;
using ICSharpCode.Reporting.Interfaces; using ICSharpCode.Reporting.Interfaces;
using ICSharpCode.Reporting.Items;
using ICSharpCode.CodeQuality.Engine.Dom; using ICSharpCode.CodeQuality.Engine.Dom;
namespace ICSharpCode.CodeQuality.Reporting namespace ICSharpCode.CodeQuality.Reporting
@ -35,6 +37,7 @@ namespace ICSharpCode.CodeQuality.Reporting
public class OverviewReport:BaseReport public class OverviewReport:BaseReport
{ {
private const string overviewReport = "OverviewReport.srd"; private const string overviewReport = "OverviewReport.srd";
ReadOnlyCollection<AssemblyNode> list;
public OverviewReport(List<string> fileNames):base(fileNames) public OverviewReport(List<string> fileNames):base(fileNames)
{ {
@ -42,43 +45,69 @@ namespace ICSharpCode.CodeQuality.Reporting
public IReportCreator Run(ReadOnlyCollection<AssemblyNode> list) public IReportCreator Run(ReadOnlyCollection<AssemblyNode> list)
{ {
this.list = list;
var asm = Assembly.GetExecutingAssembly(); var asm = Assembly.GetExecutingAssembly();
var stream = asm.GetManifestResourceStream("ICSharpCode.CodeQuality.Reporting.Overviewreport.srd"); var stream = asm.GetManifestResourceStream("ICSharpCode.CodeQuality.Reporting.Overviewreport.srd");
var viewModelList = CreateViewModel(list);
var newList = from c in list
select new OverviewViewModel { Node = c};
var reportingFactory = new ReportingFactory(); var reportingFactory = new ReportingFactory();
var reportCreator = reportingFactory.ReportCreator (stream,newList); var reportCreator = reportingFactory.ReportCreator (stream,viewModelList);
ReportSettings = reportingFactory.ReportModel.ReportSettings; ReportSettings = reportingFactory.ReportModel.ReportSettings;
var reportParameters = new ParameterCollection(); // var reportParameters = new ParameterCollection();
reportParameters.Add(new BasicParameter ("param1",base.FileNames[0])); // reportParameters.Add(new BasicParameter ("param1",base.FileNames[0]));
reportParameters.Add(new BasicParameter ("param2",list.Count.ToString())); // reportParameters.Add(new BasicParameter ("param2",list.Count.ToString()));
//
ReportSettings.ParameterCollection.AddRange(reportParameters); // ReportSettings.ParameterCollection.AddRange(reportParameters);
reportCreator.SectionRendering += HandleSectionEvents;
reportCreator.BuildExportList(); reportCreator.BuildExportList();
return reportCreator; return reportCreator;
/* }
var model = ReportEngine.LoadReportModel(stream);
ReportSettings = model.ReportSettings;
static IEnumerable<OverviewViewModel> CreateViewModel(ReadOnlyCollection<AssemblyNode> list)
{
var newList = from c in list
select new OverviewViewModel {
Node = c
};
return newList;
}
void HandleSectionEvents(object sender, SectionEventArgs e)
{
var sectionName = e.Section.Name;
if (sectionName == ReportSectionNames.ReportHeader) {
var param1 = (BaseTextItem)e.Section.Items.FirstOrDefault(n => n.Name == "Param1");
FileInfo fi =new FileInfo(FileNames[0]);
// var s = fi..Directory + fi.Name;
param1.Text = fi.Name;
var param2 = (BaseTextItem)e.Section.Items.FirstOrDefault(n => n.Name == "Param2");
param2.Text = list.Count.ToString();
}
IReportCreator creator = ReportEngine.CreatePageBuilder(model,r.ToList(),p); else if (sectionName == ReportSectionNames.ReportPageHeader) {
creator.BuildExportList(); Console.WriteLine("PushPrinting :" +ReportSectionNames .ReportPageHeader);
return creator; }
*/
return null; else if (sectionName == ReportSectionNames.ReportDetail){
} // Console.WriteLine("PushPrinting :" + ReportSectionNames.ReportDetail);
}
else if (sectionName == ReportSectionNames.ReportPageFooter){
// Console.WriteLine("PushPrinting :" + ReportSectionNames.ReportPageFooter);
}
else if (sectionName == ReportSectionNames.ReportFooter){
// Console.WriteLine("PushPrinting :" + ReportSectionNames.ReportFooter);
}
}
} }
internal class OverviewViewModel:ReportViewModel class OverviewViewModel:ReportViewModel
{ {
public OverviewViewModel () public OverviewViewModel ()
{ {

2
src/AddIns/Analysis/CodeQuality/Reporting/Overviewreport.srd

@ -96,7 +96,7 @@
<DrawBorder>False</DrawBorder> <DrawBorder>False</DrawBorder>
<FrameColor>Black</FrameColor> <FrameColor>Black</FrameColor>
<ForeColor>ControlText</ForeColor> <ForeColor>ControlText</ForeColor>
<Name>BaseTextItem2147483639</Name> <Name>Param2</Name>
</BaseTextItem> </BaseTextItem>
<BaseTextItem> <BaseTextItem>
<Location>27, 118</Location> <Location>27, 118</Location>

1
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/ICSharpCode.Reporting.csproj

@ -172,6 +172,7 @@
<Compile Include="Src\Pdf\PdfHelper.cs" /> <Compile Include="Src\Pdf\PdfHelper.cs" />
<Compile Include="Src\Pdf\PdfVisitor.cs" /> <Compile Include="Src\Pdf\PdfVisitor.cs" />
<Compile Include="Src\ReportingFactory.cs" /> <Compile Include="Src\ReportingFactory.cs" />
<Compile Include="Src\ReportSectionNames.cs" />
<Compile Include="Src\Wpf\PreviewViewModel.cs" /> <Compile Include="Src\Wpf\PreviewViewModel.cs" />
<Compile Include="Src\Wpf\Visitor\CanvasExtension.cs" /> <Compile Include="Src\Wpf\Visitor\CanvasExtension.cs" />
<Compile Include="Src\Wpf\Visitor\CanvasHelper.cs" /> <Compile Include="Src\Wpf\Visitor\CanvasHelper.cs" />

6
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/Globals/GlobalEnums.cs

@ -25,9 +25,9 @@ namespace ICSharpCode.Reporting.Globals
/// </summary> /// </summary>
public sealed class GlobalEnums public sealed class GlobalEnums
{ {
private GlobalEnums() { GlobalEnums() {
} }
/*
public enum ReportSection { public enum ReportSection {
ReportHeader, ReportHeader,
ReportPageHeader, ReportPageHeader,
@ -35,7 +35,7 @@ namespace ICSharpCode.Reporting.Globals
ReportPageFooter, ReportPageFooter,
ReportFooter ReportFooter
} }
*/
///<summary>Technics to get the data ///<summary>Technics to get the data
/// Push : report get's a ready filld dataset or something tah implements IList /// Push : report get's a ready filld dataset or something tah implements IList
/// Pull : report has to fill data by themself /// Pull : report has to fill data by themself

2
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/Interfaces/IReportContainer.cs

@ -18,8 +18,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using ICSharpCode.Reporting.Interfaces.Export;
using ICSharpCode.Reporting.Items;
namespace ICSharpCode.Reporting.Interfaces namespace ICSharpCode.Reporting.Interfaces
{ {

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

@ -40,7 +40,7 @@ namespace ICSharpCode.Reporting.PageBuilder
public class BasePageBuilder:IReportCreator public class BasePageBuilder:IReportCreator
{ {
public event EventHandler<SectionEventArgs> SectionRendering; public event EventHandler<SectionEventArgs> SectionRendering;
public BasePageBuilder(IReportModel reportModel){ public BasePageBuilder(IReportModel reportModel){
if (reportModel == null) { if (reportModel == null) {
@ -55,20 +55,14 @@ public event EventHandler<SectionEventArgs> SectionRendering;
void BuildReportHeader(){ void BuildReportHeader(){
if (Pages.Count == 0) { if (Pages.Count == 0) {
var sea = new SectionEventArgs(ReportModel.ReportHeader); var header = CreateSection(ReportModel.ReportHeader,CurrentLocation);
Raise<SectionEventArgs> (SectionRendering,this,sea);
var header = CreateSection(sea.Section,CurrentLocation);
var r = new Rectangle(header.Location.X, header.Location.Y, header.Size.Width, header.Size.Height); var r = new Rectangle(header.Location.X, header.Location.Y, header.Size.Width, header.Size.Height);
CurrentLocation = new Point (ReportModel.ReportSettings.LeftMargin,r.Bottom + 1); CurrentLocation = new Point (ReportModel.ReportSettings.LeftMargin,r.Bottom + 1);
AddSectionToPage(header); AddSectionToPage(header);
Raise<SectionEventArgs> (SectionRendering,this,new SectionEventArgs(ReportModel.ReportHeader));
} }
} }
protected static void Raise <T>(EventHandler<T> handler, object sender, T e) static void Raise <T>(EventHandler<T> handler, object sender, T e)
where T: EventArgs{ where T: EventArgs{
// Copy to a temporary variable to be thread-safe. // Copy to a temporary variable to be thread-safe.
EventHandler<T> temp = handler; EventHandler<T> temp = handler;
@ -129,6 +123,8 @@ public event EventHandler<SectionEventArgs> SectionRendering;
#endregion #endregion
protected IExportContainer CreateSection(IReportContainer container,Point location){ protected IExportContainer CreateSection(IReportContainer container,Point location){
var sea = new SectionEventArgs(container);
Raise<SectionEventArgs> (SectionRendering,this,sea);
var containerConverter = new ContainerConverter(location); var containerConverter = new ContainerConverter(location);
var convertedContainer = containerConverter.ConvertToExportContainer(container); var convertedContainer = containerConverter.ConvertToExportContainer(container);

3
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/PageBuilder/FormPageBuilder.cs

@ -38,7 +38,8 @@ namespace ICSharpCode.Reporting.PageBuilder
SetupExpressionRunner(ReportModel.ReportSettings,null); SetupExpressionRunner(ReportModel.ReportSettings,null);
base.BuildExportList(); base.BuildExportList();
BuildDetail(); BuildDetail();
base.AddPage(CurrentPage); BuildReportFooter();
AddPage(CurrentPage);
UpdatePageInfo(); UpdatePageInfo();
// RunDebugVisitor(); // RunDebugVisitor();
ExpressionRunner.Run(); ExpressionRunner.Run();

53
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/ReportSectionNames.cs

@ -0,0 +1,53 @@
/*
* Created by SharpDevelop.
* User: Peter Forstmeier
* Date: 08.02.2014
* Time: 18:30
*
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
namespace ICSharpCode.Reporting
{
/// <summary>
/// Description of ReportSectionNames.
/// </summary>
///
public enum ReportSection {
ReportHeader,
ReportPageHeader,
ReportDetail,
ReportPageFooter,
ReportFooter
}
public static class ReportSectionNames
{
public static string ReportHeader
{
get{ return ReportSection.ReportHeader.ToString();}
}
public static string ReportPageHeader
{
get{ return ReportSection.ReportPageHeader.ToString();}
}
public static string ReportDetail
{
get { return ReportSection.ReportDetail.ToString();}
}
public static string ReportPageFooter
{
get { return ReportSection.ReportPageFooter.ToString();}
}
public static string ReportFooter
{
get{ return ReportSection.ReportFooter.ToString();}
}
}
}

24
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/ReportingFactory.cs

@ -31,29 +31,16 @@ namespace ICSharpCode.Reporting
/// <summary> /// <summary>
/// Description of Reporting. /// Description of Reporting.
/// </summary> /// </summary>
public class ReportingFactory public class ReportingFactory
{ {
void Method(object s,EventArgs e)
{
Console.WriteLine("Got Event {0}",s.ToString());
}
public IReportCreator ReportCreator (Stream stream,IEnumerable list) public IReportCreator ReportCreator (Stream stream,IEnumerable list)
{ {
ReportModel = LoadReportModel (stream); ReportModel = LoadReportModel (stream);
var builder = new DataPageBuilder(ReportModel,list ); var builder = new DataPageBuilder(ReportModel,list );
return builder;
}
[Obsolete("Use public IReportCreator ReportCreator (Stream stream,IEnumerable list")]
public IReportCreator ReportCreator (Stream stream,Type listType,IEnumerable list)
{
ReportModel = LoadReportModel (stream);
IReportCreator builder = null;
builder = new DataPageBuilder(ReportModel,list );
return builder; return builder;
} }
@ -62,7 +49,6 @@ namespace ICSharpCode.Reporting
{ {
ReportModel = LoadReportModel (stream); ReportModel = LoadReportModel (stream);
var builder = new FormPageBuilder(ReportModel); var builder = new FormPageBuilder(ReportModel);
builder.SectionRendering += (sender, e) => Method(sender, e);
return builder; return builder;
} }
@ -82,18 +68,16 @@ namespace ICSharpCode.Reporting
return ReportModel; return ReportModel;
} }
static ReportModel LoadModel(XmlDocument doc) static ReportModel LoadModel(XmlDocument doc)
{ {
var loader = new ModelLoader(); var loader = new ModelLoader();
object root = loader.Load(doc.DocumentElement); object root = loader.Load(doc.DocumentElement);
var model = root as ReportModel; var model = root as ReportModel;
if (model == null) {
// throw new IllegalFileFormatException("ReportModel");
}
return model; return model;
} }
public ReportModel ReportModel {get;private set;} public ReportModel ReportModel {get;private set;}
} }
} }

1
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Src/Xml/MycroParser.cs

@ -221,7 +221,6 @@ namespace ICSharpCode.Reporting.Xml
static void SetPropertyToString(object obj, PropertyInfo pi, string value) static void SetPropertyToString(object obj, PropertyInfo pi, string value)
{ {
Console.WriteLine("MP - SetPropertyToString {0} - {1}",pi.Name,value.ToString());
// it's string, so use a type converter. // it's string, so use a type converter.
TypeConverter tc=TypeDescriptor.GetConverter(pi.PropertyType); TypeConverter tc=TypeDescriptor.GetConverter(pi.PropertyType);
try try

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

@ -58,13 +58,15 @@ namespace ICSharpCode.Reporting.Test.PageBuilder
[Test] [Test]
public void testeventt() { public void SectionRenderingCalledFromEachSection() {
int i = 0;
reportCreator.SectionRendering += (sender, e) => { reportCreator.SectionRendering += (sender, e) => {
Console.WriteLine("Hi with from {0} with {1}",e.ToString(),e.Section.Name); // Console.WriteLine("Hi with from {0} with {1}",e.ToString(),e.Section.Name);
((BaseTextItem)e.Section.Items[0]).Text = "hallo"; i ++;
}; };
reportCreator.BuildExportList(); reportCreator.BuildExportList();
var p = reportCreator.Pages[0];
// Assert.That(i,Is.EqualTo(p.ExportedItems.Count -1));
} }
[SetUp] [SetUp]

2
src/AddIns/Misc/Reporting/ICSharpCode.Reporting/Test/ICSharpCode.Reporting.Test/src/PageBuilder/PageLayoutFixture.cs

@ -57,8 +57,6 @@ namespace ICSharpCode.Reporting.Test.PageBuilder
reportCreator.BuildExportList(); reportCreator.BuildExportList();
foreach (var item in reportCreator.Pages[0].ExportedItems) { foreach (var item in reportCreator.Pages[0].ExportedItems) {
var p2 = new Point(item.Location.X,item.Location.Y); var p2 = new Point(item.Location.X,item.Location.Y);
Console.WriteLine("{0} - {1} - {2}- <{3}>",p2,item.Size.Height,item.Name,item.DisplayRectangle);
if (item.Name != "ReportFooter") { if (item.Name != "ReportFooter") {
Assert.That(p2.Y,Is.GreaterThan(referencePoint.Y),item.Name); Assert.That(p2.Y,Is.GreaterThan(referencePoint.Y),item.Name);
var t = referenceRect.IntersectsWith(item.DisplayRectangle); var t = referenceRect.IntersectsWith(item.DisplayRectangle);

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

@ -128,9 +128,6 @@ namespace ICSharpCode.Reporting.Test.Reportingfactory
reportCreator.BuildExportList(); reportCreator.BuildExportList();
var exporteditems = reportCreator.Pages[0].ExportedItems; var exporteditems = reportCreator.Pages[0].ExportedItems;
for (int i = 1; i < exporteditems.Count -1; i++) { for (int i = 1; i < exporteditems.Count -1; i++) {
Console.WriteLine(" {0} - {1} - {2}",exporteditems[i-1].DisplayRectangle.Bottom,exporteditems[i].Location.Y,exporteditems[i].Name);
// Assert.That(exporteditems[i].Location.Y,Is.GreaterThan(exporteditems[i-1].DisplayRectangle.Bottom));
Assert.That(exporteditems[i].Location.Y,Is.EqualTo(exporteditems[i-1].DisplayRectangle.Bottom +1)); Assert.That(exporteditems[i].Location.Y,Is.EqualTo(exporteditems[i-1].DisplayRectangle.Bottom +1));
} }
} }

Loading…
Cancel
Save