Update of /cvsroot/adapdev/Adapdev/src/Adapdev.Cache.Tests/Scavengers
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19977/src/Adapdev.Cache.Tests/Scavengers
Added Files:
AbsoluteExpirationScavengerTest.cs BaseScavengerTest.cs
GreaterThanOrdinalScavengerTest.cs
SlidingExpirationScavengerTest.cs
Log Message:
Reposting to the repository after it got hosed
--- NEW FILE: SlidingExpirationScavengerTest.cs ---
using System;
using Adapdev.Cache;
using Adapdev.Cache.Scavengers;
using Adapdev.Mock;
using NUnit.Framework;
namespace Adapdev.Cache.Scavengers.Tests
{
/// <summary>
/// Summary description for DateScavenger.
/// </summary>
///
[TestFixture]
public class SlidingExpirationScavengerTest : BaseScavengerTest
{
public override ICache GetCache()
{
return new MutableInMemoryCache();
}
[Test]
public void ScavengeAndRemove()
{
IScavenger scavenger = new SlidingExpirationScavenger(new TimeSpan(0,0,0,1));
Assert.AreEqual(100, this.cache.Count);
System.Threading.Thread.Sleep(2000);
this.cache.Scavenge(scavenger);
Assert.AreEqual(0, this.cache.Count, "All entries should have been removed");
}
[Test]
public void ScavengeAndLeave()
{
IScavenger scavenger = new SlidingExpirationScavenger(new TimeSpan(1,0,0,0));
Assert.AreEqual(100, this.cache.Count);
this.cache.Scavenge(scavenger);
Assert.AreEqual(100, this.cache.Count, "No entries should have been removed");
}
}
}
--- NEW FILE: GreaterThanOrdinalScavengerTest.cs ---
using System;
using Adapdev.Cache;
using Adapdev.Cache.Scavengers;
using Adapdev.Mock;
using NUnit.Framework;
namespace Adapdev.Cache.Scavengers.Tests
{
/// <summary>
/// Summary description for DateScavenger.
/// </summary>
///
[TestFixture]
public class GreaterThanOrdinalScavengerTest : BaseScavengerTest
{
public override ICache GetCache()
{
return new MutableInMemoryCache();
}
[Test]
public void ScavengeAndRemove()
{
IScavenger scavenger = new GreaterThanOrdinalScavenger(80);
Assert.AreEqual(100, this.cache.Count);
this.cache.Scavenge(scavenger);
Assert.AreEqual(80, this.cache.Count, "All entries should have been removed");
}
[Test]
public void ScavengeAndLeave()
{
IScavenger scavenger = new GreaterThanOrdinalScavenger(100);
Assert.AreEqual(100, this.cache.Count);
this.cache.Scavenge(scavenger);
Assert.AreEqual(100, this.cache.Count, "All entries should have been removed");
}
}
}
--- NEW FILE: AbsoluteExpirationScavengerTest.cs ---
using System;
using Adapdev.Cache;
using Adapdev.Cache.Scavengers;
using Adapdev.Mock;
using NUnit.Framework;
namespace Adapdev.Cache.Scavengers.Tests
{
/// <summary>
/// Summary description for DateScavenger.
/// </summary>
///
[TestFixture]
public class AbsoluteExpirationScavengerTest : BaseScavengerTest
{
public override ICache GetCache()
{
return new MutableInMemoryCache();
}
[Test]
public void ScavengeAndRemove()
{
IScavenger scavenger = new AbsoluteExpirationScavenger(DateTime.Today.AddDays(1));
Assert.AreEqual(100, this.cache.Count);
this.cache.Scavenge(scavenger);
Assert.AreEqual(0, this.cache.Count, "All entries should have been removed");
}
[Test]
public void ScavengeAndLeave()
{
IScavenger scavenger = new AbsoluteExpirationScavenger(DateTime.Today);
Assert.AreEqual(100, this.cache.Count);
this.cache.Scavenge(scavenger);
Assert.AreEqual(100, this.cache.Count, "All entries should have been removed");
}
}
}
--- NEW FILE: BaseScavengerTest.cs ---
using System;
using Adapdev.Cache;
using Adapdev.Cache.Scavengers;
using Adapdev.Mock;
using NUnit.Framework;
namespace Adapdev.Cache.Scavengers.Tests
{
/// <summary>
/// Summary description for BaseScavengerTest.
/// </summary>
public abstract class BaseScavengerTest
{
protected ICache cache = null;
public abstract ICache GetCache();
[SetUp]
public void SetUp()
{
this.cache = this.GetCache();
this.PopulateCache();
}
[TearDown]
public void TearDown()
{
this.cache.Clear();
}
public void PopulateCache()
{
for(int i = 0; i < 100; i++)
{
SuppliersEntity e = new SuppliersEntity();
e.SupplierID = i;
e.Fax = "12345";
e.CompanyName = "Test";
e.ContactName = "Test";
this.cache.Add(e.SupplierID, e);
}
}
}
}
|