Commit d513687

mo khan <mo@mokhan.ca>
2010-02-03 03:39:26
got all the tests passing in the new test project.
1 parent c155591
Changed files (116)
build
product
client
commons
tests
unit
client
boot
database
domain
presentation
service
service.infrastructure
commons
build/project.build
@@ -36,7 +36,7 @@
 				<include name="${build.config.dir}\**\*.cs" />
 				<exclude name="${product.dir}\**\AssemblyInfo.cs" />
 				<exclude name="${product.dir}\**\*Specs.cs" />
-				<exclude name="${product.dir}\commons\testing\**\*.cs" />
+				<exclude name="${product.dir}\tests\**\*.cs" />
 			</sources>			
 			<references>
 				<include name="${build.lib.dir}\app\**\*.dll" />
build/project.test.build
@@ -12,6 +12,7 @@
 		<csc output="${build.compile.dir}\${test.output}" target="library" debug="${debug}">
 			<sources basedir="${product.dir}">
 				<include name="**\*Specs.cs" />
+				<include name="tests\**\*.cs" />
 			</sources>
 			<references refid="test.references.fileset"/>
 		</csc>
product/client/boot/boot/container/registration/WireUpTheViewsInToThe.cs
@@ -27,7 +27,6 @@ namespace MoMoney.boot.container.registration
             register.singleton(() => shell);
             register_tab<IAboutApplicationView, AboutTheApplicationView>();
             register_tab<ISplashScreenView, SplashScreenView>();
-            register_tab<INavigationView, NavigationView>();
             register_tab<IAddCompanyView, AddCompanyView>();
             register_tab<IViewAllBills, ViewAllBills>();
             register_tab<IAddBillPaymentView, AddBillPaymentView>();
product/client/boot/Modules/NavigationModule.cs
@@ -1,27 +0,0 @@
-using MoMoney.Presentation;
-using momoney.presentation.model.eventing;
-using momoney.presentation.presenters;
-using MoMoney.Presentation.Presenters;
-using MoMoney.Service.Infrastructure.Eventing;
-
-namespace MoMoney.Modules
-{
-    public class NavigationModule : IModule, EventSubscriber<NewProjectOpened>
-    {
-        IRunPresenterCommand command;
-
-        public NavigationModule(IRunPresenterCommand command)
-        {
-            this.command = command;
-        }
-
-        public void run()
-        {
-        }
-
-        public void notify(NewProjectOpened message)
-        {
-            command.run<NavigationPresenter>();
-        }
-    }
-}
\ No newline at end of file
product/client/boot/boot.csproj
@@ -149,7 +149,6 @@
     <Compile Include="modules\core\ILoadPresentationModulesCommand.cs" />
     <Compile Include="modules\DatabaseModule.cs" />
     <Compile Include="modules\ApplicationMenuModule.cs" />
-    <Compile Include="modules\NavigationModule.cs" />
     <Compile Include="modules\GettingStartedModule.cs" />
     <Compile Include="modules\TitleBarPresenter.cs" />
     <Compile Include="modules\ToolbarModule.cs" />
product/client/presentation/Presenters/NavigationPresenter.cs
@@ -1,21 +0,0 @@
-using MoMoney.Presentation.Core;
-using MoMoney.Presentation.Model.Navigation;
-using momoney.presentation.views;
-
-namespace momoney.presentation.presenters
-{
-    public class NavigationPresenter : TabPresenter<INavigationView>
-    {
-        readonly INavigationTreeVisitor tree_view_visitor;
-
-        public NavigationPresenter(INavigationView view, INavigationTreeVisitor tree_view_visitor) : base(view)
-        {
-            this.tree_view_visitor = tree_view_visitor;
-        }
-
-        protected override void present()
-        {
-            view.accept(tree_view_visitor);
-        }
-    }
-}
\ No newline at end of file
product/client/presentation/Views/INavigationView.cs
@@ -1,10 +0,0 @@
-using MoMoney.Presentation.Model.Navigation;
-using momoney.presentation.presenters;
-
-namespace momoney.presentation.views
-{
-    public interface INavigationView : ITab, View<NavigationPresenter>
-    {
-        void accept(INavigationTreeVisitor tree_view_visitor);
-    }
-}
\ No newline at end of file
product/client/presentation/Winforms/Views/NavigationView.cs
@@ -1,29 +0,0 @@
-using System.Windows.Forms;
-using gorilla.commons.utility;
-using MoMoney.Presentation.Model.Navigation;
-using momoney.presentation.presenters;
-using momoney.presentation.views;
-using MoMoney.Presentation.Winforms.Resources;
-using WeifenLuo.WinFormsUI.Docking;
-
-namespace MoMoney.Presentation.Winforms.Views
-{
-    public partial class NavigationView : ApplicationDockedWindow, INavigationView
-    {
-        public NavigationView()
-        {
-            InitializeComponent();
-            icon(ApplicationIcons.FileExplorer).docked_to(DockState.DockRightAutoHide);
-            uxNavigationTreeView.ImageList = new ImageList();
-            ApplicationIcons.all().each(x => uxNavigationTreeView.ImageList.Images.Add(x.name_of_the_icon, x));
-        }
-
-        public void accept(INavigationTreeVisitor tree_view_visitor)
-        {
-            uxNavigationTreeView.Nodes.Clear();
-            tree_view_visitor.visit(uxNavigationTreeView);
-        }
-
-        public void attach_to(NavigationPresenter presenter) {}
-    }
-}
\ No newline at end of file
product/client/presentation/Winforms/Views/NavigationView.Designer.cs
@@ -1,61 +0,0 @@
-namespace MoMoney.Presentation.Winforms.Views
-{
-    partial class NavigationView
-    {
-        /// <summary>
-        /// Required designer variable.
-        /// </summary>
-        private System.ComponentModel.IContainer components = null;
-
-        /// <summary>
-        /// Clean up any resources being used.
-        /// </summary>
-        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
-        protected override void Dispose(bool disposing)
-        {
-            if (disposing && (components != null))
-            {
-                components.Dispose();
-            }
-            base.Dispose(disposing);
-        }
-
-        #region Windows Form Designer generated code
-
-        /// <summary>
-        /// Required method for Designer support - do not modify
-        /// the contents of this method with the code editor.
-        /// </summary>
-        private void InitializeComponent()
-        {
-            this.uxNavigationTreeView = new System.Windows.Forms.TreeView();
-            this.SuspendLayout();
-            // 
-            // uxNavigationTreeView
-            // 
-            this.uxNavigationTreeView.Dock = System.Windows.Forms.DockStyle.Fill;
-            this.uxNavigationTreeView.Location = new System.Drawing.Point(0, 0);
-            this.uxNavigationTreeView.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
-            this.uxNavigationTreeView.Name = "uxNavigationTreeView";
-            this.uxNavigationTreeView.Size = new System.Drawing.Size(389, 336);
-            this.uxNavigationTreeView.TabIndex = 0;
-            // 
-            // NavigationView
-            // 
-            this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F);
-            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(389, 336);
-            this.Controls.Add(this.uxNavigationTreeView);
-            this.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
-            this.Name = "NavigationView";
-            this.TabText = "Action Items";
-            this.Text = "Alternate Menu";
-            this.ResumeLayout(false);
-
-        }
-
-        #endregion
-
-        private System.Windows.Forms.TreeView uxNavigationTreeView;
-    }
-}
\ No newline at end of file
product/client/presentation/Winforms/Views/NavigationView.resx
@@ -1,120 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<root>
-  <!-- 
-    Microsoft ResX Schema 
-    
-    Version 2.0
-    
-    The primary goals of this format is to allow a simple XML format 
-    that is mostly human readable. The generation and parsing of the 
-    various data types are done through the TypeConverter classes 
-    associated with the data types.
-    
-    Example:
-    
-    ... ado.net/XML headers & schema ...
-    <resheader name="resmimetype">text/microsoft-resx</resheader>
-    <resheader name="version">2.0</resheader>
-    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
-    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
-    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
-    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
-    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
-        <value>[base64 mime encoded serialized .NET Framework object]</value>
-    </data>
-    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
-        <comment>This is a comment</comment>
-    </data>
-                
-    There are any number of "resheader" rows that contain simple 
-    name/value pairs.
-    
-    Each data row contains a name, and value. The row also contains a 
-    type or mimetype. Type corresponds to a .NET class that support 
-    text/value conversion through the TypeConverter architecture. 
-    Classes that don't support this are serialized and stored with the 
-    mimetype set.
-    
-    The mimetype is used for serialized objects, and tells the 
-    ResXResourceReader how to depersist the object. This is currently not 
-    extensible. For a given mimetype the value must be set accordingly:
-    
-    Note - application/x-microsoft.net.object.binary.base64 is the format 
-    that the ResXResourceWriter will generate, however the reader can 
-    read any of the formats listed below.
-    
-    mimetype: application/x-microsoft.net.object.binary.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
-            : and then encoded with base64 encoding.
-    
-    mimetype: application/x-microsoft.net.object.soap.base64
-    value   : The object must be serialized with 
-            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
-            : and then encoded with base64 encoding.
-
-    mimetype: application/x-microsoft.net.object.bytearray.base64
-    value   : The object must be serialized into a byte array 
-            : using a System.ComponentModel.TypeConverter
-            : and then encoded with base64 encoding.
-    -->
-  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
-    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
-    <xsd:element name="root" msdata:IsDataSet="true">
-      <xsd:complexType>
-        <xsd:choice maxOccurs="unbounded">
-          <xsd:element name="metadata">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" />
-              </xsd:sequence>
-              <xsd:attribute name="name" use="required" type="xsd:string" />
-              <xsd:attribute name="type" type="xsd:string" />
-              <xsd:attribute name="mimetype" type="xsd:string" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="assembly">
-            <xsd:complexType>
-              <xsd:attribute name="alias" type="xsd:string" />
-              <xsd:attribute name="name" type="xsd:string" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="data">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
-              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
-              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
-              <xsd:attribute ref="xml:space" />
-            </xsd:complexType>
-          </xsd:element>
-          <xsd:element name="resheader">
-            <xsd:complexType>
-              <xsd:sequence>
-                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
-              </xsd:sequence>
-              <xsd:attribute name="name" type="xsd:string" use="required" />
-            </xsd:complexType>
-          </xsd:element>
-        </xsd:choice>
-      </xsd:complexType>
-    </xsd:element>
-  </xsd:schema>
-  <resheader name="resmimetype">
-    <value>text/microsoft-resx</value>
-  </resheader>
-  <resheader name="version">
-    <value>2.0</value>
-  </resheader>
-  <resheader name="reader">
-    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-  <resheader name="writer">
-    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
-  </resheader>
-</root>
\ No newline at end of file
product/client/presentation/Presentation.csproj
@@ -209,7 +209,6 @@
     <Compile Include="presenters\ExpandoItemBuilder.cs" />
     <Compile Include="presenters\IActionTaskPaneFactory.cs" />
     <Compile Include="presenters\MainMenuPresenter.cs" />
-    <Compile Include="presenters\NavigationPresenter.cs" />
     <Compile Include="presenters\ReportPresenter.cs" />
     <Compile Include="presenters\ApplicationShellPresenter.cs" />
     <Compile Include="presenters\GettingStartedPresenter.cs" />
@@ -316,19 +315,12 @@
     </Compile>
     <Compile Include="views\IAboutApplicationView.cs" />
     <Compile Include="views\IMainMenuView.cs" />
-    <Compile Include="views\INavigationView.cs" />
     <Compile Include="winforms\views\MainMenuView.cs">
       <SubType>Form</SubType>
     </Compile>
     <Compile Include="winforms\views\MainMenuView.Designer.cs">
       <DependentUpon>MainMenuView.cs</DependentUpon>
     </Compile>
-    <Compile Include="winforms\views\NavigationView.cs">
-      <SubType>Form</SubType>
-    </Compile>
-    <Compile Include="winforms\views\NavigationView.Designer.cs">
-      <DependentUpon>NavigationView.cs</DependentUpon>
-    </Compile>
     <Compile Include="views\IReportViewer.cs" />
     <Compile Include="winforms\views\ReportViewer.cs">
       <SubType>Form</SubType>
@@ -477,10 +469,6 @@
       <DependentUpon>MainMenuView.cs</DependentUpon>
       <SubType>Designer</SubType>
     </EmbeddedResource>
-    <EmbeddedResource Include="winforms\views\NavigationView.resx">
-      <DependentUpon>NavigationView.cs</DependentUpon>
-      <SubType>Designer</SubType>
-    </EmbeddedResource>
     <EmbeddedResource Include="winforms\views\ReportViewer.resx">
       <DependentUpon>ReportViewer.cs</DependentUpon>
       <SubType>Designer</SubType>
