Browse Source

Add Test's for Report-Model and Settings

reports
Peter Forstmeier 13 years ago
parent
commit
b24ef53028
  1. 20
      src/AddIns/Misc/ICSharpCode.Reporting.Tests/Factory/ReportingFactoryFixture.cs
  2. 17
      src/AddIns/Misc/ICSharpCode.Reporting.Tests/Model/LoadPlainModelFixture.cs
  3. 14
      src/AddIns/Misc/Reporting/Src/Globals/GlobalEnums.cs
  4. 4
      src/AddIns/Misc/Reporting/Src/Interfaces/IReportModel.cs
  5. 6
      src/AddIns/Misc/Reporting/Src/Items/ReportSettings.cs
  6. 19
      src/AddIns/Misc/Reporting/Src/ReportingFactory.cs

20
src/AddIns/Misc/ICSharpCode.Reporting.Tests/Factory/ReportingFactoryFixture.cs

@ -7,6 +7,9 @@ @@ -7,6 +7,9 @@
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.IO;
using System.Reflection;
using NUnit.Framework;
namespace ICSharpCode.Reporting.Tests.Factory
@ -14,10 +17,23 @@ namespace ICSharpCode.Reporting.Tests.Factory @@ -14,10 +17,23 @@ namespace ICSharpCode.Reporting.Tests.Factory
[TestFixture]
public class ReportingFactoryFixture
{
private const string nS = "ICSharpCode.Reporting.Tests.TestReports.";
private const string reportName = "PlainModel.srd";
private Stream stream;
[Test]
public void TestMethod()
public void CreateFormSheetBuilder()
{
var r = new ReportingFactory();
var x = r.CreatePageBuilder(stream);
Assert.That(x,Is.Null);
}
[SetUp]
public void LoadFromStream()
{
// TODO: Add your test.
System.Reflection.Assembly asm = Assembly.GetExecutingAssembly();
stream = asm.GetManifestResourceStream(nS + reportName);
}
}
}

17
src/AddIns/Misc/ICSharpCode.Reporting.Tests/Model/LoadPlainModelFixture.cs

@ -10,6 +10,7 @@ using System; @@ -10,6 +10,7 @@ using System;
using System.IO;
using System.Reflection;
using ICSharpCode.Reporting.Globals;
using NUnit.Framework;
namespace ICSharpCode.Reporting.Tests.Model
@ -32,7 +33,7 @@ namespace ICSharpCode.Reporting.Tests.Model @@ -32,7 +33,7 @@ namespace ICSharpCode.Reporting.Tests.Model
public void LoadPlainModel()
{
var rf = new ReportingFactory();
var model = rf.LoadReport(stream);
var model = rf.LoadReportModel(stream);
Assert.IsNotNull(model);
}
@ -41,7 +42,7 @@ namespace ICSharpCode.Reporting.Tests.Model @@ -41,7 +42,7 @@ namespace ICSharpCode.Reporting.Tests.Model
public void ReportSettingsFromPlainModel()
{
var rf = new ReportingFactory();
var model = rf.LoadReport(stream);
var model = rf.LoadReportModel(stream);
Assert.That(model.ReportSettings,Is.Not.Null);
}
@ -50,16 +51,24 @@ namespace ICSharpCode.Reporting.Tests.Model @@ -50,16 +51,24 @@ namespace ICSharpCode.Reporting.Tests.Model
public void ReportSettingsReportName()
{
var rf = new ReportingFactory();
var model = rf.LoadReport(stream);
var model = rf.LoadReportModel(stream);
Assert.That(model.ReportSettings.ReportName,Is.EqualTo(Globals.GlobalValues.DefaultReportName));
}
[Test]
public void ReportSettingsDataModelFormSheet()
{
var rf = new ReportingFactory();
var model = rf.LoadReportModel(stream);
Assert.That(model.ReportSettings.DataModel,Is.EqualTo(GlobalEnums.PushPullModel.FormSheet));
}
[Test]
public void ReportSettingsPageSize()
{
var rf = new ReportingFactory();
var model = rf.LoadReport(stream);
var model = rf.LoadReportModel(stream);
Assert.That(model.ReportSettings.PageSize,Is.EqualTo(Globals.GlobalValues.DefaultPageSize));
}

14
src/AddIns/Misc/Reporting/Src/Globals/GlobalEnums.cs

