Browse Source

refactor test's for grouping

pull/1/head
peterforstmeier 15 years ago
parent
commit
bf25326b90
  1. 3
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ChildNavigator.cs
  2. 4
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/DataNavigator.cs
  3. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Interfaces/IDataNavigator.cs
  4. 70
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/DataManager/GroupListFixture.cs
  5. 178
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/DataManager/GroupTableFixture.cs
  6. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/ConcatFieldsFixture.cs
  7. 2
      src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/FieldReferenceFixture.cs

3
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/ChildNavigator.cs

@ -46,12 +46,13 @@ namespace ICSharpCode.Reports.Core @@ -46,12 +46,13 @@ namespace ICSharpCode.Reports.Core
}
/*
public int ChildListCount {
get {
throw new NotImplementedException();
}
}
*/
public bool IsSorted {
get {
throw new NotImplementedException();

4
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/DataManager/DataNavigator.cs

@ -114,13 +114,15 @@ namespace ICSharpCode.Reports.Core @@ -114,13 +114,15 @@ namespace ICSharpCode.Reports.Core
}
/*
public int ChildListCount
{
get {
return BuildChildList().Count;
}
}
*/
// at the moment only tables are working

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Project/Interfaces/IDataNavigator.cs

@ -33,7 +33,7 @@ using System.ComponentModel; @@ -33,7 +33,7 @@ using System.ComponentModel;
bool HasChildren {get;}
int ChildListCount {get;}
// int ChildListCount {get;}
void FillChild (ReportItemCollection collection);

70
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/DataManager/GroupListFixture.cs

@ -55,15 +55,81 @@ namespace ICSharpCode.Reports.Core.Test.DataManager @@ -55,15 +55,81 @@ namespace ICSharpCode.Reports.Core.Test.DataManager
public void Can_Read_Child_Count ()
{
var dataNav = PrepareStringGrouping();
while (dataNav.MoveNext())
while (dataNav.MoveNext())
{
Assert.That(dataNav.ChildListCount,Is.GreaterThan(0));
if (dataNav.HasChildren)
{
var childNavigator = dataNav.GetChildNavigator();
Assert.That(childNavigator.Count,Is.GreaterThan(0));
}
}
}
[Test]
public void Can_FillChild()
{
var dataNav = PrepareStringGrouping();
while (dataNav.MoveNext()) {
if (dataNav.HasChildren)
{
var childNavigator = dataNav.GetChildNavigator();
do
{
Assert.That(dataNav.HasChildren,Is.True);
// we know that current is a 'contributor'
Contributor c = dataNav.Current as Contributor;
string v2 = c.Last + " GroupVal :" + c.GroupItem;
Console.WriteLine(v2);
}
while (childNavigator.MoveNext());
}
}
}
#endregion
#region GroupbyDataTime
[Test]
public void DateTimeCan_FillChild()
{
var dataNav = PrepareDateTimeGrouping();
Console.WriteLine("start datetime");
while (dataNav.MoveNext()) {
if (dataNav.HasChildren) {
var childNavigator = dataNav.GetChildNavigator();
do
{
Assert.That(dataNav.HasChildren,Is.True);
// we know that current is a 'contributor'
Contributor c = dataNav.Current as Contributor;
string v2 = c.Last + " GroupVal :" + c.RandomDate;
Console.WriteLine(v2);
}
while (childNavigator.MoveNext());
}
}
}
#endregion
private IDataNavigator PrepareDateTimeGrouping ()
{
Console.WriteLine("PrepareDateTimeGrouping ()");
GroupColumn gc = new GroupColumn("RandomDate",1,ListSortDirection.Ascending);
ReportSettings rs = new ReportSettings();
rs.GroupColumnsCollection.Add(gc);
IDataManager dm = ICSharpCode.Reports.Core.DataManager.CreateInstance(this.contributorCollection,rs);
return dm.GetNavigator;
}
private IDataNavigator PrepareStringGrouping ()
{

178
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/DataManager/GroupTableFixture.cs

@ -56,146 +56,86 @@ namespace ICSharpCode.Reports.Core.Test.DataManager @@ -56,146 +56,86 @@ namespace ICSharpCode.Reports.Core.Test.DataManager
public void Can_Read_Child_Count ()
{
var dataNav = PrepareStringGrouping();
while (dataNav.MoveNext())
while (dataNav.MoveNext())
{
Assert.That(dataNav.ChildListCount,Is.GreaterThan(0));
if (dataNav.HasChildren)
{
var childNavigator = dataNav.GetChildNavigator();
Assert.That(childNavigator.Count,Is.GreaterThan(0));
}
}
}
#endregion
#region GroupbyDataTime
[Test]
public void DateTimeCan_FillChild()
public void Can_FillChild()
{
var dataNav = PrepareDateTimeGrouping();
Console.WriteLine("start datetime");
var dataNav = PrepareStringGrouping();
while (dataNav.MoveNext()) {
if (dataNav.HasChildren) {
Assert.That(dataNav.HasChildren,Is.True);
DataRow r = dataNav.Current as DataRow;
string v2 = r["last"].ToString() + " GroupVal :" + r[5].ToString();
Console.WriteLine(v2);
DateTimeChildList(dataNav);
if (dataNav.HasChildren)
{
var childNavigator = dataNav.GetChildNavigator();
do
{
Assert.That(dataNav.HasChildren,Is.True);
DataRow r = dataNav.Current as DataRow;
string v2 = r["last"].ToString() + " GroupVal :" + r[3].ToString();
Console.WriteLine(v2);
}
while (childNavigator.MoveNext());
}
}
}
[Test]
public void DataTimeCollection_Contains_IsGrouped_False()
{
var dataNav = PrepareDateTimeGrouping();
Assert.That(dataNav.IsGrouped == true);
}
[Test]
public void DataTime_Has_Children()
{
var dataNav = PrepareDateTimeGrouping();
while (dataNav.MoveNext()) {
Assert.That(dataNav.HasChildren,Is.True);
}
}
#endregion
#region Read-Fill Child List
#region GroupbyDataTime
[Test]
public void Can_FillChild()
public void DateTimeCan_FillChild()
{
var dataNav = PrepareStringGrouping();
var dataNav = PrepareDateTimeGrouping();
while (dataNav.MoveNext()) {
if (dataNav.HasChildren)
{
var n = dataNav.GetChildNavigator();
var childNavigator = dataNav.GetChildNavigator();
do
{
Assert.That(dataNav.HasChildren,Is.True);
DataRow r = dataNav.Current as DataRow;
string v2 = r["last"].ToString() + " GroupVal :" + r[3].ToString();
string v2 = r["last"].ToString() + " GroupVal :" + r[5].ToString();
Console.WriteLine(v2);
}
while (n.MoveNext());
while (childNavigator.MoveNext());
}
}
}
private void DateTimeChildList (IDataNavigator nav)
[Test]
public void DataTimeCollection_Contains_IsGrouped_False()
{
BaseDataItem first= new BaseDataItem("First");
BaseDataItem last = new BaseDataItem("Last");
BaseDataItem datetime = new BaseDataItem("RandomDate");
ReportItemCollection ric = new ReportItemCollection();
ric.Add(first);
ric.Add(last);
ric.Add(datetime);
/*
nav.SwitchGroup();
do {
nav.FillChild(ric);
foreach (BaseDataItem element in ric) {
Console.WriteLine("\t{0} - {1} ",element.ColumnName,element.DBValue);
}
}
while ( nav.ChildMoveNext());
*/
var dataNav = PrepareDateTimeGrouping();
Assert.That(dataNav.IsGrouped == true);
}
private void FillChildList (IDataNavigator nav)
[Test]
public void DataTime_Has_Children()
{
BaseDataItem first= new BaseDataItem("First");
BaseDataItem last = new BaseDataItem("Last");
ReportItemCollection ric = new ReportItemCollection();
ric.Add(first);
ric.Add(last);
/*
nav.SwitchGroup();
do {
nav.FillChild(ric);
foreach (BaseDataItem element in ric) {
Console.WriteLine("\t{0} - {1} ",element.ColumnName,element.DBValue);
}
var dataNav = PrepareDateTimeGrouping();
while (dataNav.MoveNext()) {
Assert.That(dataNav.HasChildren,Is.True);
}
while ( nav.ChildMoveNext());
*/
}
#endregion
#region Try make recursive with ChildNavigator
/*
public void Can_FillChild()
{
var dataNav = PrepareStringGrouping();
while (dataNav.MoveNext()) {
if (dataNav.HasChildren) {
Assert.That(dataNav.HasChildren,Is.True);
DataRow r = dataNav.Current as DataRow;
string v2 = r["last"].ToString() + " GroupVal :" + r[3].ToString();
Console.WriteLine(v2);
FillChildList(dataNav);
}
}
}
*/
[Test]
public void Can_Get_ChildNavigator ()
@ -212,25 +152,14 @@ namespace ICSharpCode.Reports.Core.Test.DataManager @@ -212,25 +152,14 @@ namespace ICSharpCode.Reports.Core.Test.DataManager
string v2 = r["last"].ToString() + " GroupVal :" + r[3].ToString() ;
Console.WriteLine(v2);
Assert.That (child,Is.Not.Null);
reccall(child);
RecursiveCall(child);
}
}
Console.WriteLine("End Recusive Version");
}
[Test]
public void RecursiveCall_Childs ()
{
var dataNav = PrepareStringGrouping();
dataNav.MoveNext();
Console.WriteLine("--------------start rec ------------");
reccall (dataNav);
Console.WriteLine("--------------end rec ------------");
}
private void reccall (IDataNavigator startNavigator)
private void RecursiveCall (IDataNavigator startNavigator)
{
do
{
@ -240,38 +169,13 @@ namespace ICSharpCode.Reports.Core.Test.DataManager @@ -240,38 +169,13 @@ namespace ICSharpCode.Reports.Core.Test.DataManager
if (startNavigator.HasChildren) {
IDataNavigator child = startNavigator.GetChildNavigator();
Console.WriteLine("header {0} - Child_Count:{1}",v1,child.Count);
reccall (child);
RecursiveCall (child);
}
} while (startNavigator.MoveNext());
}
private void reccall_1 (IDataNavigator startNavigator)
{
Console.WriteLine("start rec ");
do
{
DataRow r = startNavigator.Current as DataRow;
string v1 = r["last"].ToString() + " :" + r[3].ToString();
Console.WriteLine(v1);
if (startNavigator.HasChildren) {
IDataNavigator child = startNavigator.GetChildNavigator();
if (child.HasChildren) {
do {
Console.WriteLine ("children");
//reccall (child);
}
while (child.MoveNext()) ;
}
}
} while (startNavigator.MoveNext());
}
#endregion

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/ConcatFieldsFixture.cs

@ -62,7 +62,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests @@ -62,7 +62,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests
[Test]
// [Ignore]
[Ignore]
public void Unkown_ColumnName ()
{
const string expression = "=Fields!Unknown";

2
src/AddIns/Misc/Reports/ICSharpCode.Reports.Core/Test/ICSharpCode.Reports.Core.Test/ReportingLanguage/IntegrationTests/FieldReferenceFixture.cs

@ -33,7 +33,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests @@ -33,7 +33,7 @@ namespace ICSharpCode.Reports.Core.Test.ReportingLanguage.IntegrationTests
[Test]
[IgnoreAttribute]
// [IgnoreAttribute]
public void Can_Concat_Simple_FieldReference()
{
const string expression = "=Fields!Field1 + 'SharpDevelopReporting'";

Loading…
Cancel
Save