product/client/service.infrastructure/service.infrastructure.csproj
@@ -94,7 +94,6 @@
     <Compile Include="ProjectTasks.cs" />
     <Compile Include="Properties\AssemblyInfo.cs" />
     <Compile Include="security\IsInRole.cs" />
-    <Compile Include="security\IsInRoleSpecs.cs" />
     <Compile Include="security\Role.cs" />
     <Compile Include="threading\AsynchronousCommandProcessor.cs" />
     <Compile Include="threading\BackgroundThread.cs" />
product/commons/utility/AttributeExtensions.cs
@@ -1,7 +1,7 @@
-using System;
-using System.Reflection;
-
-namespace momoney.utility
+using System;
+using System.Reflection;
+
+namespace gorilla.commons.utility
 {
     static public class AttributeExtensions
     {
product/tests/unit/client/boot/container/registration/proxy_configuration/InterceptingFilterFactorySpecs.cs
@@ -1,9 +1,9 @@
-using Castle.Core.Interceptor;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace MoMoney.boot.container.registration.proxy_configuration
+using Castle.Core.Interceptor;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using MoMoney.boot.container.registration.proxy_configuration;
+
+namespace tests.unit.client.boot.container.registration.proxy_configuration
 {
     public class InterceptingFilterFactorySpecs
     {
product/tests/unit/client/boot/container/registration/proxy_configuration/InterceptingFilterSpecs.cs
@@ -1,9 +1,9 @@
-using Castle.Core.Interceptor;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace MoMoney.boot.container.registration.proxy_configuration
+using Castle.Core.Interceptor;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using MoMoney.boot.container.registration.proxy_configuration;
+
+namespace tests.unit.client.boot.container.registration.proxy_configuration
 {
     public class InterceptingFilterSpecs
     {
product/tests/unit/client/boot/container/registration/proxy_configuration/SecuringProxySpecs.cs
@@ -1,11 +1,11 @@
-using System.Security.Principal;
-using System.Threading;
-using Castle.Core.Interceptor;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace MoMoney.boot.container.registration.proxy_configuration
+using System.Security.Principal;
+using System.Threading;
+using Castle.Core.Interceptor;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using MoMoney.boot.container.registration.proxy_configuration;
+
+namespace tests.unit.client.boot.container.registration.proxy_configuration
 {
     public class SecuringProxySpecs {}
 
product/tests/unit/client/boot/container/registration/AutoWiteComponentsInToTheSpecs.cs
@@ -3,10 +3,10 @@ using developwithpassion.bdd.contexts;
 using Gorilla.Commons.Infrastructure.Reflection;
 using gorilla.commons.infrastructure.thirdparty;
 using gorilla.commons.infrastructure.thirdparty.Castle.Windsor.Configuration;
-using Gorilla.Commons.Testing;
 using MbUnit.Framework;
+using MoMoney.boot.container.registration;
 
-namespace MoMoney.boot.container.registration
+namespace tests.unit.client.boot.container.registration
 {
     [Ignore("I am not sure why but line 19 throws a BadImageFormatException")]
     public abstract class behaves_like_auto_registering_components_into_container :
product/tests/unit/client/boot/container/ComponentExclusionSpecificationSpecs.cs
@@ -1,15 +1,15 @@
-using System;
-using System.Collections.Generic;
-using System.Data;
-using System.Windows.Forms;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Infrastructure.Container;
-using gorilla.commons.infrastructure.thirdparty.Castle.Windsor.Configuration;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-using MoMoney.Domain.Core;
-
-namespace MoMoney.boot.container
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Windows.Forms;
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.Container;
+using gorilla.commons.infrastructure.thirdparty.Castle.Windsor.Configuration;
+using gorilla.commons.utility;
+using MoMoney.boot.container;
+using MoMoney.Domain.Core;
+
+namespace tests.unit.client.boot.container
 {
     public abstract class behaves_like_component_exclusion_specification :
         concerns_for<ComponentExclusionSpecification, ComponentExclusionSpecificationImplementation> {}
product/tests/unit/client/boot/modules/core/LoadPresentationModulesCommandSpecs.cs
@@ -1,9 +1,9 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-using MoMoney.Presentation;
-
-namespace MoMoney.Modules.Core
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using MoMoney.Modules.Core;
+using MoMoney.Presentation;
+
+namespace tests.unit.client.boot.modules.core
 {
     public class LoadPresentationModulesCommandSpecs
     {
@@ -14,11 +14,11 @@ namespace MoMoney.Modules.Core
             it should_initialize_all_the_presentation_modules = () => module.was_told_to(x => x.run());
 
             context c = () =>
-                        {
-                            registry = the_dependency<Registry<IModule>>();
-                            module = an<IModule>();
-                            when_the(registry).is_told_to(r => r.all()).it_will_return(module);
-                        };
+            {
+                registry = the_dependency<Registry<IModule>>();
+                module = an<IModule>();
+                when_the(registry).is_told_to(r => r.all()).it_will_return(module);
+            };
 
             because b = () => sut.run();
 
product/tests/unit/client/boot/modules/NotificationIconPresenterSpecs.cs
@@ -1,11 +1,9 @@
 using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
 using momoney.presentation.presenters;
 using momoney.presentation.views;
-using MoMoney.Presentation.Views;
 using MoMoney.Presentation.Winforms.Resources;
 
-namespace momoney.modules
+namespace tests.unit.client.boot.modules
 {
     [Concern(typeof (NotificationIconPresenter))]
     public abstract class behaves_like_notification_icon_presenter : concerns_for<NotificationIconPresenter>
product/tests/unit/client/boot/modules/TitleBarPresenterSpecs.cs
@@ -1,10 +1,10 @@
 using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
+using momoney.modules;
 using momoney.presentation.model.eventing;
 using MoMoney.Presentation.Model.Projects;
 using MoMoney.Presentation.Views;
 
-namespace momoney.modules
+namespace tests.unit.client.boot.modules
 {
     [Concern(typeof (TitleBarPresenter))]
     public abstract class behaves_like_a_title_bar_presenter : concerns_for<TitleBarPresenter>
product/tests/unit/client/database/db4o/db40_spike_specs.cs
@@ -1,11 +1,10 @@
-using System.Collections.Generic;
-using System.IO;
-using Db4objects.Db4o;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace momoney.database.db4o.Spiking
+using System.Collections.Generic;
+using System.IO;
+using Db4objects.Db4o;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.client.database.db4o
 {
     [Concern(typeof (Db4oFactory))]
     public class when_opening_an_existing_database_ : concerns
product/tests/unit/client/database/transactions/ChangeTrackerFactorySpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace momoney.database.transactions
+using System;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using momoney.database.transactions;
+
+namespace tests.unit.client.database.transactions
 {
     public class ChangeTrackerFactorySpecs {}
 
product/tests/unit/client/database/transactions/ChangeTrackerSpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace momoney.database.transactions
+using System;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using momoney.database.transactions;
+
+namespace tests.unit.client.database.transactions
 {
     public class ChangeTrackerSpecs
     {
product/tests/unit/client/database/transactions/ContextFactorySpecs.cs
@@ -1,8 +1,8 @@
-using System.Collections;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace momoney.database.transactions
+using System.Collections;
+using developwithpassion.bdd.contexts;
+using momoney.database.transactions;
+
+namespace tests.unit.client.database.transactions
 {
     public class ContextFactorySpecs
     {
product/tests/unit/client/database/transactions/IdentityMapSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace momoney.database.transactions
+using developwithpassion.bdd.contexts;
+using momoney.database.transactions;
+
+namespace tests.unit.client.database.transactions
 {
     [Concern(typeof (IdentityMap<,>))]
     public class behaves_like_identity_map : concerns_for<IIdentityMap<int, string>, IdentityMap<int, string>>
product/tests/unit/client/database/transactions/PerThreadScopedStorageSpecs.cs
@@ -1,8 +1,8 @@
-using System.Collections;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace momoney.database.transactions
+using System.Collections;
+using developwithpassion.bdd.contexts;
+using momoney.database.transactions;
+
+namespace tests.unit.client.database.transactions
 {
     public class PerThreadScopedStorageSpecs
     {
product/tests/unit/client/database/transactions/SessionFactorySpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace momoney.database.transactions
+using developwithpassion.bdd.contexts;
+using momoney.database.transactions;
+
+namespace tests.unit.client.database.transactions
 {
     public class SessionFactorySpecs
     {
product/tests/unit/client/database/transactions/SessionSpecs.cs
@@ -1,10 +1,10 @@
-using System;
-using System.Collections.Generic;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace momoney.database.transactions
+using System;
+using System.Collections.Generic;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using momoney.database.transactions;
+
+namespace tests.unit.client.database.transactions
 {
     public class SessionSpecs
     {
product/tests/unit/client/database/transactions/TrackerEntrySpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace momoney.database.transactions
+using System;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using momoney.database.transactions;
+
+namespace tests.unit.client.database.transactions
 {
     public class TrackerEntrySpecs {}
 
product/tests/unit/client/database/transactions/TransactionSpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace momoney.database.transactions
+using System;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using momoney.database.transactions;
+
+namespace tests.unit.client.database.transactions
 {
     public class TransactionSpecs
     {
product/tests/unit/client/domain/accounting/AccountHolderSpecs.cs
@@ -1,13 +1,13 @@
-using System;
-using System.Collections.Generic;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using Gorilla.Commons.Utility;
-using MoMoney.Domain.Accounting;
-using MoMoney.Domain.Core;
-using Rhino.Mocks;
-
-namespace MoMoney.Domain.accounting
+using System;
+using System.Collections.Generic;
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Utility;
+using MoMoney.Domain.accounting;
+using MoMoney.Domain.Accounting;
+using MoMoney.Domain.Core;
+using Rhino.Mocks;
+
+namespace tests.unit.client.domain.accounting
 {
     public class AccountHolderSpecs
     {
@@ -19,26 +19,26 @@ namespace MoMoney.Domain.accounting
         public class when_a_customer_is_checking_for_any_bills_that_have_not_been_paid : concern
         {
             it should_return_all_the_unpaid_bills = () =>
-                                                    {
-                                                        result.should_contain(first_unpaid_bill);
-                                                        result.should_contain(second_unpaid_bill);
-                                                    };
+            {
+                result.should_contain(first_unpaid_bill);
+                result.should_contain(second_unpaid_bill);
+            };
 
             context c = () =>
-                        {
+            {
                             
-                            first_unpaid_bill = Bill.New(null,10.00, DateTime.Now);
-                            second_unpaid_bill = Bill.New(null, 11.00, DateTime.Now);
-                            paid_bill = Bill.New(null, 0.00, DateTime.Now);
-                        };
+                first_unpaid_bill = Bill.New(null,10.00, DateTime.Now);
+                second_unpaid_bill = Bill.New(null, 11.00, DateTime.Now);
+                paid_bill = Bill.New(null, 0.00, DateTime.Now);
+            };
 
             because b = () =>
-                        {
-                            sut.receive(first_unpaid_bill);
-                            sut.receive(paid_bill);
-                            sut.receive(second_unpaid_bill);
-                            result = sut.collect_all_the_unpaid_bills();
-                        };
+            {
+                sut.receive(first_unpaid_bill);
+                sut.receive(paid_bill);
+                sut.receive(second_unpaid_bill);
+                result = sut.collect_all_the_unpaid_bills();
+            };
 
             static IEnumerable<Bill> result;
             static Bill first_unpaid_bill;
@@ -50,28 +50,28 @@ namespace MoMoney.Domain.accounting
         public class when_an_account_holder_is_calculating_their_income_for_a_year : concern
         {
             context c = () =>
-                        {
-                            income_for_january_2007 = MockRepository.GenerateMock<Income>();
-                            income_for_february_2007 = MockRepository.GenerateMock<Income>();
-                            income_for_february_2008 = MockRepository.GenerateMock<Income>();
+            {
+                income_for_january_2007 = MockRepository.GenerateMock<Income>();
+                income_for_february_2007 = MockRepository.GenerateMock<Income>();
+                income_for_february_2008 = MockRepository.GenerateMock<Income>();
 
-                            income_for_january_2007.is_told_to(x => x.date_of_issue).it_will_return<Date>(new DateTime(2007, 01, 01));
-                            income_for_january_2007.is_told_to(x => x.amount_tendered).it_will_return(new Money(1000.00));
+                income_for_january_2007.is_told_to(x => x.date_of_issue).it_will_return<Date>(new DateTime(2007, 01, 01));
+                income_for_january_2007.is_told_to(x => x.amount_tendered).it_will_return(new Money(1000.00));
 
-                            income_for_february_2007.is_told_to(x => x.date_of_issue).it_will_return<Date>(new DateTime(2007, 02, 01));
-                            income_for_february_2007.is_told_to(x => x.amount_tendered).it_will_return(new Money(1000.00));
+                income_for_february_2007.is_told_to(x => x.date_of_issue).it_will_return<Date>(new DateTime(2007, 02, 01));
+                income_for_february_2007.is_told_to(x => x.amount_tendered).it_will_return(new Money(1000.00));
 
-                            income_for_february_2008.is_told_to(x => x.date_of_issue).it_will_return<Date>(new DateTime(2008, 02, 01));
-                            income_for_february_2008.is_told_to(x => x.amount_tendered).it_will_return(new Money(1000.00));
-                        };
+                income_for_february_2008.is_told_to(x => x.date_of_issue).it_will_return<Date>(new DateTime(2008, 02, 01));
+                income_for_february_2008.is_told_to(x => x.amount_tendered).it_will_return(new Money(1000.00));
+            };
 
             because b = () =>
-                        {
-                            sut.receive(income_for_january_2007);
-                            sut.receive(income_for_february_2007);
-                            sut.receive(income_for_february_2008);
-                            result = sut.calculate_income_for(2007);
-                        };
+            {
+                sut.receive(income_for_january_2007);
+                sut.receive(income_for_february_2007);
+                sut.receive(income_for_february_2008);
+                result = sut.calculate_income_for(2007);
+            };
 
             it should_return_the_correct_amount = () => result.should_be_equal_to(2000);
 
product/tests/unit/client/domain/accounting/BillSpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MoMoney.Domain.Core;
-
-namespace MoMoney.Domain.Accounting
+using System;
+using developwithpassion.bdd.contexts;
+using MoMoney.Domain.Accounting;
+using MoMoney.Domain.Core;
+
+namespace tests.unit.client.domain.accounting
 {
     [Concern(typeof (Bill))]
     public class when_checking_to_see_if_a_new_bill_has_been_paid_for : concerns_for<Bill>
@@ -16,10 +16,10 @@ namespace MoMoney.Domain.Accounting
         }
 
         context c = () =>
-                        {
-                            amount_owed = new Money(100);
-                            enmax = an<Company>();
-                        };
+        {
+            amount_owed = new Money(100);
+            enmax = an<Company>();
+        };
 
         because b = () => { result = sut.is_paid_for(); };
 
@@ -35,16 +35,16 @@ namespace MoMoney.Domain.Accounting
 
 
         context c = () =>
-                        {
-                            one_hundred_twenty_three_dollars_fourty_five_cents = new Money(123.45);
-                            direct_energy = an<Company>();
-                        };
+        {
+            one_hundred_twenty_three_dollars_fourty_five_cents = new Money(123.45);
+            direct_energy = an<Company>();
+        };
 
         because b = () =>
-                        {
-                            sut.pay(one_hundred_twenty_three_dollars_fourty_five_cents);
-                            result = sut.is_paid_for();
-                        };
+        {
+            sut.pay(one_hundred_twenty_three_dollars_fourty_five_cents);
+            result = sut.is_paid_for();
+        };
 
         public override Bill create_sut()
         {
product/tests/unit/client/domain/core/MoneyExtensionsSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Domain.Core
+using developwithpassion.bdd.contexts;
+using MoMoney.Domain.Core;
+
+namespace tests.unit.client.domain.core
 {
     public class when_converting_a_valid_amount_to_a_money : concerns
     {
product/tests/unit/client/domain/core/MoneySpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Domain.Core
+using developwithpassion.bdd.contexts;
+using MoMoney.Domain.Core;
+
+namespace tests.unit.client.domain.core
 {
     [Concern(typeof (Money))]
     public class when_adding_two_monies_together : concerns_for<Money>
@@ -9,9 +9,9 @@ namespace MoMoney.Domain.Core
         it should_return_the_correct_money = () => result.should_be_equal_to(new Money(2.98));
 
         because b = () =>
-                    {
-                        result = sut.add(new Money(1.99));
-                    };
+        {
+            result = sut.add(new Money(1.99));
+        };
 
         public override Money create_sut()
         {
@@ -28,9 +28,9 @@ namespace MoMoney.Domain.Core
 
 
         because b = () =>
-                    {
-                        result = sut.Equals(new Money(1.99));
-                    };
+        {
+            result = sut.Equals(new Money(1.99));
+        };
 
         public override Money create_sut()
         {
product/tests/unit/client/domain/core/RangeSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Domain.Core
+using developwithpassion.bdd.contexts;
+using MoMoney.Domain.Core;
+
+namespace tests.unit.client.domain.core
 {
     public class RangeSpecs
     {
@@ -65,9 +65,9 @@ namespace MoMoney.Domain.Core
         behaves_like_a_range_from_10_to_1
     {
         it should_flip_the_start_and_end_of_the_range = () =>
-                                                            {
-                                                                sut.start_of_range.should_be_equal_to(1);
-                                                                sut.end_of_range.should_be_equal_to(10);
-                                                            };
+        {
+            sut.start_of_range.should_be_equal_to(1);
+            sut.end_of_range.should_be_equal_to(10);
+        };
     }
 }
\ No newline at end of file
product/tests/unit/client/domain/core/RankingSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Domain.Core
+using developwithpassion.bdd.contexts;
+using MoMoney.Domain.Core;
+
+namespace tests.unit.client.domain.core
 {
     public class RankingSpecs
     {
@@ -10,18 +10,18 @@ namespace MoMoney.Domain.Core
     public abstract class behaves_like_a_list_of_calgary_flames_point_leaders : concerns_for<IRanking<string>, Ranking<string>>
     {
         after_the_sut_has_been_created c = () =>
-                        {
-                            sut.add("Jarome Iginla");
-                            sut.add("Mike Cammalleri");
-                            sut.add("Daymond Langkow");
-                            sut.add("Todd Bertuzzi");
-                            sut.add("Rene Bourque");
-                            sut.add("Dion Phaneuf");
-                            sut.add("Craig Conroy");
-                            sut.add("Curtis Glencross");
-                            sut.add("David Moss");
-                            sut.add("Adrian Aucoin");
-                        };
+        {
+            sut.add("Jarome Iginla");
+            sut.add("Mike Cammalleri");
+            sut.add("Daymond Langkow");
+            sut.add("Todd Bertuzzi");
+            sut.add("Rene Bourque");
+            sut.add("Dion Phaneuf");
+            sut.add("Craig Conroy");
+            sut.add("Curtis Glencross");
+            sut.add("David Moss");
+            sut.add("Adrian Aucoin");
+        };
     }
 
     public class when_someone_ranked_higher_is_compared_with_someone_ranked_lower :
product/tests/unit/client/presentation/core/ApplicationControllerSpecs.cs
@@ -1,8 +1,8 @@
 using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
+using MoMoney.Presentation.Core;
 using momoney.presentation.views;
 
-namespace MoMoney.Presentation.Core
+namespace tests.unit.client.presentation.core
 {
     public class ApplicationControllerSpecs
     {
product/tests/unit/client/presentation/model/ExitCommandSpecs.cs
@@ -1,11 +1,11 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MoMoney.Presentation.Core;
-using momoney.presentation.model.eventing;
-using MoMoney.Presentation.Model.Menu.File;
-using MoMoney.Service.Infrastructure.Eventing;
-
-namespace momoney.presentation.model.menu.file
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Core;
+using momoney.presentation.model.eventing;
+using momoney.presentation.model.menu.file;
+using MoMoney.Presentation.Model.Menu.File;
+using MoMoney.Service.Infrastructure.Eventing;
+
+namespace tests.unit.client.presentation.model
 {
     [Concern(typeof (ExitCommand))]
     public abstract class behaves_like_exit_command : concerns_for<IExitCommand>
product/tests/unit/client/presentation/model/NewCommandSpecs.cs
@@ -1,9 +1,9 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MoMoney.Presentation.Model.Menu.File;
-using MoMoney.Presentation.Model.Projects;
-
-namespace momoney.presentation.model.menu.file
+using developwithpassion.bdd.contexts;
+using momoney.presentation.model.menu.file;
+using MoMoney.Presentation.Model.Menu.File;
+using MoMoney.Presentation.Model.Projects;
+
+namespace tests.unit.client.presentation.model
 {
     [Concern(typeof (NewCommand))]
     public abstract class behaves_like_new_command : concerns_for<INewCommand, NewCommand>
product/tests/unit/client/presentation/model/OpenCommandSpecs.cs
@@ -1,11 +1,11 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Infrastructure.FileSystem;
-using Gorilla.Commons.Testing;
-using MoMoney.Presentation.Model.Menu.File;
-using MoMoney.Presentation.Model.Projects;
-using momoney.presentation.views;
-
-namespace momoney.presentation.model.menu.file
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.FileSystem;
+using momoney.presentation.model.menu.file;
+using MoMoney.Presentation.Model.Menu.File;
+using MoMoney.Presentation.Model.Projects;
+using momoney.presentation.views;
+
+namespace tests.unit.client.presentation.model
 {
     [Concern(typeof (OpenCommand))]
     public abstract class behaves_like_command_to_open_a_project : concerns_for<IOpenCommand, OpenCommand>
product/tests/unit/client/presentation/model/ProjectControllerSpecs.cs
@@ -1,14 +1,14 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Infrastructure.FileSystem;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-using momoney.presentation.model.eventing;
-using momoney.service.infrastructure;
-using MoMoney.Service.Infrastructure.Eventing;
-using momoney.service.infrastructure.transactions;
-
-namespace MoMoney.Presentation.Model.Projects
+using System;
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.FileSystem;
+using gorilla.commons.utility;
+using momoney.presentation.model.eventing;
+using MoMoney.Presentation.Model.Projects;
+using momoney.service.infrastructure;
+using MoMoney.Service.Infrastructure.Eventing;
+using momoney.service.infrastructure.transactions;
+
+namespace tests.unit.client.presentation.model
 {
     public class ProjectControllerSpecs
     {
product/tests/unit/client/presentation/model/ReportBindingExtensionsSpecs.cs
@@ -1,44 +1,44 @@
-using System;
-using DataDynamics.ActiveReports;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Model.reporting
-{
-    public class ReportBindingExtensionsSpecs
-    {
-    }
-
-    [Concern(typeof (ReportBindingExtensions))]
-    public class when_binding_a_active_report_control_to_a_string_property_of_a_dto : concerns
-    {
-        it should_set_the_controls_datafield_property_to_the_name_of_the_dtos_property =
-            () => control.was_told_to(x => x.DataField = "name");
-
-        context c = () => { control = dependency<ARControl>(); };
-
-        because b = () => control.bind_to<test_dto, string>(x => x.name);
-
-        static ARControl control;
-    }
-
-    [Concern(typeof (ReportBindingExtensions))]
-    public class when_binding_a_active_report_control_to_a_date_time_property_of_a_dto : concerns
-    {
-        it should_set_the_controls_datafield_property_to_the_name_of_the_dtos_property =
-            () => control.was_told_to(x => x.DataField = "birthdate");
-
-        context c = () => { control = dependency<ARControl>(); };
-
-        because b = () => control.bind_to<test_dto, DateTime>(x => x.birthdate);
-
-        static ARControl control;
-    }
-
-    public class test_dto
-    {
-        public string name { get; set; }
-        public long age { get; set; }
-        public DateTime birthdate { get; set; }
-    }
+using System;
+using DataDynamics.ActiveReports;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Model.reporting;
+
+namespace tests.unit.client.presentation.model
+{
+    public class ReportBindingExtensionsSpecs
+    {
+    }
+
+    [Concern(typeof (ReportBindingExtensions))]
+    public class when_binding_a_active_report_control_to_a_string_property_of_a_dto : concerns
+    {
+        it should_set_the_controls_datafield_property_to_the_name_of_the_dtos_property =
+            () => control.was_told_to(x => x.DataField = "name");
+
+        context c = () => { control = dependency<ARControl>(); };
+
+        because b = () => control.bind_to<test_dto, string>(x => x.name);
+
+        static ARControl control;
+    }
+
+    [Concern(typeof (ReportBindingExtensions))]
+    public class when_binding_a_active_report_control_to_a_date_time_property_of_a_dto : concerns
+    {
+        it should_set_the_controls_datafield_property_to_the_name_of_the_dtos_property =
+            () => control.was_told_to(x => x.DataField = "birthdate");
+
+        context c = () => { control = dependency<ARControl>(); };
+
+        because b = () => control.bind_to<test_dto, DateTime>(x => x.birthdate);
+
+        static ARControl control;
+    }
+
+    public class test_dto
+    {
+        public string name { get; set; }
+        public long age { get; set; }
+        public DateTime birthdate { get; set; }
+    }
 }
\ No newline at end of file
product/tests/unit/client/presentation/model/SaveAsCommandSpecs.cs
@@ -1,10 +1,10 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Infrastructure.FileSystem;
-using Gorilla.Commons.Testing;
-using MoMoney.Presentation.Model.Projects;
-using momoney.presentation.views;
-
-namespace momoney.presentation.model.menu.file
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.FileSystem;
+using momoney.presentation.model.menu.file;
+using MoMoney.Presentation.Model.Projects;
+using momoney.presentation.views;
+
+namespace tests.unit.client.presentation.model
 {
     [Concern(typeof (SaveAsCommand))]
     public class when_saving_the_current_project_to_a_new_file_path : concerns_for<ISaveAsCommand, SaveAsCommand>
product/tests/unit/client/presentation/model/SaveCommandSpecs.cs
@@ -1,8 +1,8 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MoMoney.Presentation.Model.Projects;
-
-namespace momoney.presentation.model.menu.file
+using developwithpassion.bdd.contexts;
+using momoney.presentation.model.menu.file;
+using MoMoney.Presentation.Model.Projects;
+
+namespace tests.unit.client.presentation.model
 {
     [Concern(typeof (SaveCommand))]
     public abstract class behaves_like_the_save_command : concerns_for<ISaveCommand, SaveCommand>
product/tests/unit/client/presentation/presenters/AddCompanyPresenterSpecs.cs
@@ -1,40 +1,40 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MoMoney.DTO;
-using MoMoney.Presentation.Views;
-using MoMoney.Service.Contracts.Application;
-
-namespace MoMoney.Presentation.Presenters
-{
-    [Concern(typeof (AddCompanyPresenter))]
-    public abstract class behaves_like_the_add_company_presenter : concerns_for<AddCompanyPresenter>
-    {
-        context c = () =>
-                    {
-                        view = the_dependency<IAddCompanyView>();
-                        pump = the_dependency<ICommandPump>();
-                    };
-
-        static protected IAddCompanyView view;
-        static protected ICommandPump pump;
-    }
-
-    [Concern(typeof (AddCompanyPresenter))]
-    public class when_registering_a_new_company : behaves_like_the_add_company_presenter
-    {
-        context c = () =>
-                    {
-                        dto = new RegisterNewCompany {company_name = "Microsoft"};
-                        when_the(pump)
-                            .is_told_to(x => x.run<IRegisterNewCompanyCommand, RegisterNewCompany>(dto))
-                            .it_will_return(pump);
-                    };
-
-        because b = () => sut.submit(dto);
-
-        it should_add_the_new_company =
-            () => pump.was_told_to(x => x.run<IRegisterNewCompanyCommand, RegisterNewCompany>(dto));
-
-        static RegisterNewCompany dto;
-    }
+using developwithpassion.bdd.contexts;
+using MoMoney.DTO;
+using MoMoney.Presentation.Presenters;
+using MoMoney.Presentation.Views;
+using MoMoney.Service.Contracts.Application;
+
+namespace tests.unit.client.presentation.presenters
+{
+    [Concern(typeof (AddCompanyPresenter))]
+    public abstract class behaves_like_the_add_company_presenter : concerns_for<AddCompanyPresenter>
+    {
+        context c = () =>
+        {
+            view = the_dependency<IAddCompanyView>();
+            pump = the_dependency<ICommandPump>();
+        };
+
+        static protected IAddCompanyView view;
+        static protected ICommandPump pump;
+    }
+
+    [Concern(typeof (AddCompanyPresenter))]
+    public class when_registering_a_new_company : behaves_like_the_add_company_presenter
+    {
+        context c = () =>
+        {
+            dto = new RegisterNewCompany {company_name = "Microsoft"};
+            when_the(pump)
+                .is_told_to(x => x.run<IRegisterNewCompanyCommand, RegisterNewCompany>(dto))
+                .it_will_return(pump);
+        };
+
+        because b = () => sut.submit(dto);
+
+        it should_add_the_new_company =
+            () => pump.was_told_to(x => x.run<IRegisterNewCompanyCommand, RegisterNewCompany>(dto));
+
+        static RegisterNewCompany dto;
+    }
 }
\ No newline at end of file
product/tests/unit/client/presentation/presenters/AddNewIncomePresenterSpecs.cs
@@ -1,13 +1,12 @@
-using System.Collections.Generic;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MoMoney.DTO;
+using System.Collections.Generic;
+using developwithpassion.bdd.contexts;
+using MoMoney.DTO;
 using MoMoney.Presentation.Presenters;
 using momoney.presentation.views;
-using MoMoney.Presentation.Views;
-using MoMoney.Service.Contracts.Application;
-
-namespace momoney.presentation.presenters
+using MoMoney.Presentation.Views;
+using MoMoney.Service.Contracts.Application;
+
+namespace tests.unit.client.presentation.presenters
 {
     [Concern(typeof (AddNewIncomePresenter))]
     public abstract class behaves_like_add_new_income_presenter : concerns_for< AddNewIncomePresenter>
product/tests/unit/client/presentation/presenters/CheckForUpdatesPresenterSpecs.cs
@@ -1,12 +1,12 @@
 using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
 using gorilla.commons.utility;
 using Gorilla.Commons.Utility;
+using momoney.presentation.presenters;
 using MoMoney.Presentation.Presenters;
 using momoney.presentation.views;
 using momoney.service.infrastructure.updating;
 
-namespace momoney.presentation.presenters
+namespace tests.unit.client.presentation.presenters
 {
     public class CheckForUpdatesPresentersSpecs
     {
product/tests/unit/client/presentation/presenters/GettingStartedPresenterSpecs.cs
@@ -1,18 +1,17 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using momoney.presentation.views;
-using MoMoney.Presentation.Views;
-
-namespace momoney.presentation.presenters
+using developwithpassion.bdd.contexts;
+using momoney.presentation.presenters;
+using momoney.presentation.views;
+
+namespace tests.unit.client.presentation.presenters
 {
     public class GettingStartedPresenterSpecs
     {
         public class behaves_like_the_getting_started_presenter : concerns_for<GettingStartedPresenter>
         {
             context c = () =>
-                        {
-                            view = the_dependency<IGettingStartedView>();
-                        };
+            {
+                view = the_dependency<IGettingStartedView>();
+            };
 
             static protected IGettingStartedView view;
         }
@@ -22,9 +21,9 @@ namespace momoney.presentation.presenters
             it should_display_the_getting_started_screen = () => shell.was_told_to(x => x.add(view));
 
             context c = () =>
-                        {
-                            shell = an<Shell>();
-                        };
+            {
+                shell = an<Shell>();
+            };
 
             because b = () => sut.present(shell);
             static Shell shell;
product/tests/unit/client/presentation/presenters/LogFileViewPresenterSpecs.cs
@@ -1,10 +1,9 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using momoney.presentation.views;
-using MoMoney.Presentation.Views;
-using momoney.service.infrastructure.logging;
-
-namespace momoney.presentation.presenters
+using developwithpassion.bdd.contexts;
+using momoney.presentation.presenters;
+using momoney.presentation.views;
+using momoney.service.infrastructure.logging;
+
+namespace tests.unit.client.presentation.presenters
 {
     public class behaves_like_log_file_presenter : concerns_for< LogFilePresenter>
     {
product/tests/unit/client/presentation/presenters/NavigationPresenterSpecs.cs
@@ -1,27 +0,0 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MoMoney.Presentation.Model.Navigation;
-using momoney.presentation.views;
-using MoMoney.Presentation.Views;
-
-namespace momoney.presentation.presenters
-{
-    [Concern(typeof (NavigationPresenter))]
-    public class when_building_the_navigation_tree : concerns_for< NavigationPresenter>
-    {
-        it should_visit_the_root_node_of_the_tree = () => view.was_told_to(x => x.accept(tree_view_visitor));
-
-        context c = () =>
-        {
-            shell = an<Shell>();
-            view = the_dependency<INavigationView>();
-            tree_view_visitor = the_dependency<INavigationTreeVisitor>();
-        };
-
-        because b = () => sut.present(shell);
-
-        static INavigationView view;
-        static INavigationTreeVisitor tree_view_visitor;
-        static Shell shell;
-    }
-}
\ No newline at end of file
product/tests/unit/client/presentation/presenters/RunTheSpecs.cs
@@ -1,10 +1,10 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MbUnit.Framework;
-using MoMoney.Presentation.Core;
-using MoMoney.Service.Infrastructure.Threading;
-
-namespace momoney.presentation.presenters
+using developwithpassion.bdd.contexts;
+using MbUnit.Framework;
+using MoMoney.Presentation.Core;
+using momoney.presentation.presenters;
+using MoMoney.Service.Infrastructure.Threading;
+
+namespace tests.unit.client.presentation.presenters
 {
     public class RunTheSpecs
     {
product/tests/unit/client/presentation/presenters/SplashScreenPresenterSpecs.cs
@@ -1,10 +1,10 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using momoney.presentation.views;
-using MoMoney.Service.Infrastructure.Threading;
-
-namespace MoMoney.Presentation.Presenters
+using System;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Presenters;
+using momoney.presentation.views;
+using MoMoney.Service.Infrastructure.Threading;
+
+namespace tests.unit.client.presentation.presenters
 {
     [Concern(typeof (SplashScreenPresenter))]
     public abstract class behaves_like_splash_screen_presenter : concerns_for<ISplashScreenPresenter>
product/tests/unit/client/presentation/presenters/StatusBarPresenterSpecs.cs
@@ -1,10 +1,10 @@
 using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
 using momoney.presentation.model.eventing;
+using momoney.presentation.presenters;
 using MoMoney.Presentation.Views;
 using MoMoney.Presentation.Winforms.Resources;
 
-namespace momoney.presentation.presenters
+namespace tests.unit.client.presentation.presenters
 {
     [Concern(typeof (StatusBarPresenter))]
     public class when_initializing_the_status_bar : concerns_for<StatusBarPresenter>
product/tests/unit/client/presentation/presenters/UnhandledErrorPresenterSpecs.cs
@@ -1,11 +1,11 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using momoney.presentation.model.eventing;
-using momoney.presentation.views;
-using MoMoney.Service.Infrastructure.Eventing;
-
-namespace momoney.presentation.presenters
+using System;
+using developwithpassion.bdd.contexts;
+using momoney.presentation.model.eventing;
+using momoney.presentation.presenters;
+using momoney.presentation.views;
+using MoMoney.Service.Infrastructure.Eventing;
+
+namespace tests.unit.client.presentation.presenters
 {
     public class behaves_like_unhandled_error_presenter : concerns_for<UnhandledErrorPresenter>
     {
product/tests/unit/client/presentation/winforms/databinding/BindingSelectorSpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using System.Linq.Expressions;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Databinding
+using System;
+using System.Linq.Expressions;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Databinding;
+
+namespace tests.unit.client.presentation.winforms.databinding
 {
     public class BindingSelectorSpecs
     {
@@ -19,22 +19,22 @@ namespace MoMoney.Presentation.Winforms.Databinding
             () => inspector.was_told_to(i => i.inspect(expression_to_parse));
 
         context c = () =>
-                        {
-                            thing_to_bind_to = an<IAnInterface>();
-                            factory = an<IPropertyInspectorFactory>();
-                            inspector = an<IPropertyInspector<IAnInterface, string>>();
+        {
+            thing_to_bind_to = an<IAnInterface>();
+            factory = an<IPropertyInspectorFactory>();
+            inspector = an<IPropertyInspector<IAnInterface, string>>();
 
-                            factory.is_told_to(f => f.create<IAnInterface, string>()).it_will_return(inspector);
+            factory.is_told_to(f => f.create<IAnInterface, string>()).it_will_return(inspector);
 
-                            inspector.is_told_to(i => i.inspect(null))
-                                .IgnoreArguments().it_will_return(typeof (IAnInterface).GetProperty("FirstName"));
-                        };
+            inspector.is_told_to(i => i.inspect(null))
+                .IgnoreArguments().it_will_return(typeof (IAnInterface).GetProperty("FirstName"));
+        };
 
         because b = () =>
-                        {
-                            expression_to_parse = (s => s.FirstName);
-                            result = sut.bind_to_property(expression_to_parse);
-                        };
+        {
+            expression_to_parse = (s => s.FirstName);
+            result = sut.bind_to_property(expression_to_parse);
+        };
 
         public override IBindingSelector<IAnInterface> create_sut()
         {
product/tests/unit/client/presentation/winforms/databinding/ComboBoxDataBindingSpecs.cs
@@ -1,8 +1,8 @@
-using System.Windows.Forms;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Databinding
+using System.Windows.Forms;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Databinding;
+
+namespace tests.unit.client.presentation.winforms.databinding
 {
     [Concern(typeof (Create))]
     public class when_binding_a_property_from_an_object_to_a_combo_box : concerns
@@ -11,17 +11,17 @@ namespace MoMoney.Presentation.Winforms.Databinding
             () => combo_box.SelectedItem.should_be_equal_to(baby_girl);
 
         context c = () =>
-                        {
-                            combo_box = new ComboBox();
-                            thing_to_bind_to = an<IAnInterface>();
-                            baby_girl = an<IAnInterface>();
-                            baby_boy = an<IAnInterface>();
+        {
+            combo_box = new ComboBox();
+            thing_to_bind_to = an<IAnInterface>();
+            baby_girl = an<IAnInterface>();
+            baby_boy = an<IAnInterface>();
 
-                            combo_box.Items.Add(baby_boy);
-                            combo_box.Items.Add(baby_girl);
+            combo_box.Items.Add(baby_boy);
+            combo_box.Items.Add(baby_girl);
 
-                            when_the(thing_to_bind_to).is_asked_for(t => t.Child).it_will_return(baby_girl);
-                        };
+            when_the(thing_to_bind_to).is_asked_for(t => t.Child).it_will_return(baby_girl);
+        };
 
         because b = () => Create
                               .binding_for(thing_to_bind_to)
@@ -41,20 +41,20 @@ namespace MoMoney.Presentation.Winforms.Databinding
             () => thing_to_bind_to.Child.should_be_equal_to(baby_boy);
 
         context c = () =>
-                        {
-                            combo_box = new ComboBox();
-                            baby_girl = an<IAnInterface>();
-                            baby_boy = an<IAnInterface>();
-                            thing_to_bind_to = new AnImplementation {Child = baby_girl};
+        {
+            combo_box = new ComboBox();
+            baby_girl = an<IAnInterface>();
+            baby_boy = an<IAnInterface>();
+            thing_to_bind_to = new AnImplementation {Child = baby_girl};
 
-                            combo_box.Items.Add(baby_boy);
-                            combo_box.Items.Add(baby_girl);
+            combo_box.Items.Add(baby_boy);
+            combo_box.Items.Add(baby_girl);
 
-                            Create
-                                .binding_for(thing_to_bind_to)
-                                .bind_to_property(t => t.Child)
-                                .bound_to_control(combo_box);
-                        };
+            Create
+                .binding_for(thing_to_bind_to)
+                .bind_to_property(t => t.Child)
+                .bound_to_control(combo_box);
+        };
 
         because b = () => { combo_box.SelectedItem = baby_boy; };
 
product/tests/unit/client/presentation/winforms/databinding/CreateSpecs.cs
@@ -1,8 +1,8 @@
-using System.Windows.Forms;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Databinding
+using System.Windows.Forms;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Databinding;
+
+namespace tests.unit.client.presentation.winforms.databinding
 {
     public class CreateSpecs
     {
@@ -11,11 +11,11 @@ namespace MoMoney.Presentation.Winforms.Databinding
     public abstract class when_a_text_control_is_bound_to_an_item : concerns
     {
         context c = () =>
-                        {
-                            textbox = new TextBox();
-                            item = new TestItem {name = "k"};
-                            textbox.bind_to(item, x => x.name);
-                        };
+        {
+            textbox = new TextBox();
+            item = new TestItem {name = "k"};
+            textbox.bind_to(item, x => x.name);
+        };
 
         static protected TextBox textbox;
         static protected TestItem item;
product/tests/unit/client/presentation/winforms/databinding/DateTimePropertyBindingSpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using System.Windows.Forms;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Databinding
+using System;
+using System.Windows.Forms;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Databinding;
+
+namespace tests.unit.client.presentation.winforms.databinding
 {
     [Concern(typeof (Create))]
     public class when_a_new_date_is_selected_by_a_date_time_picker_that_is_bound_to_a_property : concerns
@@ -12,14 +12,14 @@ namespace MoMoney.Presentation.Winforms.Databinding
             () => thing_to_bind_to.birth_day.should_be_equal_to(november_nineteenth);
 
         context c = () =>
-                        {
-                            date_time_picker = new DateTimePicker {Value = DateTime.Now};
-                            thing_to_bind_to = new TestDTO {birth_day = DateTime.Now};
+        {
+            date_time_picker = new DateTimePicker {Value = DateTime.Now};
+            thing_to_bind_to = new TestDTO {birth_day = DateTime.Now};
 
-                            Create.binding_for(thing_to_bind_to)
-                                .bind_to_property(x => x.birth_day)
-                                .bound_to_control(date_time_picker);
-                        };
+            Create.binding_for(thing_to_bind_to)
+                .bind_to_property(x => x.birth_day)
+                .bound_to_control(date_time_picker);
+        };
 
         because b = () => { date_time_picker.Value = november_nineteenth; };
 
product/tests/unit/client/presentation/winforms/databinding/PropertyBinderSpecs.cs
@@ -1,8 +1,8 @@
-using System.Reflection;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Databinding
+using System.Reflection;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Databinding;
+
+namespace tests.unit.client.presentation.winforms.databinding
 {
     [Concern(typeof (PropertyBinder<,>))]
     public abstract class behaves_like_a_property_binder :
@@ -14,10 +14,10 @@ namespace MoMoney.Presentation.Winforms.Databinding
         }
 
         context c = () =>
-                        {
-                            target = new AnImplementation {FirstName = "malik"};
-                            property = typeof (IAnInterface).GetProperty("FirstName");
-                        };
+        {
+            target = new AnImplementation {FirstName = "malik"};
+            property = typeof (IAnInterface).GetProperty("FirstName");
+        };
 
         static protected IAnInterface target;
         static protected PropertyInfo property;
product/tests/unit/client/presentation/winforms/databinding/PropertyInspectorSpecs.cs
@@ -1,8 +1,8 @@
-using System.Reflection;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Databinding
+using System.Reflection;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Databinding;
+
+namespace tests.unit.client.presentation.winforms.databinding
 {
     [Concern(typeof (PropertyInspector<,>))]
     public class when_parsing_a_valie_expression_for_the_information_on_the_property :
product/tests/unit/client/presentation/winforms/databinding/TextBoxDataBindingSpecs.cs
@@ -1,8 +1,8 @@
-using System.Windows.Forms;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Databinding
+using System.Windows.Forms;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Databinding;
+
+namespace tests.unit.client.presentation.winforms.databinding
 {
     [Concern(typeof (Create))]
     public class when_binding_a_property_on_an_object_to_a_textbox : concerns
@@ -11,11 +11,11 @@ namespace MoMoney.Presentation.Winforms.Databinding
             () => text_box.Text.should_be_equal_to(first_name);
 
         context c = () =>
-                        {
-                            thing_to_bind_to = an<IAnInterface>();
-                            text_box = new TextBox();
-                            thing_to_bind_to.is_asked_for(t => t.FirstName).it_will_return(first_name);
-                        };
+        {
+            thing_to_bind_to = an<IAnInterface>();
+            text_box = new TextBox();
+            thing_to_bind_to.is_asked_for(t => t.FirstName).it_will_return(first_name);
+        };
 
         because b = () => Create
                               .binding_for(thing_to_bind_to)
@@ -34,15 +34,15 @@ namespace MoMoney.Presentation.Winforms.Databinding
             () => thing_to_bind_to.FirstName.should_be_equal_to(expected_name);
 
         context c = () =>
-                        {
-                            thing_to_bind_to = new AnImplementation {FirstName = "abshir"};
-                            text_box = new TextBox();
+        {
+            thing_to_bind_to = new AnImplementation {FirstName = "abshir"};
+            text_box = new TextBox();
 
-                            Create
-                                .binding_for(thing_to_bind_to)
-                                .bind_to_property(t => t.FirstName)
-                                .bound_to_control(text_box);
-                        };
+            Create
+                .binding_for(thing_to_bind_to)
+                .bind_to_property(t => t.FirstName)
+                .bound_to_control(text_box);
+        };
 
         because b = () => { text_box.Text = expected_name; };
 
product/tests/unit/client/presentation/winforms/helpers/BindableListBoxSpecs.cs
@@ -1,8 +1,8 @@
-using System.Collections.Generic;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Helpers
+using System.Collections.Generic;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Helpers;
+
+namespace tests.unit.client.presentation.winforms.helpers
 {
     public class BindableListBoxSpecs
     {
@@ -20,10 +20,10 @@ namespace MoMoney.Presentation.Winforms.Helpers
     public class when_binding_a_bunch_of_items_to_a_list_control : behaves_like_bindable_list
     {
         it should_add_each_item_to_the_list_control = () =>
-                                                          {
-                                                              control.was_told_to(x => x.add_item("timone"));
-                                                              control.was_told_to(x => x.add_item("pumba"));
-                                                          };
+        {
+            control.was_told_to(x => x.add_item("timone"));
+            control.was_told_to(x => x.add_item("pumba"));
+        };
 
         because b = () => sut.bind_to(new List<string> {"timone", "pumba",});
     }
product/tests/unit/client/presentation/winforms/helpers/BindableTextBoxExtensionsSpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using System.Windows.Forms;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Helpers
+using System;
+using System.Windows.Forms;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Helpers;
+
+namespace tests.unit.client.presentation.winforms.helpers
 {
     public class BindableTextBoxExtensionsSpecs
     {
product/tests/unit/client/presentation/winforms/helpers/BindableTextBoxSpecs.cs
@@ -1,8 +1,8 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace MoMoney.Presentation.Winforms.Helpers
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using MoMoney.Presentation.Winforms.Helpers;
+
+namespace tests.unit.client.presentation.winforms.helpers
 {
     public class BindableTextBoxSpecs
     {
product/tests/unit/client/presentation/winforms/helpers/EventTriggerSpecs.cs
@@ -1,19 +1,19 @@
-using System;
-using System.Windows.Forms;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Helpers
+using System;
+using System.Windows.Forms;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Helpers;
+
+namespace tests.unit.client.presentation.winforms.helpers
 {
     [Concern(typeof (EventTrigger))]
     public class when_invoking_a_call_on_a_target_via_reflection : concerns
     {
         it should_correctly_call_that_method =
             () =>
-                {
-                    control.called_on_key_press.should_be_true();
-                    control.called_on_enter.should_be_false();
-                };
+            {
+                control.called_on_key_press.should_be_true();
+                control.called_on_enter.should_be_false();
+            };
 
         context c = () => { control = new TestControl(); };
 
product/tests/unit/client/presentation/winforms/helpers/RebindTextBoxCommandSpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using System.Linq.Expressions;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace MoMoney.Presentation.Winforms.Helpers
+using System;
+using System.Linq.Expressions;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Winforms.Helpers;
+
+namespace tests.unit.client.presentation.winforms.helpers
 {
     public class RebindTextBoxCommandSpecs
     {
@@ -14,10 +14,10 @@ namespace MoMoney.Presentation.Winforms.Helpers
         concerns_for<ITextBoxCommand<string>, RebindTextBoxCommand<string>>
     {
         context c = () =>
-                        {
-                            textbox = an<IBindableTextBox<string>>();
-                            binder = x => "";
-                        };
+        {
+            textbox = an<IBindableTextBox<string>>();
+            binder = x => "";
+        };
 
         public override ITextBoxCommand<string> create_sut()
         {
@@ -34,10 +34,10 @@ namespace MoMoney.Presentation.Winforms.Helpers
         it should_bind_the_text_control_to_the_new_item = () => textbox.was_told_to(x => x.bind_to("kat"));
 
         context c = () =>
-                        {
-                            binder = x => "kat";
-                            when_the(textbox).is_told_to(x => x.text()).it_will_return("kitty");
-                        };
+        {
+            binder = x => "kat";
+            when_the(textbox).is_told_to(x => x.text()).it_will_return("kitty");
+        };
 
         because b = () => sut.run(textbox);
     }
product/tests/unit/client/presentation/winforms/helpers/TextControlSpecs.cs
@@ -1,63 +1,63 @@
-using System;
-using System.Windows.Forms;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace MoMoney.Presentation.Winforms.Helpers
+using System;
+using System.Windows.Forms;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using MoMoney.Presentation.Winforms.Helpers;
+
+namespace tests.unit.client.presentation.winforms.helpers
 {
     public class TextControlSpecs
     {
 
-    [Concern(typeof (TextControl<>))]
-    public abstract class behaves_like_text_control : concerns_for<ITextControl<DateTime>, TextControl<DateTime>>
-    {
-        context c = () => { textbox = new TextBox(); };
-
-        public override ITextControl<DateTime> create_sut()
+        [Concern(typeof (TextControl<>))]
+        public abstract class behaves_like_text_control : concerns_for<ITextControl<DateTime>, TextControl<DateTime>>
         {
-            return new TextControl<DateTime>(textbox);
-        }
+            context c = () => { textbox = new TextBox(); };
 
-        static protected TextBox textbox;
-    }
+            public override ITextControl<DateTime> create_sut()
+            {
+                return new TextControl<DateTime>(textbox);
+            }
 
-    [Concern(typeof (TextControl<>))]
-    public class when_a_text_control_is_bound_to_an_item : behaves_like_text_control
-    {
-        it should_display_the_textual_version_of_the_item = () => textbox.Text.should_be_equal_to(date.ToString());
+            static protected TextBox textbox;
+        }
 
-        it should_bind_to_that_item = () => sut.get_selected_item().should_be_equal_to(date);
+        [Concern(typeof (TextControl<>))]
+        public class when_a_text_control_is_bound_to_an_item : behaves_like_text_control
+        {
+            it should_display_the_textual_version_of_the_item = () => textbox.Text.should_be_equal_to(date.ToString());
 
-        context c = () => { date = new DateTime(1984, 04, 28); };
+            it should_bind_to_that_item = () => sut.get_selected_item().should_be_equal_to(date);
 
-        because b = () => sut.set_selected_item(date);
+            context c = () => { date = new DateTime(1984, 04, 28); };
 
-        static DateTime date;
-    }
+            because b = () => sut.set_selected_item(date);
 
-    [Concern(typeof (TextControl<>))]
-    public class when_the_text_changes_on_a_text_control_and_action_is_specified : behaves_like_text_control
-    {
-        it should_invoke_the_action_bound_to_it = () => action.was_told_to(x => x.run());
+            static DateTime date;
+        }
 
-        context c = () => { action = an<Command>(); };
+        [Concern(typeof (TextControl<>))]
+        public class when_the_text_changes_on_a_text_control_and_action_is_specified : behaves_like_text_control
+        {
+            it should_invoke_the_action_bound_to_it = () => action.was_told_to(x => x.run());
 
-        because b = () =>
-                        {
-                            sut.when_text_is_changed = () => action.run();
-                            textbox.control_is(x => x.OnLeave(new EventArgs()));
-                        };
+            context c = () => { action = an<Command>(); };
 
-        static Command action;
-    }
+            because b = () =>
+            {
+                sut.when_text_is_changed = () => action.run();
+                textbox.control_is(x => x.OnLeave(new EventArgs()));
+            };
 
-    [Concern(typeof (TextControl<>))]
-    public class when_the_text_changes_on_a_text_control_and_action_is_not_specified : behaves_like_text_control
-    {
-        it should_not_blow_up = () => { };
+            static Command action;
+        }
 
-        because b = () => textbox.control_is(x => x.OnLeave(new EventArgs()));
-    }
+        [Concern(typeof (TextControl<>))]
+        public class when_the_text_changes_on_a_text_control_and_action_is_not_specified : behaves_like_text_control
+        {
+            it should_not_blow_up = () => { };
+
+            because b = () => textbox.control_is(x => x.OnLeave(new EventArgs()));
+        }
     }
 }
\ No newline at end of file
product/tests/unit/client/presentation/winforms/views/ApplicationShellSpecs.cs
@@ -1,11 +1,11 @@
 using System;
 using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
 using momoney.presentation.presenters;
 using momoney.presentation.views;
 using MoMoney.Presentation.Winforms.Helpers;
+using MoMoney.Presentation.Winforms.Views;
 
-namespace MoMoney.Presentation.Winforms.Views
+namespace tests.unit.client.presentation.winforms.views
 {
     public class ApplicationShellSpecs
     {
product/tests/unit/client/presentation/winforms/views/SaveChangesViewSpecs.cs
@@ -1,10 +1,10 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MoMoney.Presentation.Model.Menu.File;
-using MoMoney.Presentation.Winforms.Helpers;
-
-namespace MoMoney.Presentation.Winforms.Views
+using System;
+using developwithpassion.bdd.contexts;
+using MoMoney.Presentation.Model.Menu.File;
+using MoMoney.Presentation.Winforms.Helpers;
+using MoMoney.Presentation.Winforms.Views;
+
+namespace tests.unit.client.presentation.winforms.views
 {
     [Concern(typeof(SaveChangesView))]
     [Integration]
@@ -13,10 +13,10 @@ namespace MoMoney.Presentation.Winforms.Views
         context c = () => { presenter = an<SaveChangesPresenter>(); };
 
         after_the_sut_has_been_created after = () =>
-                                                   {
-                                                       save_changes_window = sut;
-                                                       save_changes_window.attach_to(presenter);
-                                                   };
+        {
+            save_changes_window = sut;
+            save_changes_window.attach_to(presenter);
+        };
 
         protected static SaveChangesPresenter presenter;
         protected static SaveChangesView save_changes_window;
product/tests/unit/client/service/application/AddNewIncomeCommandSpecs.cs
@@ -1,15 +1,15 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-using Gorilla.Commons.Utility;
-using MoMoney.Domain.Accounting;
-using MoMoney.Domain.repositories;
-using MoMoney.DTO;
-using MoMoney.Service.Contracts.Application;
-using Rhino.Mocks;
-
-namespace MoMoney.Service.Application
+using System;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using Gorilla.Commons.Utility;
+using MoMoney.Domain.Accounting;
+using MoMoney.Domain.repositories;
+using MoMoney.DTO;
+using MoMoney.Service.Application;
+using MoMoney.Service.Contracts.Application;
+using Rhino.Mocks;
+
+namespace tests.unit.client.service.application
 {
     public class AddNewIncomeCommandSpecs {}
 
product/tests/unit/client/service.infrastructure/eventing/EventAggregatorSpecs.cs
@@ -1,10 +1,10 @@
-using System.Data;
-using System.Threading;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using Rhino.Mocks;
-
-namespace MoMoney.Service.Infrastructure.Eventing
+using System.Data;
+using System.Threading;
+using developwithpassion.bdd.contexts;
+using MoMoney.Service.Infrastructure.Eventing;
+using Rhino.Mocks;
+
+namespace tests.unit.client.service.infrastructure.eventing
 {
     public abstract class behaves_like_event_aggregator : concerns_for<EventAggregator, SynchronizedEventAggregator>
     {
product/client/service.infrastructure/security/IsInRoleSpecs.cs โ†’ product/tests/unit/client/service.infrastructure/security/IsInRoleSpecs.cs
@@ -1,63 +1,63 @@
-using System.Security.Principal;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace MoMoney.Service.Infrastructure.Security
-{
-    public class IsInRoleSpecs
-    {
-        public class when_checking_if_a_principal_belongs_to_a_role :
-            concerns_for<Specification<IPrincipal>, IsInRole>
-        {
-            static protected readonly Role administrator_role = new Role("administrators");
-
-            public override Specification<IPrincipal> create_sut()
-            {
-                return new IsInRole(administrator_role);
-            }
-        }
-
-        public class when_not_in_one_of_the_roles : when_checking_if_a_principal_belongs_to_a_role
-        {
-            context c = () =>
-            {
-                principal = the_dependency<IPrincipal>();
-                when_the(principal)
-                    .is_told_to(x => x.IsInRole(administrator_role))
-                    .it_will_return(false);
-            };
-
-            because b = () =>
-            {
-                result = sut.is_satisfied_by(principal);
-            };
-
-            it should_return_false = () => result.should_be_false();
-
-            static bool result;
-            static IPrincipal principal;
-        }
-
-        public class when_in_one_of_the_roles : when_checking_if_a_principal_belongs_to_a_role
-        {
-            context c = () =>
-            {
-                principal = the_dependency<IPrincipal>();
-                when_the(principal)
-                    .is_told_to(x => x.IsInRole(administrator_role))
-                    .it_will_return(true);
-            };
-
-            because b = () =>
-            {
-                result = sut.is_satisfied_by(principal);
-            };
-
-            it should_return_true = () => result.should_be_true();
-
-            static bool result;
-            static IPrincipal principal;
-        }
-    }
-}
\ No newline at end of file
+using System.Security.Principal;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using MoMoney.Service.Infrastructure.Security;
+
+namespace tests.unit.client.service.infrastructure.security
+{
+    public class IsInRoleSpecs
+    {
+        public class when_checking_if_a_principal_belongs_to_a_role :
+            concerns_for<Specification<IPrincipal>, IsInRole>
+        {
+            static protected readonly Role administrator_role = new Role("administrators");
+
+            public override Specification<IPrincipal> create_sut()
+            {
+                return new IsInRole(administrator_role);
+            }
+        }
+
+        public class when_not_in_one_of_the_roles : when_checking_if_a_principal_belongs_to_a_role
+        {
+            context c = () =>
+            {
+                principal = the_dependency<IPrincipal>();
+                when_the(principal)
+                    .is_told_to(x => x.IsInRole(administrator_role))
+                    .it_will_return(false);
+            };
+
+            because b = () =>
+            {
+                result = sut.is_satisfied_by(principal);
+            };
+
+            it should_return_false = () => result.should_be_false();
+
+            static bool result;
+            static IPrincipal principal;
+        }
+
+        public class when_in_one_of_the_roles : when_checking_if_a_principal_belongs_to_a_role
+        {
+            context c = () =>
+            {
+                principal = the_dependency<IPrincipal>();
+                when_the(principal)
+                    .is_told_to(x => x.IsInRole(administrator_role))
+                    .it_will_return(true);
+            };
+
+            because b = () =>
+            {
+                result = sut.is_satisfied_by(principal);
+            };
+
+            it should_return_true = () => result.should_be_true();
+
+            static bool result;
+            static IPrincipal principal;
+        }
+    }
+}         
\ No newline at end of file
product/tests/unit/client/service.infrastructure/threading/BackgroundThreadFactorySpecs.cs
@@ -1,9 +1,9 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Infrastructure.Container;
-using Gorilla.Commons.Testing;
-using gorilla.commons.Utility;
-
-namespace momoney.service.infrastructure.threading
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.Container;
+using gorilla.commons.Utility;
+using momoney.service.infrastructure.threading;
+
+namespace tests.unit.client.service.infrastructure.threading
 {
     [Concern(typeof (BackgroundThreadFactory))]
     public abstract class behaves_like_a_background_thread_factory : concerns_for<IBackgroundThreadFactory, BackgroundThreadFactory>
product/tests/unit/client/service.infrastructure/threading/BackgroundThreadSpecs.cs
@@ -1,9 +1,9 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.Utility;
-using Rhino.Mocks;
-
-namespace momoney.service.infrastructure.threading
+using developwithpassion.bdd.contexts;
+using gorilla.commons.Utility;
+using momoney.service.infrastructure.threading;
+using Rhino.Mocks;
+
+namespace tests.unit.client.service.infrastructure.threading
 {
     [Concern(typeof (BackgroundThread))]
     public abstract class behaves_like_a_background_thread : concerns_for<IBackgroundThread, BackgroundThread>
product/tests/unit/client/service.infrastructure/threading/CommandProcessorSpecs.cs
@@ -1,9 +1,8 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-using MoMoney.Service.Infrastructure.Threading;
-
-namespace momoney.service.infrastructure.threading
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+using MoMoney.Service.Infrastructure.Threading;
+
+namespace tests.unit.client.service.infrastructure.threading
 {
     [Concern(typeof (SynchronousCommandProcessor))]
     public abstract class behaves_like_a_command_processor : concerns_for<CommandProcessor, SynchronousCommandProcessor> {}
product/tests/unit/client/service.infrastructure/threading/IntervalTimerSpecs.cs
@@ -1,11 +1,11 @@
-using System;
-using System.Timers;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MoMoney.Service.Infrastructure.Threading;
-using Rhino.Mocks;
-
-namespace momoney.service.infrastructure.threading
+using System;
+using System.Timers;
+using developwithpassion.bdd.contexts;
+using momoney.service.infrastructure.threading;
+using MoMoney.Service.Infrastructure.Threading;
+using Rhino.Mocks;
+
+namespace tests.unit.client.service.infrastructure.threading
 {
     [Concern(typeof (IntervalTimer))]
     public abstract class behaves_like_an_interval_timer : concerns_for<ITimer, IntervalTimer>
@@ -106,7 +106,7 @@ namespace momoney.service.infrastructure.threading
             timer = dependency<Timer>();
 
             when_the(factory).is_told_to(t => t.create_for(Arg<TimeSpan>.Is.Anything)).it_will_return(
-                timer);
+                                                                                                         timer);
         };
 
         because b = () =>
product/tests/unit/client/service.infrastructure/threading/RunOnBackgroundThreadInterceptorSpecs.cs
@@ -1,9 +1,9 @@
-using Castle.Core.Interceptor;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.Utility;
-
-namespace momoney.service.infrastructure.threading
+using Castle.Core.Interceptor;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.Utility;
+using momoney.service.infrastructure.threading;
+
+namespace tests.unit.client.service.infrastructure.threading
 {
     [Concern(typeof (RunOnBackgroundThreadInterceptor<>))]
     public abstract class behaves_like_background_thread_interceptor :
product/tests/unit/client/service.infrastructure/threading/TimerFactorySpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using System.Timers;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace momoney.service.infrastructure.threading
+using System;
+using System.Timers;
+using developwithpassion.bdd.contexts;
+using momoney.service.infrastructure.threading;
+
+namespace tests.unit.client.service.infrastructure.threading
 {
     [Concern(typeof (TimerFactory))]
     public abstract class behaves_like_a_timer_factory : concerns_for<ITimerFactory, TimerFactory>
product/tests/unit/client/service.infrastructure/transactions/UnitOfWorkFactorySpecs.cs
@@ -1,9 +1,9 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using momoney.database.transactions;
-using momoney.service.infrastructure.transactions;
-
-namespace MoMoney.Service.Infrastructure.Transactions
+using developwithpassion.bdd.contexts;
+using momoney.database.transactions;
+using momoney.service.infrastructure.transactions;
+using MoMoney.Service.Infrastructure.Transactions;
+
+namespace tests.unit.client.service.infrastructure.transactions
 {
     public class UnitOfWorkFactorySpecs
     {
product/tests/unit/client/service.infrastructure/transactions/UnitOfWorkSpecs.cs
@@ -1,9 +1,9 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using momoney.database.transactions;
-using momoney.service.infrastructure.transactions;
-
-namespace MoMoney.Service.Infrastructure.Transactions
+using developwithpassion.bdd.contexts;
+using momoney.database.transactions;
+using momoney.service.infrastructure.transactions;
+using MoMoney.Service.Infrastructure.Transactions;
+
+namespace tests.unit.client.service.infrastructure.transactions
 {
     public class UnitOfWorkSpecs
     {
product/tests/unit/client/service.infrastructure/updating/CancelUpdateSpecs.cs
@@ -1,8 +1,8 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MoMoney.Service.Infrastructure.Updating;
-
-namespace momoney.service.infrastructure.updating
+using developwithpassion.bdd.contexts;
+using momoney.service.infrastructure.updating;
+using MoMoney.Service.Infrastructure.Updating;
+
+namespace tests.unit.client.service.infrastructure.updating
 {
     public class CancelUpdateSpecs
     {
product/tests/unit/commons/infrastructure/BinarySerializerSpecs.cs
@@ -1,10 +1,10 @@
-using System;
-using System.IO;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using MbUnit.Framework;
-
-namespace Gorilla.Commons.Infrastructure.Cloning
+using System;
+using System.IO;
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.Cloning;
+using MbUnit.Framework;
+
+namespace tests.unit.commons.infrastructure
 {
     [Concern(typeof (BinarySerializer<TestItem>))]
     public abstract class when_a_file_is_specified_to_serialize_an_item_to : concerns_for<Serializer<TestItem>, BinarySerializer<TestItem>>
@@ -37,10 +37,10 @@ namespace Gorilla.Commons.Infrastructure.Cloning
         context c = () => { original = new TestItem("hello world"); };
 
         because b = () =>
-                        {
-                            sut.serialize(original);
-                            result = sut.deserialize();
-                        };
+        {
+            sut.serialize(original);
+            result = sut.deserialize();
+        };
 
         static TestItem original;
         static TestItem result;
product/tests/unit/commons/infrastructure/DefaultRegistrySpecs.cs
@@ -1,10 +1,10 @@
-using System.Collections.Generic;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Infrastructure.Container;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace Gorilla.Commons.Infrastructure.Registries
+using System.Collections.Generic;
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.Container;
+using Gorilla.Commons.Infrastructure.Registries;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.infrastructure
 {
     [Concern(typeof (DefaultRegistry<int>))]
     public class when_retrieving_all_the_items_from_the_default_repository :
@@ -16,11 +16,11 @@ namespace Gorilla.Commons.Infrastructure.Registries
         it should_return_the_items_resolved_by_the_registry = () => result.should_contain(24);
 
         context c = () =>
-                        {
-                            var items_to_return = new List<int> {24};
-                            registry = an<DependencyRegistry>();
-                            registry.is_told_to(r => r.get_all<int>()).it_will_return(items_to_return);
-                        };
+        {
+            var items_to_return = new List<int> {24};
+            registry = an<DependencyRegistry>();
+            registry.is_told_to(r => r.get_all<int>()).it_will_return(items_to_return);
+        };
 
         public override Registry<int> create_sut()
         {
product/tests/unit/commons/infrastructure/LogSpecs.cs
@@ -1,8 +1,8 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Infrastructure.Container;
-using Gorilla.Commons.Testing;
-
-namespace Gorilla.Commons.Infrastructure.Logging
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.Container;
+using Gorilla.Commons.Infrastructure.Logging;
+
+namespace tests.unit.commons.infrastructure
 {
     [Concern(typeof (Log))]
     public class when_creating_a_logger_for_a_particular_type_ : concerns
@@ -11,15 +11,15 @@ namespace Gorilla.Commons.Infrastructure.Logging
 
         context c =
             () =>
-                {
-                    var factory = an<LogFactory>();
-                    var registry = an<DependencyRegistry>();
-                    logger = an<Logger>();
-                    registry.is_told_to(x => x.get_a<LogFactory>()).it_will_return(factory);
-                    factory.is_told_to(x => x.create_for(typeof (string))).it_will_return(logger);
+            {
+                var factory = an<LogFactory>();
+                var registry = an<DependencyRegistry>();
+                logger = an<Logger>();
+                registry.is_told_to(x => x.get_a<LogFactory>()).it_will_return(factory);
+                factory.is_told_to(x => x.create_for(typeof (string))).it_will_return(logger);
 
-                    Resolve.initialize_with(registry);
-                };
+                Resolve.initialize_with(registry);
+            };
 
         because b = () => { result = Log.For("mo"); };
 
product/tests/unit/commons/infrastructure/ProxyFactorySpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace Gorilla.Commons.Infrastructure.Proxies
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.Proxies;
+
+namespace tests.unit.commons.infrastructure
 {
     public class ProxyFactorySpecs
     {
product/tests/unit/commons/infrastructure/ResolveSpecs.cs
@@ -1,9 +1,9 @@
-using System;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
-
-namespace Gorilla.Commons.Infrastructure.Container
+using System;
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.Container;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.infrastructure
 {
     [Concern(typeof (Resolve))]
     public abstract class behaves_like_a_inversion_of_control_container : concerns
@@ -14,12 +14,12 @@ namespace Gorilla.Commons.Infrastructure.Container
     public class when_resolving_a_dependency_using_the_container : behaves_like_a_inversion_of_control_container
     {
         context c = () =>
-                        {
-                            registry = an<DependencyRegistry>();
-                            presenter = an<Command>();
-                            registry.is_told_to(x => x.get_a<Command>()).it_will_return(presenter);
-                            Resolve.initialize_with(registry);
-                        };
+        {
+            registry = an<DependencyRegistry>();
+            presenter = an<Command>();
+            registry.is_told_to(x => x.get_a<Command>()).it_will_return(presenter);
+            Resolve.initialize_with(registry);
+        };
 
         because b = () => { result = Resolve.the<Command>(); };
 
@@ -39,11 +39,11 @@ namespace Gorilla.Commons.Infrastructure.Container
     public class when_resolving_a_dependency_that_is_not_registered_ : behaves_like_a_inversion_of_control_container
     {
         context c = () =>
-                        {
-                            registry = an<DependencyRegistry>();
-                            registry.is_told_to(x => x.get_a<Command>()).it_will_throw(new Exception());
-                            Resolve.initialize_with(registry);
-                        };
+        {
+            registry = an<DependencyRegistry>();
+            registry.is_told_to(x => x.get_a<Command>()).it_will_throw(new Exception());
+            Resolve.initialize_with(registry);
+        };
 
         because b = () => { the_call = call.to(() => Resolve.the<Command>()); };
 
product/tests/unit/commons/infrastructure.thirdparty/autofac/AutofacSpecs.cs
@@ -1,71 +1,70 @@
-using System.Collections.Generic;
-using System.Linq;
-using Autofac;
-using Autofac.Builder;
-using Autofac.Modules;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.infrastructure.thirdparty.autofac
-{
-    [Concern(typeof (ContainerBuilder))]
-    public class when_trying_to_register_a_single_item_in_the_autofac_container : concerns
-    {
-        it should_resolve_that_item = () => result.should_be_an_instance_of<A>();
-
-        context c = () =>
-        {
-            builder = new ContainerBuilder();
-            builder.Register<A>().As<ITestItem>().FactoryScoped();
-            container = builder.Build();
-        };
-
-        because b = () => { result = container.Resolve<ITestItem>(); };
-
-        after_each_observation after_each = () => container.Dispose();
-
-        static ContainerBuilder builder;
-        static IContainer container;
-        static ITestItem result;
-    }
-
-    [Concern(typeof (ContainerBuilder))]
-    public class when_trying_to_resolve_all_the_components_that_implement_a_common_interface : concerns
-    {
-        it should_return_each_component = () =>
-        {
-            results.Count().should_be_equal_to(2);
-            results.First().should_be_an_instance_of<A>();
-            results.Skip(1).First().should_be_an_instance_of<B>();
-        };
-
-        context c = () =>
-        {
-            builder = new ContainerBuilder();
-            builder.RegisterModule(new ImplicitCollectionSupportModule());
-            builder.Register<A>().As<ITestItem>().FactoryScoped();
-            builder.Register<B>().As<ITestItem>().FactoryScoped();
-            container = builder.Build();
-        };
-
-        because b = () => { results = container.Resolve<IEnumerable<ITestItem>>(); };
-
-        after_each_observation after_each = () => container.Dispose();
-
-        static ContainerBuilder builder;
-        static IContainer container;
-        static IEnumerable<ITestItem> results;
-    }
-
-    public interface ITestItem
-    {
-    }
-
-    public class A : ITestItem
-    {
-    }
-
-    public class B : ITestItem
-    {
-    }
+using System.Collections.Generic;
+using System.Linq;
+using Autofac;
+using Autofac.Builder;
+using Autofac.Modules;
+using developwithpassion.bdd.contexts;
+
+namespace tests.unit.commons.infrastructure.thirdparty.autofac
+{
+    [Concern(typeof (ContainerBuilder))]
+    public class when_trying_to_register_a_single_item_in_the_autofac_container : concerns
+    {
+        it should_resolve_that_item = () => result.should_be_an_instance_of<A>();
+
+        context c = () =>
+        {
+            builder = new ContainerBuilder();
+            builder.Register<A>().As<ITestItem>().FactoryScoped();
+            container = builder.Build();
+        };
+
+        because b = () => { result = container.Resolve<ITestItem>(); };
+
+        after_each_observation after_each = () => container.Dispose();
+
+        static ContainerBuilder builder;
+        static IContainer container;
+        static ITestItem result;
+    }
+
+    [Concern(typeof (ContainerBuilder))]
+    public class when_trying_to_resolve_all_the_components_that_implement_a_common_interface : concerns
+    {
+        it should_return_each_component = () =>
+        {
+            results.Count().should_be_equal_to(2);
+            results.First().should_be_an_instance_of<A>();
+            results.Skip(1).First().should_be_an_instance_of<B>();
+        };
+
+        context c = () =>
+        {
+            builder = new ContainerBuilder();
+            builder.RegisterModule(new ImplicitCollectionSupportModule());
+            builder.Register<A>().As<ITestItem>().FactoryScoped();
+            builder.Register<B>().As<ITestItem>().FactoryScoped();
+            container = builder.Build();
+        };
+
+        because b = () => { results = container.Resolve<IEnumerable<ITestItem>>(); };
+
+        after_each_observation after_each = () => container.Dispose();
+
+        static ContainerBuilder builder;
+        static IContainer container;
+        static IEnumerable<ITestItem> results;
+    }
+
+    public interface ITestItem
+    {
+    }
+
+    public class A : ITestItem
+    {
+    }
+
+    public class B : ITestItem
+    {
+    }
 }
\ No newline at end of file
product/tests/unit/commons/infrastructure.thirdparty/castle/InterceptorConstraintFactorySpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy
+using developwithpassion.bdd.contexts;
+using gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy;
+
+namespace tests.unit.commons.infrastructure.thirdparty.castle
 {
     [Concern(typeof (CastleDynamicInterceptorConstraintFactory))]
     public abstract class behaves_like_constraint_factory :
product/tests/unit/commons/infrastructure.thirdparty/castle/InterceptorConstraintSpecs.cs
@@ -1,9 +1,9 @@
-using System.Collections.Generic;
-using developwithpassion.bdd.contexts;
-using gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy.Interceptors;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy
+using System.Collections.Generic;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy;
+using gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy.Interceptors;
+
+namespace tests.unit.commons.infrastructure.thirdparty.castle
 {
     [Concern(typeof (CastleDynamicInterceptorConstraint<>))]
     public abstract class behaves_like_constraint : concerns_for<InterceptorConstraint<string>, CastleDynamicInterceptorConstraint<string>>
product/tests/unit/commons/infrastructure.thirdparty/castle/LazySpecs.cs
@@ -1,8 +1,8 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Infrastructure.Container;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Infrastructure.Container;
+using gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy;
+
+namespace tests.unit.commons.infrastructure.thirdparty.castle
 {
     public class LazySpecs
     {
product/tests/unit/commons/infrastructure.thirdparty/castle/MethodCallTrackerSpecs.cs
@@ -1,10 +1,10 @@
-using System.Collections.Generic;
-using System.Linq;
-using Castle.Core.Interceptor;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy.Interceptors
+using System.Collections.Generic;
+using System.Linq;
+using Castle.Core.Interceptor;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy.Interceptors;
+
+namespace tests.unit.commons.infrastructure.thirdparty.castle
 {
     [Concern(typeof (CastleDynamicMethodCallTracker<>))]
     public class behaves_like_method_call_tracker :
product/tests/unit/commons/infrastructure.thirdparty/castle/ProxyBuilderSpecs.cs
@@ -1,12 +1,12 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reflection;
-using Castle.Core.Interceptor;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Reflection;
+using Castle.Core.Interceptor;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy;
+
+namespace tests.unit.commons.infrastructure.thirdparty.castle
 {
     [Concern(typeof (CastleDynamicProxyBuilder<>))]
     public abstract class behaves_like_proxy_builder : concerns_for<ProxyBuilder<IAnInterface>, CastleDynamicProxyBuilder<IAnInterface>>
product/tests/unit/commons/infrastructure.thirdparty/castle/ProxyFactorySpecs.cs
@@ -1,11 +1,11 @@
-using System;
-using System.Data;
-using Castle.Core.Interceptor;
-using developwithpassion.bdd.contexts;
-using developwithpassion.bdd.mbunit;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy
+using System;
+using System.Data;
+using Castle.Core.Interceptor;
+using developwithpassion.bdd.contexts;
+using developwithpassion.bdd.mbunit;
+using gorilla.commons.infrastructure.thirdparty.Castle.DynamicProxy;
+
+namespace tests.unit.commons.infrastructure.thirdparty.castle
 {
     [Concern(typeof(CastleDynamicProxyFactory))]
     public abstract class behaves_like_proxy_factory : concerns_for<ProxyFactory, CastleDynamicProxyFactory>
product/tests/unit/commons/utility/ConfigurationExtensionsSpecs.cs
@@ -1,8 +1,8 @@
-using System.Data;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.utility
+using System.Data;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.utility
 {
     public class ConfigurationExtensionsSpecs
     {
product/tests/unit/commons/utility/DateSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace Gorilla.Commons.Utility
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Utility;
+
+namespace tests.unit.commons.utility
 {
     public class DateSpecs
     {
product/tests/unit/commons/utility/EnumerableExtensionsSpecs.cs
@@ -1,8 +1,8 @@
-using System.Collections.Generic;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.utility
+using System.Collections.Generic;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.utility
 {
     public class EnumerableExtensionsSpecs
     {
product/tests/unit/commons/utility/ListExtensionsSpecs.cs
@@ -1,8 +1,8 @@
-using System.Collections.Generic;
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.utility
+using System.Collections.Generic;
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.utility
 {
     public class ListExtensionsSpecs
     {
product/tests/unit/commons/utility/MappingExtensionsSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.utility
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.utility
 {
     [Concern(typeof (MappingExtensions))]
     public class when_transforming_type_A_to_type_B_then_C : concerns
product/tests/unit/commons/utility/NotSpecificationSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.utility
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.utility
 {
     public class NotSpecificationSpecs
     {
product/tests/unit/commons/utility/NumericConversionsSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.utility
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.utility
 {
     [Concern(typeof (NumericConversions))]
     public class when_converting_a_valid_string_to_a_long : concerns
product/tests/unit/commons/utility/OrSpecificationSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.utility
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.utility
 {
     public class OrSpecificationSpecs
     {
product/tests/unit/commons/utility/PercentSpecs.cs
@@ -1,8 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-using gorilla.commons.utility;
+using developwithpassion.bdd.contexts;
+using Gorilla.Commons.Utility;
 
-namespace Gorilla.Commons.Utility
+namespace tests.unit.commons.utility
 {
     [Concern(typeof (Percent))]
     public class when_comparing_fifty_divided_by_one_hundred_to_fifty_percent : concerns
product/tests/unit/commons/utility/PredicateSpecificationSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.utility
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.utility
 {
     public class PredicateSpecificationSpecs
     {
product/tests/unit/commons/utility/SpecificationExtensionsSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.utility
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.utility
 {
     public class SpecificationExtensionsSpecs
     {
product/tests/unit/commons/utility/TypeExtensionsSpecs.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.contexts;
-using Gorilla.Commons.Testing;
-
-namespace gorilla.commons.utility
+using developwithpassion.bdd.contexts;
+using gorilla.commons.utility;
+
+namespace tests.unit.commons.utility
 {
     public class TypeExtensionsSpecs
     {
product/tests/assertions.cs
@@ -1,10 +1,10 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using JetBrains.Annotations;
-using MbUnit.Framework;
-
-namespace Gorilla.Commons.Testing
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using JetBrains.Annotations;
+using MbUnit.Framework;
+
+namespace tests
 {
     public static class Assertions
     {
product/tests/Call.cs
@@ -1,12 +1,12 @@
-using System;
-
-namespace Gorilla.Commons.Testing
-{
-    public class call
-    {
-        public static Action to(Action action)
-        {
-            return action;
-        }
-    }
+using System;
+
+namespace tests
+{
+    public class call
+    {
+        public static Action to(Action action)
+        {
+            return action;
+        }
+    }
 }
\ No newline at end of file
product/tests/ConcernAttribute.cs
@@ -1,11 +1,11 @@
-using System;
-
-namespace Gorilla.Commons.Testing
-{
-    public class ConcernAttribute : bdddoc.core.ConcernAttribute
-    {
-        public ConcernAttribute(Type concern) : base(concern)
-        {
-        }
-    }
+using System;
+
+namespace tests
+{
+    public class ConcernAttribute : bdddoc.core.ConcernAttribute
+    {
+        public ConcernAttribute(Type concern) : base(concern)
+        {
+        }
+    }
 }
\ No newline at end of file
product/tests/concerns.cs
@@ -1,7 +1,7 @@
-using developwithpassion.bdd.mbunit.standard.observations;
-using Rhino.Mocks;
-
-namespace Gorilla.Commons.Testing
+using developwithpassion.bdd.mbunit.standard.observations;
+using Rhino.Mocks;
+
+namespace tests
 {
     public abstract class concerns_for<Contract> : observations_for_a_sut_without_a_contract<Contract>,
                                                    IHideObjectMembers
product/tests/EmptyFixture.cs
@@ -1,6 +1,6 @@
-using MbUnit.Framework;
-
-namespace Gorilla.Commons.Testing
+using MbUnit.Framework;
+
+namespace tests
 {
     [TestFixture]
     public class EmptyFixture
product/tests/IHideObjectMembers.cs
@@ -1,7 +1,7 @@
-using System;
-using System.ComponentModel;
-
-namespace Gorilla.Commons.Testing
+using System;
+using System.ComponentModel;
+
+namespace tests
 {
     [EditorBrowsable(EditorBrowsableState.Never)]
     public interface IHideObjectMembers
product/tests/IntegrationAttribute.cs
@@ -1,6 +1,6 @@
-using MbUnit.Framework;
-
-namespace Gorilla.Commons.Testing
+using MbUnit.Framework;
+
+namespace tests
 {
     public class IntegrationAttribute : FixtureCategoryAttribute
     {
product/tests/MethodCallOccurance.cs
@@ -1,7 +1,7 @@
-using System;
-using Rhino.Mocks;
-
-namespace Gorilla.Commons.Testing
+using System;
+using Rhino.Mocks;
+
+namespace tests
 {
     public class MethodCallOccurance<T> : IHideObjectMembers
     {
product/tests/MockingExtensions.cs
@@ -1,10 +1,10 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using Rhino.Mocks;
-using Rhino.Mocks.Interfaces;
-
-namespace Gorilla.Commons.Testing
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Rhino.Mocks;
+using Rhino.Mocks.Interfaces;
+
+namespace tests
 {
     public static class MockingExtensions
     {
product/tests/tests.csproj
@@ -31,6 +31,14 @@
     <WarningLevel>4</WarningLevel>
   </PropertyGroup>
   <ItemGroup>
+    <Reference Include="ActiveReports6, Version=6.0.1797.0, Culture=neutral, PublicKeyToken=cc4967777c49a3ff, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\build\lib\app\active.reports\ActiveReports6.dll</HintPath>
+    </Reference>
+    <Reference Include="Autofac, Version=1.0.0.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\build\lib\app\auto.fac\Autofac.dll</HintPath>
+    </Reference>
     <Reference Include="bdddoc, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>..\..\build\lib\test\bdd.doc\bdddoc.dll</HintPath>
@@ -51,6 +59,10 @@
       <SpecificVersion>False</SpecificVersion>
       <HintPath>..\..\build\lib\test\developwithpassion\developwithpassion.commons.core.infrastructure.dll</HintPath>
     </Reference>
+    <Reference Include="JetBrains.Annotations, Version=4.5.1181.216, Culture=neutral, PublicKeyToken=1010a0d8d6380325, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\build\lib\app\jetbrains\JetBrains.Annotations.dll</HintPath>
+    </Reference>
     <Reference Include="MbUnit.Framework, Version=2.4.2.175, Culture=neutral, PublicKeyToken=5e72ecd30bc408d5">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>..\..\build\lib\test\mbunit\MbUnit.Framework.dll</HintPath>
@@ -72,6 +84,10 @@
     </Reference>
     <Reference Include="System.Data" />
     <Reference Include="System.Xml" />
+    <Reference Include="WeifenLuo.WinFormsUI.Docking, Version=2.3.3392.19652, Culture=neutral, PublicKeyToken=b602bcfb76b4e90d, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\..\build\lib\app\dock.panel.suite\WeifenLuo.WinFormsUI.Docking.dll</HintPath>
+    </Reference>
   </ItemGroup>
   <ItemGroup>
     <Compile Include="assertions.cs" />
@@ -123,7 +139,6 @@
     <Compile Include="unit\client\presentation\presenters\CheckForUpdatesPresenterSpecs.cs" />
     <Compile Include="unit\client\presentation\presenters\GettingStartedPresenterSpecs.cs" />
     <Compile Include="unit\client\presentation\presenters\LogFileViewPresenterSpecs.cs" />
-    <Compile Include="unit\client\presentation\presenters\NavigationPresenterSpecs.cs" />
     <Compile Include="unit\client\presentation\presenters\RunTheSpecs.cs" />
     <Compile Include="unit\client\presentation\presenters\SplashScreenPresenterSpecs.cs" />
     <Compile Include="unit\client\presentation\presenters\StatusBarPresenterSpecs.cs" />
@@ -144,6 +159,7 @@
     <Compile Include="unit\client\presentation\winforms\views\ApplicationShellSpecs.cs" />
     <Compile Include="unit\client\presentation\winforms\views\SaveChangesViewSpecs.cs" />
     <Compile Include="unit\client\service.infrastructure\eventing\EventAggregatorSpecs.cs" />
+    <Compile Include="unit\client\service.infrastructure\security\IsInRoleSpecs.cs" />
     <Compile Include="unit\client\service.infrastructure\threading\BackgroundThreadFactorySpecs.cs" />
     <Compile Include="unit\client\service.infrastructure\threading\BackgroundThreadSpecs.cs" />
     <Compile Include="unit\client\service.infrastructure\threading\CommandProcessorSpecs.cs" />