@ -13,7 +13,7 @@ namespace ICSharpCode.Reporting.Globals @@ -13,7 +13,7 @@ namespace ICSharpCode.Reporting.Globals
/// <summary>
/// Description of GlobalEnums.
/// </summary>
internal sealed class GlobalEnums
public class GlobalEnums
{
internal enum ReportSection {
ReportHeader,
@ -22,5 +22,17 @@ namespace ICSharpCode.Reporting.Globals @@ -22,5 +22,17 @@ namespace ICSharpCode.Reporting.Globals
ReportPageFooter,
ReportFooter
}
///<summary>Technics to get the data
/// Push : report get's a ready filld dataset or something tah implements IList
/// Pull : report has to fill data by themself
/// FormSheet : FormSheet report, just labels and images are allowed
/// </summary>
///
public enum PushPullModel {
PushData,
PullData,
FormSheet
}
}
}

4
src/AddIns/Misc/Reporting/Src/Interfaces/IReportModel.cs

@ -7,6 +7,7 @@ @@ -7,6 +7,7 @@
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using ICSharpCode.Reporting.Items;
namespace ICSharpCode.Reporting.Interfaces
{
@ -15,13 +16,14 @@ namespace ICSharpCode.Reporting.Interfaces @@ -15,13 +16,14 @@ namespace ICSharpCode.Reporting.Interfaces
/// </summary>
public interface IReportModel
{
ReportSettings ReportSettings {get;set;}
/*
BaseSection ReportHeader {get;}
BaseSection PageHeader {get;}
BaseSection DetailSection {get;}
BaseSection PageFooter {get;}
BaseSection ReportFooter {get;}
ReportSettings ReportSettings {get;set;}
GlobalEnums.PushPullModel DataModel {get;}
ReportSectionCollection SectionCollection {get;}
*/

6
src/AddIns/Misc/Reporting/Src/Items/ReportSettings.cs

@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
*/
using System;
using System.Drawing;
using ICSharpCode.Reporting.Globals;
namespace ICSharpCode.Reporting.Items
{
@ -34,7 +35,7 @@ namespace ICSharpCode.Reporting.Items @@ -34,7 +35,7 @@ namespace ICSharpCode.Reporting.Items
// this.DefaultFont = GlobalValues.DefaultFont;
// this.ReportType = GlobalEnums.ReportType.FormSheet;
//
// this.DataModel = GlobalEnums.PushPullModel.FormSheet;
this.DataModel = GlobalEnums.PushPullModel.FormSheet;
//
// this.CommandType = System.Data.CommandType.Text;
// this.ConnectionString = String.Empty;
@ -91,5 +92,8 @@ namespace ICSharpCode.Reporting.Items @@ -91,5 +92,8 @@ namespace ICSharpCode.Reporting.Items
// [Category("Page Settings")]
public bool Landscape {get;set;}
// [Category("Data")]
public GlobalEnums.PushPullModel DataModel {get;set;}
}
}

19
src/AddIns/Misc/Reporting/Src/ReportingFactory.cs

@ -7,11 +7,12 @@ @@ -7,11 +7,12 @@
* To change this template use Tools | Options | Coding | Edit Standard Headers.
*/
using System;
using System.Collections.Generic;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Xml;
using ICSharpCode.Reporting.Globals;
using ICSharpCode.Reporting.Interfaces;
using ICSharpCode.Reporting.Items;
using ICSharpCode.Reporting.Xml;
@ -28,13 +29,25 @@ namespace ICSharpCode.Reporting @@ -28,13 +29,25 @@ namespace ICSharpCode.Reporting
}
public IReportCreator CreatePageBuilder (Stream stream, IList list)
public IReportCreator CreatePageBuilder (Stream stream)
{
IReportModel reportModel = LoadReportModel (stream);
IReportCreator builder = null;
if (reportModel.ReportSettings.DataModel == GlobalEnums.PushPullModel.FormSheet) {
// builder = FormPageBuilder.CreateInstance(reportModel);
Console.WriteLine("aaaaaaaaaaaaaaaaa");
}
// else {
// CheckForParameters(reportModel,reportParameters);
// IDataManager dataMan = DataManagerFactory.CreateDataManager(reportModel,reportParameters);
// builder = DataPageBuilder.CreateInstance(reportModel, dataMan);
// }
return builder;
return null;
}
internal ReportModel LoadReport (Stream stream)
internal ReportModel LoadReportModel (Stream stream)
{
Console.WriteLine("ReportEngine:LoadReportModel_2");
var doc = new XmlDocument();

Loading…
Cancel
Save