Commit c827d73
Changed files (67)
trunk
src
MyMoney
DataAccess
repositories
Domain
Infrastructure
Container
interceptors
Logging
registries
Threading
transactions
Presentation
Context
Databindings
Model
Menu
Projects
reporting
Presenters
Commands
Navigation
Shell
Startup
Views
Testing
Utility
trunk/src/MyMoney/DataAccess/db40/spiking/db40_spike_specs.cs
@@ -1,67 +1,51 @@
using System.Collections.Generic;
using System.IO;
using Db4objects.Db4o;
+using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
using MyMoney.Utility.Extensions;
namespace MyMoney.DataAccess.db40.spiking
{
- public class db40_spike_specs
- {}
-
- [Concern(typeof(Db4oFactory))]
- public class when_opening_an_existing_database_ : context_specification
+ [Concern(typeof (Db4oFactory))]
+ public class when_opening_an_existing_database_ : concerns_for
{
- public override void before_each_observation()
- {
- the_database_file = Path.GetTempFileName();
- database = Db4oFactory.OpenFile(the_database_file);
- base.before_each_observation();
- }
+ before_each_observation be = () => { };
- protected override void context()
- {
- original = new TestObject(88, "mo");
- database.Store(original);
- }
+ context c = () =>
+ {
+ original = new TestObject(88, "mo");
+ the_database_file = Path.GetTempFileName();
+ database = Db4oFactory.OpenFile(the_database_file);
+ };
- protected override void because()
- {
- database.Close();
- database.Dispose();
- database = Db4oFactory.OpenFile(the_database_file);
- results = database.Query<ITestObject>().databind();
- }
+ because b = () =>
+ {
+ database.Store(original);
+ database.Close();
+ database.Dispose();
+ database = Db4oFactory.OpenFile(the_database_file);
+ results = database.Query<ITestObject>().databind();
+ };
- [Observation]
- public void it_should_be_able_to_load_the_original_contents()
- {
- results.should_contain(original);
- }
+ it should_be_able_to_load_the_original_contents = () => results.should_contain(original);
- [Observation]
- public void they_should_be_equal()
- {
- new TestObject(99, "gretzky").Equals(new TestObject(99, "gretzky"));
- }
+ it they_should_be_equal = () => new TestObject(99, "gretzky").Equals(new TestObject(99, "gretzky"));
- [Observation]
- public void it_should_only_contain_the_original_item()
- {
- results.Count.should_be_equal_to(1);
- }
+ it should_only_contain_the_original_item = () => results.Count.should_be_equal_to(1);
- public override void after_each_observation()
- {
- database.Close();
- database.Dispose();
- }
+ after_each_observation ae = () =>
+ {
+ database.Close();
+ database.Dispose();
+ };
- private ITestObject original;
- private string the_database_file;
- private IList<ITestObject> results;
- private IObjectContainer database;
+ static ITestObject original;
+ static string the_database_file;
+ static IList<ITestObject> results;
+ static IObjectContainer database;
}
public interface ITestObject
@@ -98,7 +82,8 @@ namespace MyMoney.DataAccess.db40.spiking
public override int GetHashCode()
{
- unchecked {
+ unchecked
+ {
return (Id*397) ^ (Name != null ? Name.GetHashCode() : 0);
}
}
trunk/src/MyMoney/DataAccess/db40/db4o_repository_specs.cs
@@ -4,6 +4,7 @@ using jpboodhoo.bdd.contexts;
using MyMoney.Domain.Core;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.DataAccess.db40
{
trunk/src/MyMoney/DataAccess/db40/session_factory_specs.cs
@@ -3,6 +3,7 @@ using jpboodhoo.bdd.contexts;
using MyMoney.Presentation.Model.Projects;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.DataAccess.db40
{
trunk/src/MyMoney/DataAccess/repositories/bill_repository_specs.cs
@@ -1,38 +1,24 @@
using System.Collections.Generic;
+using jpboodhoo.bdd.contexts;
using MyMoney.Domain.accounting.billing;
-using MyMoney.Domain.Core;
using MyMoney.Testing.Extensions;
-using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.DataAccess.repositories
{
- public class bill_repository_specs
+ public class when_loading_all_the_bills_from_the_repository : behaves_like_a_repository
{
- }
-
- [Concern(typeof (IRepository))]
- public class when_loading_all_the_bills_from_the_repository : database_context_spec
- {
- [Observation]
- public void it_should_return_all_the_bills_in_the_database()
- {
- results.should_contain(first_bill);
- }
+ it should_return_all_the_bills_in_the_database = () => results.should_contain(first_bill);
- protected override IRepository context()
- {
- var repository = base.context();
- first_bill = an<IBill>();
- repository.save(first_bill);
- return repository;
- }
+ context c = () => { first_bill = an<IBill>(); };
- protected override void because()
- {
- results = sut.all<IBill>();
- }
+ because b = () =>
+ {
+ sut.save(first_bill);
+ results = sut.all<IBill>();
+ };
- private IEnumerable<IBill> results;
- private IBill first_bill;
+ static IEnumerable<IBill> results;
+ static IBill first_bill;
}
}
\ No newline at end of file
trunk/src/MyMoney/Domain/accounting/billing/bill_specs.cs
@@ -2,6 +2,7 @@ using System;
using MyMoney.Domain.Core;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Domain.accounting.billing
{
trunk/src/MyMoney/Domain/accounting/billing/company_specs.cs
@@ -3,6 +3,7 @@ using MyMoney.Domain.accounting.financial_growth;
using MyMoney.Domain.Core;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Domain.accounting.billing
{
trunk/src/MyMoney/Domain/accounting/account_holder_specs.cs
@@ -5,6 +5,7 @@ using MyMoney.Domain.accounting.financial_growth;
using MyMoney.Domain.Core;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Domain.accounting
{
trunk/src/MyMoney/Domain/accounting/GeneralLedgerSpecs.cs
@@ -4,6 +4,7 @@ using MyMoney.Domain.accounting.billing;
using MyMoney.Domain.Core;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Domain.accounting
{
trunk/src/MyMoney/Domain/Core/date_specs.cs
@@ -1,5 +1,6 @@
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Domain.Core
{
trunk/src/MyMoney/Domain/Core/money_extensions_specs.cs
@@ -1,5 +1,6 @@
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Domain.Core
{
trunk/src/MyMoney/Domain/Core/money_specs.cs
@@ -1,5 +1,6 @@
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Domain.Core
{
trunk/src/MyMoney/Domain/Core/range_specs.cs
@@ -1,5 +1,6 @@
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Domain.Core
{
trunk/src/MyMoney/Infrastructure/Container/Windsor/windsor_dependency_registry_specs.cs
@@ -2,6 +2,7 @@ using Castle.Core;
using Castle.Windsor;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Infrastructure.Container.Windsor
{
trunk/src/MyMoney/Infrastructure/Container/ResolveSpecs.cs
@@ -4,6 +4,7 @@ using MyMoney.Presentation.Core;
using MyMoney.Testing;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Infrastructure.Container
{
trunk/src/MyMoney/Infrastructure/interceptors/lazy_specs.cs
@@ -2,6 +2,7 @@ using jpboodhoo.bdd.contexts;
using MyMoney.Infrastructure.Container;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Infrastructure.interceptors
{
trunk/src/MyMoney/Infrastructure/Logging/LogSpecs.cs
@@ -2,6 +2,7 @@ using jpboodhoo.bdd.contexts;
using MyMoney.Infrastructure.Container;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Infrastructure.Logging
{
trunk/src/MyMoney/Infrastructure/registries/default_registry_specs.cs
@@ -4,6 +4,7 @@ using MyMoney.Domain.Core;
using MyMoney.Infrastructure.Container;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Infrastructure.registries
{
trunk/src/MyMoney/Infrastructure/Threading/background_thread_factory_specs.cs
@@ -2,6 +2,7 @@ using jpboodhoo.bdd.contexts;
using MyMoney.Infrastructure.Container;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
using MyMoney.Utility.Core;
namespace MyMoney.Infrastructure.Threading
trunk/src/MyMoney/Infrastructure/Threading/background_thread_specs.cs
@@ -1,6 +1,7 @@
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
using MyMoney.Utility.Core;
using Rhino.Mocks;
trunk/src/MyMoney/Infrastructure/Threading/command_processor_specs.cs
@@ -1,6 +1,7 @@
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
using MyMoney.Utility.Core;
namespace MyMoney.Infrastructure.Threading
trunk/src/MyMoney/Infrastructure/Threading/interval_timer_specs.cs
@@ -3,6 +3,7 @@ using System.Timers;
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
using Rhino.Mocks;
namespace MyMoney.Infrastructure.Threading
trunk/src/MyMoney/Infrastructure/Threading/timer_factory_specs.cs
@@ -3,6 +3,7 @@ using System.Timers;
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Infrastructure.Threading
{
trunk/src/MyMoney/Infrastructure/transactions/unit_of_work_registry_specs.cs
@@ -2,6 +2,7 @@ using jpboodhoo.bdd.contexts;
using MyMoney.Domain.Core;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Infrastructure.transactions
{
trunk/src/MyMoney/Infrastructure/transactions/unit_of_work_specs.cs
@@ -1,6 +1,7 @@
using MyMoney.Domain.Core;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Infrastructure.transactions
{
trunk/src/MyMoney/Presentation/Context/the_application_context_specs.cs
@@ -5,6 +5,7 @@ using MyMoney.Presentation.Presenters.Commands;
using MyMoney.Presentation.Views.Shell;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
using Rhino.Mocks;
namespace MyMoney.Presentation.Context
trunk/src/MyMoney/Presentation/Core/application_controller_specs.cs
@@ -5,6 +5,7 @@ using MyMoney.Presentation.Views.core;
using MyMoney.Presentation.Views.Shell;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Core
{
trunk/src/MyMoney/Presentation/Databindings/binding_selector_specs.cs
@@ -2,6 +2,7 @@ using System;
using System.Linq.Expressions;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Databindings
{
trunk/src/MyMoney/Presentation/Databindings/ComboBoxDataBindingSpecs.cs
@@ -2,6 +2,7 @@ using System.Windows.Forms;
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Databindings
{
trunk/src/MyMoney/Presentation/Databindings/date_time_property_binding_specs.cs
@@ -3,6 +3,7 @@ using System.Windows.Forms;
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Databindings
{
trunk/src/MyMoney/Presentation/Databindings/property_binder_specs.cs
@@ -2,6 +2,7 @@ using System.Reflection;
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Databindings
{
trunk/src/MyMoney/Presentation/Databindings/property_inspector_specs.cs
@@ -2,6 +2,7 @@ using System.Reflection;
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Databindings
{
trunk/src/MyMoney/Presentation/Databindings/TextBoxDataBindingSpecs.cs
@@ -2,6 +2,7 @@ using System.Windows.Forms;
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Databindings
{
trunk/src/MyMoney/Presentation/Model/Menu/File/Commands/exit_command_specs.cs
@@ -4,6 +4,7 @@ using MyMoney.Infrastructure.System;
using MyMoney.Presentation.Model.messages;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Model.Menu.File.Commands
{
trunk/src/MyMoney/Presentation/Model/Menu/File/Commands/new_command_specs.cs
@@ -3,6 +3,7 @@ using MyMoney.Presentation.Model.Projects;
using MyMoney.Presentation.Presenters.Commands;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Model.Menu.File.Commands
{
trunk/src/MyMoney/Presentation/Model/Menu/File/Commands/open_command_specs.cs
@@ -4,6 +4,7 @@ using MyMoney.Presentation.Presenters.Commands;
using MyMoney.Presentation.Views.dialogs;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Model.Menu.File.Commands
{
trunk/src/MyMoney/Presentation/Model/Menu/File/Commands/save_as_command_specs.cs
@@ -3,6 +3,7 @@ using MyMoney.Presentation.Model.Projects;
using MyMoney.Presentation.Views.dialogs;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Model.Menu.File.Commands
{
trunk/src/MyMoney/Presentation/Model/Menu/File/Commands/save_command_specs.cs
@@ -2,6 +2,7 @@ using jpboodhoo.bdd.contexts;
using MyMoney.Presentation.Model.Projects;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Model.Menu.File.Commands
{
trunk/src/MyMoney/Presentation/Model/Projects/current_project_specs.cs
@@ -5,6 +5,7 @@ using MyMoney.Infrastructure.eventing;
using MyMoney.Testing;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Model.Projects
{
trunk/src/MyMoney/Presentation/Model/reporting/report_binding_extensions_specs.cs
@@ -3,6 +3,7 @@ using DataDynamics.ActiveReports;
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Model.reporting
{
trunk/src/MyMoney/Presentation/Presenters/Commands/run_the_specs.cs
@@ -2,6 +2,7 @@ using jpboodhoo.bdd.contexts;
using MyMoney.Presentation.Core;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Presenters.Commands
{
trunk/src/MyMoney/Presentation/Presenters/income/add_new_income_presenter_specs.cs
@@ -8,6 +8,7 @@ using MyMoney.Presentation.Views.income;
using MyMoney.Tasks.application;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Presenters.income
{
trunk/src/MyMoney/Presentation/Presenters/Menu/Help/about_the_application_presenter_specs.cs
@@ -2,6 +2,7 @@ using jpboodhoo.bdd.contexts;
using MyMoney.Presentation.Views.Menu.Help;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Presenters.Menu.Help
{
trunk/src/MyMoney/Presentation/Presenters/Shell/load_application_shell_specs.cs
@@ -4,6 +4,7 @@ using MyMoney.Presentation.Presenters.Commands;
using MyMoney.Presentation.Views.Shell;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Presenters.Shell
{
trunk/src/MyMoney/Presentation/Presenters/Shell/notification_icon_presenter_specs.cs
@@ -4,6 +4,7 @@ using MyMoney.Presentation.Resources;
using MyMoney.Presentation.Views.Shell;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Presenters.Shell
{
trunk/src/MyMoney/Presentation/Presenters/Shell/status_bar_presenter_specs.cs
@@ -3,6 +3,7 @@ using MyMoney.Presentation.Resources;
using MyMoney.Presentation.Views.Shell;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Presenters.Shell
{
trunk/src/MyMoney/Presentation/Presenters/Shell/title_bar_presenter_specs.cs
@@ -5,6 +5,7 @@ using MyMoney.Presentation.Model.Projects;
using MyMoney.Presentation.Views.Shell;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Presenters.Shell
{
trunk/src/MyMoney/Presentation/Presenters/Startup/splash_screen_presenter_specs.cs
@@ -4,6 +4,7 @@ using MyMoney.Infrastructure.Threading;
using MyMoney.Presentation.Views.Startup;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Presenters.Startup
{
trunk/src/MyMoney/Presentation/Presenters/add_company_presenter_specs.cs
@@ -4,6 +4,7 @@ using MyMoney.Presentation.Views;
using MyMoney.Tasks.application;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Presentation.Presenters
{
trunk/src/MyMoney/Testing/Extensions/context_specification.cs
@@ -1,48 +0,0 @@
-using MbUnit.Framework;
-using MyMoney.Domain.Core;
-using MyMoney.Testing.MetaData;
-using Rhino.Mocks;
-
-namespace MyMoney.Testing.Extensions
-{
- [Observations]
- public abstract class context_specification
- {
- [SetUp]
- public virtual void before_each_observation()
- {
- context();
- initialize_the_sut();
- because();
- }
-
- [TearDown]
- public virtual void after_each_observation()
- {
- Clock.reset();
- }
-
- protected abstract void context();
-
- protected virtual void initialize_the_sut()
- {
- }
-
- protected abstract void because();
-
- protected TypeToMock the_dependency<TypeToMock>() where TypeToMock : class
- {
- return MockRepository.GenerateMock<TypeToMock>();
- }
-
- protected TypeToMock an<TypeToMock>() where TypeToMock : class
- {
- return MockRepository.GenerateMock<TypeToMock>();
- }
-
- protected T when_the<T>(T item)
- {
- return item;
- }
- }
-}
\ No newline at end of file
trunk/src/MyMoney/Testing/Extensions/database_context_spec.cs
@@ -1,15 +0,0 @@
-using MyMoney.Domain.Core;
-using MyMoney.Infrastructure.Container;
-using MyMoney.Testing.MetaData;
-
-namespace MyMoney.Testing.Extensions
-{
- [run_in_real_container]
- public abstract class database_context_spec : old_context_specification<IRepository>
- {
- protected override IRepository context()
- {
- return resolve.dependency_for<IRepository>();
- }
- }
-}
\ No newline at end of file
trunk/src/MyMoney/Testing/spechelpers/contexts/behaves_like_a_repository.cs
@@ -0,0 +1,16 @@
+using MyMoney.Domain.Core;
+using MyMoney.Infrastructure.Container;
+using MyMoney.Testing.MetaData;
+
+namespace MyMoney.Testing.spechelpers.contexts
+{
+ [run_in_real_container]
+ [Concern(typeof (IRepository))]
+ public abstract class behaves_like_a_repository : concerns_for<IRepository>
+ {
+ public override IRepository create_sut()
+ {
+ return resolve.dependency_for<IRepository>();
+ }
+ }
+}
\ No newline at end of file
trunk/src/MyMoney/Testing/Extensions/concerns_for.cs → trunk/src/MyMoney/Testing/spechelpers/contexts/concerns_for.cs
@@ -1,7 +1,8 @@
using jpboodhoo.bdd.mbunit.standard.observations;
+using MyMoney.Testing.Extensions;
using Rhino.Mocks;
-namespace MyMoney.Testing.Extensions
+namespace MyMoney.Testing.spechelpers.contexts
{
public abstract class concerns_for<Contract> : observations_for_a_sut_without_a_contract<Contract>,
IHideObjectMembers
trunk/src/MyMoney/Testing/spechelpers/contexts/context_specification.cs
@@ -0,0 +1,48 @@
+using MbUnit.Framework;
+using MyMoney.Domain.Core;
+using MyMoney.Testing.MetaData;
+using Rhino.Mocks;
+
+namespace MyMoney.Testing.spechelpers.contexts
+{
+ //[Observations]
+ //public abstract class context_specification
+ //{
+ // [SetUp]
+ // public virtual void before_each_observation()
+ // {
+ // context();
+ // initialize_the_sut();
+ // because();
+ // }
+
+ // [TearDown]
+ // public virtual void after_each_observation()
+ // {
+ // Clock.reset();
+ // }
+
+ // protected abstract void context();
+
+ // protected virtual void initialize_the_sut()
+ // {
+ // }
+
+ // protected abstract void because();
+
+ // protected TypeToMock the_dependency<TypeToMock>() where TypeToMock : class
+ // {
+ // return MockRepository.GenerateMock<TypeToMock>();
+ // }
+
+ // protected TypeToMock an<TypeToMock>() where TypeToMock : class
+ // {
+ // return MockRepository.GenerateMock<TypeToMock>();
+ // }
+
+ // protected T when_the<T>(T item)
+ // {
+ // return item;
+ // }
+ //}
+}
\ No newline at end of file
trunk/src/MyMoney/Testing/Extensions/old_context_specification.cs → trunk/src/MyMoney/Testing/spechelpers/contexts/old_context_specification.cs
@@ -2,7 +2,7 @@ using MbUnit.Framework;
using MyMoney.Testing.MetaData;
using Rhino.Mocks;
-namespace MyMoney.Testing.Extensions
+namespace MyMoney.Testing.spechelpers.contexts
{
[Observations]
public abstract class old_context_specification<SystemUnderTest>
trunk/src/MyMoney/Testing/Extensions/assertion_extensions.cs → trunk/src/MyMoney/Testing/spechelpers/core/assertion_extensions.cs
File renamed without changes
trunk/src/MyMoney/Testing/spechelpers/core/BDDAssertions.cs
@@ -3,7 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using MbUnit.Framework;
-namespace MyMoney.Testing.spechelpers
+namespace MyMoney.Testing.spechelpers.core
{
public static class BDDAssertions
{
trunk/src/MyMoney/Testing/Extensions/IHideObjectMembers.cs → trunk/src/MyMoney/Testing/spechelpers/core/IHideObjectMembers.cs
File renamed without changes
trunk/src/MyMoney/Testing/Extensions/method_call_occurance.cs → trunk/src/MyMoney/Testing/spechelpers/core/method_call_occurance.cs
File renamed without changes
trunk/src/MyMoney/Testing/Extensions/mocking_extensions.cs → trunk/src/MyMoney/Testing/spechelpers/core/mocking_extensions.cs
File renamed without changes
trunk/src/MyMoney/Utility/Extensions/mapping_extensions_specs.cs
@@ -1,6 +1,7 @@
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
using MyMoney.Utility.Core;
namespace MyMoney.Utility.Extensions
trunk/src/MyMoney/Utility/Extensions/numeric_conversions_specs.cs
@@ -1,49 +1,30 @@
using jpboodhoo.bdd.contexts;
using MyMoney.Testing.Extensions;
-using MyMoney.Testing.MetaData;
+using MyMoney.Testing.spechelpers.contexts;
namespace MyMoney.Utility.Extensions
{
public class when_converting_a_valid_string_to_a_long : concerns_for
{
- it should_return_the_correct_result = () =>
- {
- result.should_be_equal_to(88L);
- };
-
- context c = () =>
- {
- valid_numeric_string = "88";
- };
-
- because b = () =>
- {
- result = valid_numeric_string.to_long();
- };
-
- private static long result;
- private static string valid_numeric_string;
+ it should_return_the_correct_result = () => result.should_be_equal_to(88L);
+
+ context c = () => { valid_numeric_string = "88"; };
+
+ because b = () => { result = valid_numeric_string.to_long(); };
+
+ static long result;
+ static string valid_numeric_string;
}
- public class when_converting_a_valid_string_to_an_int : context_specification
+ public class when_converting_a_valid_string_to_an_int : concerns_for
{
- [Observation]
- public void it_should_return_the_correct_result()
- {
- result.should_be_equal_to(66);
- }
-
- protected override void context()
- {
- valid_numeric_string = "66";
- }
-
- protected override void because()
- {
- result = valid_numeric_string.to_int();
- }
-
- private int result;
- private string valid_numeric_string;
+ it should_return_the_correct_result = () => result.should_be_equal_to(66);
+
+ context c = () => { valid_numeric_string = "66"; };
+
+ because b = () => { result = valid_numeric_string.to_int(); };
+
+ static int result;
+ static string valid_numeric_string;
}
}
\ No newline at end of file
trunk/src/MyMoney/MyMoney.csproj
@@ -394,14 +394,14 @@
<Compile Include="Tasks\application\customer_tasks.cs" />
<Compile Include="Tasks\application\file_system_tasks.cs" />
<Compile Include="Tasks\application\income_tasks.cs" />
- <Compile Include="Testing\Extensions\concerns_for.cs" />
- <Compile Include="Testing\Extensions\context_specification.cs" />
- <Compile Include="Testing\Extensions\database_context_spec.cs" />
- <Compile Include="Testing\Extensions\IHideObjectMembers.cs" />
+ <Compile Include="Testing\spechelpers\contexts\concerns_for.cs" />
+ <Compile Include="Testing\spechelpers\contexts\context_specification.cs" />
+ <Compile Include="Testing\spechelpers\contexts\behaves_like_a_repository.cs" />
+ <Compile Include="Testing\spechelpers\core\IHideObjectMembers.cs" />
<Compile Include="Testing\MetaData\Observation.cs" />
<Compile Include="Testing\MetaData\Observations.cs" />
- <Compile Include="Testing\Extensions\old_context_specification.cs" />
- <Compile Include="Testing\Extensions\method_call_occurance.cs" />
+ <Compile Include="Testing\spechelpers\contexts\old_context_specification.cs" />
+ <Compile Include="Testing\spechelpers\core\method_call_occurance.cs" />
<Compile Include="Testing\MetaData\run_in_real_container.cs" />
<Compile Include="Testing\spechelpers\core\BDDAssertions.cs" />
<Compile Include="Utility\Core\chained_mapper.cs" />
@@ -585,8 +585,8 @@
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<Compile Include="Testing\Call.cs" />
- <Compile Include="Testing\Extensions\assertion_extensions.cs" />
- <Compile Include="Testing\Extensions\mocking_extensions.cs" />
+ <Compile Include="Testing\spechelpers\core\assertion_extensions.cs" />
+ <Compile Include="Testing\spechelpers\core\mocking_extensions.cs" />
<Compile Include="Testing\MetaData\ConcernAttribute.cs" />
<Compile Include="windows.ui\start_the_application.cs" />
<Compile Include="windows.ui\wire_up_the_container.cs" />
@@ -602,8 +602,8 @@
<Folder Include="Presentation\Presenters\messages\" />
<Folder Include="Tasks\domain\" />
<Folder Include="Tasks\Stubs\" />
+ <Folder Include="Testing\Extensions\" />
<Folder Include="Testing\spechelpers\concerns\" />
- <Folder Include="Testing\spechelpers\contexts\" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.