Commit c241b5a

mo khan <mo.khan@gmail.com>
2019-10-21 01:58:58
remove infrastructure namespace
1 parent cc4b5d1
lib/infrastructure/cloning/BinarySerializer.cs → lib/cloning/BinarySerializer.cs
@@ -1,6 +1,6 @@
 using System.Runtime.Serialization.Formatters.Binary;
 
-namespace jive.infrastructure.cloning
+namespace jive.cloning
 {
   public class BinarySerializer<T> : FileStreamSerializer<T>
   {
lib/infrastructure/cloning/FileStreamSerializer.cs → lib/cloning/FileStreamSerializer.cs
@@ -1,7 +1,7 @@
 using System.IO;
 using System.Runtime.Serialization;
 
-namespace jive.infrastructure.cloning
+namespace jive.cloning
 {
   public class FileStreamSerializer<T> : Serializer<T>
   {
lib/infrastructure/cloning/Prototype.cs → lib/cloning/Prototype.cs
@@ -1,6 +1,6 @@
 using System.IO;
 
-namespace jive.infrastructure.cloning
+namespace jive.cloning
 {
   public interface IPrototype
   {
lib/infrastructure/cloning/Serializer.cs → lib/cloning/Serializer.cs
@@ -1,6 +1,6 @@
 using System;
 
-namespace jive.infrastructure.cloning
+namespace jive.cloning
 {
   public interface Serializer<T> : IDisposable
   {
lib/infrastructure/container/DependencyRegistry.cs → lib/container/DependencyRegistry.cs
@@ -1,6 +1,6 @@
 using System.Collections.Generic;
 
-namespace jive.infrastructure.container
+namespace jive.container
 {
   public interface DependencyRegistry
   {
lib/infrastructure/container/DependencyResolutionException.cs → lib/container/DependencyResolutionException.cs
@@ -1,7 +1,7 @@
 using System;
 using jive.utility;
 
-namespace jive.infrastructure.container
+namespace jive.container
 {
   public class DependencyResolutionException<T> : Exception
   {
lib/infrastructure/container/Resolve.cs → lib/container/Resolve.cs
@@ -1,6 +1,6 @@
 using System;
 
-namespace jive.infrastructure.container
+namespace jive.container
 {
   static public class Resolve
   {
lib/infrastructure/proxies/ExceptionExtensions.cs
@@ -1,18 +0,0 @@
-using System;
-using System.Reflection;
-
-namespace jive.infrastructure.proxies
-{
-  static public class ExceptionExtensions
-  {
-    static readonly MethodInfo method =
-      typeof (Exception).GetMethod("InternalPreserveStackTrace",
-          BindingFlags.NonPublic | BindingFlags.Instance);
-
-    static public Exception preserve_stack_trace(this Exception exception)
-    {
-      method.Invoke(exception, new object[0]);
-      return exception;
-    }
-  }
-}
lib/infrastructure/proxies/Interceptor.cs
@@ -1,7 +0,0 @@
-namespace jive.infrastructure.proxies
-{
-  public interface Interceptor
-  {
-    void intercept(Invocation invocation);
-  }
-}
lib/infrastructure/proxies/Invocation.cs
@@ -1,12 +0,0 @@
-using System.Reflection;
-
-namespace jive.infrastructure.proxies
-{
-  public interface Invocation
-  {
-    void proceed();
-    object[] arguments { get; }
-    MethodInfo method { get; }
-    object return_value { get; set; }
-  }
-}
lib/infrastructure/proxies/MethodCallInvocation.cs
@@ -1,47 +0,0 @@
-//using System.Collections.Generic;
-//using System.Reflection;
-//using System.Runtime.Remoting.Messaging;
-//using jive.utility;
-
-//namespace jive.infrastructure.proxies
-//{
-    //public class MethodCallInvocation<T> : Invocation
-    //{
-        //readonly IMethodCallMessage call;
-        //readonly T target;
-        //readonly Stack<Interceptor> interceptors;
-
-        //public MethodCallInvocation(IEnumerable<Interceptor> interceptors, IMethodCallMessage call, T target)
-        //{
-            //this.call = call;
-            //this.target = target;
-            //this.interceptors = new Stack<Interceptor>(interceptors);
-            //arguments = call.Properties["__Args"].downcast_to<object[]>();
-            //method = call.MethodBase.downcast_to<MethodInfo>();
-        //}
-
-        //public object[] arguments { get; set; }
-
-        //public MethodInfo method { get; set; }
-
-        //public object return_value { get; set; }
-
-        //public void proceed()
-        //{
-            //if (interceptors.Count > 0)
-            //{
-                //interceptors.Pop().intercept(this);
-                //return;
-            //}
-
-            //try
-            //{
-                //return_value = call.MethodBase.Invoke(target, arguments);
-            //}
-            //catch (TargetInvocationException e)
-            //{
-                //throw e.InnerException.preserve_stack_trace();
-            //}
-        //}
-    //}
-//}
lib/infrastructure/proxies/ProxyFactory.cs
@@ -1,10 +0,0 @@
-//namespace jive.infrastructure.proxies
-//{
-    //static public class ProxyFactory
-    //{
-        //static public T create<T>(T target, params Interceptor[] interceptors)
-        //{
-            //return new RemotingProxyFactory<T>(target, interceptors).create_proxy();
-        //}
-    //}
-//}
lib/infrastructure/proxies/RemotingProxyFactory.cs
@@ -1,44 +0,0 @@
-//using System.Collections.Generic;
-//using System.Runtime.Remoting.Messaging;
-//using System.Runtime.Remoting.Proxies;
-//using jive.utility;
-
-//namespace jive.infrastructure.proxies
-//{
-    //public class RemotingProxyFactory<T> : RealProxy
-    //{
-        //readonly T target;
-        //readonly IEnumerable<Interceptor> interceptors;
-
-        //public RemotingProxyFactory(T target, IEnumerable<Interceptor> interceptors) : base(typeof (T))
-        //{
-            //this.target = target;
-            //this.interceptors = interceptors;
-        //}
-
-        //public override IMessage Invoke(IMessage message)
-        //{
-            //if (message.is_an_implementation_of<IMethodCallMessage>())
-            //{
-                //var call = message.downcast_to<IMethodCallMessage>();
-                //var invocation = new MethodCallInvocation<T>(interceptors, call, target);
-                //invocation.proceed();
-                //return return_value(invocation.return_value, invocation.arguments, call);
-            //}
-            //return null;
-        //}
-
-        //IMessage return_value(object return_value, object[] out_parameters, IMethodCallMessage call)
-        //{
-            //return new ReturnMessage(return_value,
-                                     //out_parameters,
-                                     //out_parameters == null ? 0 : out_parameters.Length,
-                                     //call.LogicalCallContext, call);
-        //}
-
-        //public T create_proxy()
-        //{
-            //return GetTransparentProxy().downcast_to<T>();
-        //}
-    //}
-//}
lib/infrastructure/logging/Log.cs → lib/logging/Log.cs
@@ -1,7 +1,7 @@
 using System;
-using jive.infrastructure.container;
+using jive.container;
 
-namespace jive.infrastructure.logging
+namespace jive.logging
 {
   static public class Log
   {
lib/infrastructure/logging/LogFactory.cs → lib/logging/LogFactory.cs
@@ -1,6 +1,6 @@
 using System;
 
-namespace jive.infrastructure.logging
+namespace jive.logging
 {
   public interface LogFactory
   {
lib/infrastructure/logging/Loggable.cs → lib/logging/Loggable.cs
@@ -1,4 +1,4 @@
-namespace jive.infrastructure.logging
+namespace jive.logging
 {
   public interface Loggable
   {
lib/infrastructure/logging/Logger.cs → lib/logging/Logger.cs
@@ -1,6 +1,6 @@
 using System;
 
-namespace jive.infrastructure.logging
+namespace jive.logging
 {
   public interface Logger
   {
lib/infrastructure/logging/LoggingExtensions.cs → lib/logging/LoggingExtensions.cs
@@ -1,6 +1,6 @@
 using System;
 
-namespace jive.infrastructure.logging
+namespace jive.logging
 {
   public static class LoggingExtensions
   {
lib/infrastructure/logging/TextLogger.cs → lib/logging/TextLogger.cs
@@ -3,7 +3,7 @@ using System.IO;
 using System.Threading;
 using jive.utility;
 
-namespace jive.infrastructure.logging
+namespace jive.logging
 {
   public class TextLogger : Logger
   {
lib/infrastructure/threading/ApplicationThread.cs → lib/threading/ApplicationThread.cs
@@ -1,4 +1,4 @@
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface ApplicationThread
   {
lib/infrastructure/threading/AsynchronousCommandProcessor.cs → lib/threading/AsynchronousCommandProcessor.cs
@@ -1,10 +1,10 @@
 using System;
 using System.Collections.Generic;
 using System.Threading;
-using jive.infrastructure.logging;
+using jive.logging;
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public class AsynchronousCommandProcessor : CommandProcessor
   {
lib/infrastructure/threading/BackgroundThread.cs → lib/threading/BackgroundThread.cs
@@ -1,6 +1,6 @@
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface BackgroundThread : DisposableCommand {}
 }
lib/infrastructure/threading/BackgroundThreadFactory.cs → lib/threading/BackgroundThreadFactory.cs
@@ -1,8 +1,8 @@
 using System;
-using jive.infrastructure.container;
+using jive.container;
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface IBackgroundThreadFactory
   {
lib/infrastructure/threading/CommandProcessor.cs → lib/threading/CommandProcessor.cs
@@ -1,7 +1,7 @@
 using System;
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface CommandProcessor : Command
   {
lib/infrastructure/threading/CurrentThread.cs → lib/threading/CurrentThread.cs
@@ -1,6 +1,6 @@
 using System.Threading;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public class CurrentThread : ApplicationThread
   {
lib/infrastructure/threading/IntervalTimer.cs → lib/threading/IntervalTimer.cs
@@ -2,7 +2,7 @@ using System;
 using System.Collections.Generic;
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public class IntervalTimer : Timer
   {
lib/infrastructure/threading/ITimerFactory.cs → lib/threading/ITimerFactory.cs
@@ -1,6 +1,6 @@
 using System;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface ITimerFactory
   {
lib/infrastructure/threading/IWorkerThread.cs → lib/threading/IWorkerThread.cs
@@ -1,7 +1,7 @@
 using System;
 using System.ComponentModel;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface IWorkerThread : IDisposable
   {
lib/infrastructure/threading/PerThread.cs → lib/threading/PerThread.cs
@@ -4,7 +4,7 @@ using System.Collections.Generic;
 using System.Threading;
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public class PerThread : Context
   {
lib/infrastructure/threading/PerThreadScopedStorage.cs → lib/threading/PerThreadScopedStorage.cs
@@ -1,7 +1,7 @@
 using System.Collections;
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public class PerThreadScopedStorage : ScopedStorage
   {
lib/infrastructure/threading/SynchronizationContextFactory.cs → lib/threading/SynchronizationContextFactory.cs
@@ -1,8 +1,8 @@
 using System.Threading;
-using jive.infrastructure.container;
+using jive.container;
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface ISynchronizationContextFactory : Factory<ISynchronizationContext> {}
 
lib/infrastructure/threading/SynchronizedCommand.cs → lib/threading/SynchronizedCommand.cs
@@ -2,7 +2,7 @@ using System;
 using System.Threading;
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface ISynchronizedCommand : Command<Action>, Command<Command> {}
 
lib/infrastructure/threading/SynchronizedContext.cs → lib/threading/SynchronizedContext.cs
@@ -1,7 +1,7 @@
 using System.Threading;
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface ISynchronizationContext : Command<Command> {}
 
lib/infrastructure/threading/SynchronousCommandProcessor.cs → lib/threading/SynchronousCommandProcessor.cs
@@ -2,7 +2,7 @@ using System;
 using System.Collections.Generic;
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public class SynchronousCommandProcessor : CommandProcessor
   {
lib/infrastructure/threading/ThreadingExtensions.cs → lib/threading/ThreadingExtensions.cs
@@ -1,6 +1,6 @@
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   static public class ThreadingExtensions
   {
lib/infrastructure/threading/Timer.cs → lib/threading/Timer.cs
@@ -1,6 +1,6 @@
 using System;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface Timer : IDisposable
   {
lib/infrastructure/threading/TimerClient.cs → lib/threading/TimerClient.cs
@@ -1,4 +1,4 @@
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public interface TimerClient
   {
lib/infrastructure/threading/TimerFactory.cs → lib/threading/TimerFactory.cs
@@ -1,6 +1,6 @@
 using System;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public class TimerFactory : ITimerFactory
   {
lib/infrastructure/threading/WorkderBackgroundThread.cs → lib/threading/WorkderBackgroundThread.cs
@@ -1,6 +1,6 @@
 using jive.utility;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public class WorkderBackgroundThread : BackgroundThread
   {
lib/infrastructure/threading/WorkerThread.cs → lib/threading/WorkerThread.cs
@@ -1,8 +1,8 @@
 using System;
 using System.ComponentModel;
-using jive.infrastructure.logging;
+using jive.logging;
 
-namespace jive.infrastructure.threading
+namespace jive.threading
 {
   public class WorkerThread : Component, IWorkerThread
   {
lib/infrastructure/reflection/ApplicationAssembly.cs → lib/ApplicationAssembly.cs
@@ -1,7 +1,7 @@
 using System;
 using System.Collections.Generic;
 
-namespace jive.infrastructure.reflection
+namespace jive
 {
   public class ApplicationAssembly : Assembly
   {
lib/infrastructure/reflection/Assembly.cs → lib/Assembly.cs
@@ -1,7 +1,7 @@
 using System;
 using System.Collections.Generic;
 
-namespace jive.infrastructure.reflection
+namespace jive
 {
   public interface Assembly
   {
lib/infrastructure/registries/DefaultRegistry.cs → lib/DefaultRegistry.cs
@@ -1,9 +1,9 @@
 using System.Collections;
 using System.Collections.Generic;
-using jive.infrastructure.container;
+using jive.container;
 using jive.utility;
 
-namespace jive.infrastructure.registries
+namespace jive
 {
   public class DefaultRegistry<T> : Registry<T>
   {
lib/infrastructure/reflection/EnvironmentExtensions.cs → lib/EnvironmentExtensions.cs
@@ -1,6 +1,6 @@
 using System;
 
-namespace jive.infrastructure.reflection
+namespace jive
 {
   public static class EnvironmentExtensions
   {
spec/unit/infrastructure/cloning/BinarySerializerSpecs.cs → spec/unit/cloning/BinarySerializerSpecs.cs
@@ -1,9 +1,9 @@
 using System;
 using System.IO;
-using jive.infrastructure.cloning;
+using jive.cloning;
 using Machine.Specifications;
 
-namespace specs.unit.infrastructure.cloning
+namespace specs.unit.cloning
 {
   [Subject(typeof (BinarySerializer<TestItem>))]
   public abstract class when_a_file_is_specified_to_serialize_an_item_to
spec/unit/infrastructure/container/ResolveSpecs.cs → spec/unit/container/ResolveSpecs.cs
@@ -1,9 +1,9 @@
 using System;
-using jive.infrastructure.container;
+using jive.container;
 using jive.utility;
 using Machine.Specifications;
 
-namespace specs.unit.infrastructure.container
+namespace specs.unit.container
 {
   [Subject(typeof (Resolve))]
   public abstract class behaves_like_a_inversion_of_control_container
spec/unit/infrastructure/proxies/ProxyFactorySpecs.cs
@@ -1,60 +0,0 @@
-//using jive.infrastructure.proxies;
-//using Machine.Specifications;
-
-//namespace specs.unit.infrastructure.proxies
-//{
-    //public class ProxyFactorySpecs
-    //{
-        //[Subject(typeof (ProxyFactory))]
-        //public class when_proxying_a_class_with_interceptors_applied
-        //{
-            //Establish c = () =>
-            //{
-                //interceptors = new MyNameIsSlimShadyInterceptor();
-                //marshal_mathers = new Person("marshall mathers");
-            //};
-
-            //Because b =
-                //() =>
-                //{
-                    //some_celebrity = ProxyFactory.create<IPerson>(marshal_mathers, interceptors);
-                //};
-
-            //It should_all_each_interceptor_to_intercept_the_invocation =
-                //() => some_celebrity.what_is_your_name().should_be_equal_to("slim shady");
-
-            //static Person marshal_mathers;
-            //static IPerson some_celebrity;
-            //static Interceptor interceptors;
-        //}
-
-        //public interface IPerson
-        //{
-            //string what_is_your_name();
-        //}
-
-        //public class Person : IPerson
-        //{
-            //readonly string my_name;
-
-            //public Person(string my_name)
-            //{
-                //this.my_name = my_name;
-            //}
-
-            //public string what_is_your_name()
-            //{
-                //return my_name;
-            //}
-        //}
-
-        //public class MyNameIsSlimShadyInterceptor : Interceptor
-        //{
-            //public void intercept(Invocation invocation)
-            //{
-                //invocation.proceed();
-                //invocation.return_value = "slim shady";
-            //}
-        //}
-    //}
-//}
spec/unit/infrastructure/logging/LogSpecs.cs → spec/unit/logging/LogSpecs.cs
@@ -1,8 +1,8 @@
-using jive.infrastructure.container;
-using jive.infrastructure.logging;
+using jive.container;
+using jive.logging;
 using Machine.Specifications;
 
-namespace specs.unit.infrastructure.logging
+namespace specs.unit.logging
 {
   [Subject(typeof (Log))]
   public class when_creating_a_logger_for_a_particular_type
spec/unit/infrastructure/registries/DefaultRegistrySpecs.cs → spec/unit/DefaultRegistrySpecs.cs
@@ -1,10 +1,10 @@
 using System.Collections.Generic;
-using jive.infrastructure.container;
-using jive.infrastructure.registries;
+using jive.container;
+using jive;
 using jive.utility;
 using Machine.Specifications;
 
-namespace specs.unit.infrastructure.registries
+namespace specs.unit
 {
   [Subject(typeof (DefaultRegistry<int>))]
   public class when_retrieving_all_the_items_from_the_default_repository
spec/Assertions.cs
@@ -0,0 +1,94 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Machine.Specifications;
+
+namespace specs
+{
+  static public class Assertions
+  {
+    static public void should_be_equal_to<T>(this T item_to_validate, T expected_value)
+    {
+      item_to_validate.ShouldEqual(expected_value);
+    }
+
+    static public void should_be_the_same_instance_as<T>(this T left, T right)
+    {
+      ReferenceEquals(left, right).ShouldBeTrue();
+    }
+
+    static public void should_be_null<T>(this T item)
+    {
+      item.ShouldBeNull();
+    }
+
+    static public void should_not_be_null<T>(this T item) where T : class
+    {
+      item.ShouldNotBeNull();
+    }
+
+    static public void should_be_greater_than<T>(this T actual, T expected) where T : IComparable
+    {
+      actual.ShouldBeGreaterThan(expected);
+    }
+
+    static public void should_be_less_than(this int actual, int expected)
+    {
+      actual.ShouldBeLessThan(expected);
+    }
+
+    static public void should_contain<T>(this IEnumerable<T> items_to_peek_in_to, T items_to_look_for)
+    {
+      items_to_peek_in_to.Contains(items_to_look_for).should_be_true();
+    }
+
+    static public void should_not_contain<T>(this IEnumerable<T> items_to_peek_into, T item_to_look_for)
+    {
+      items_to_peek_into.Contains(item_to_look_for).should_be_false();
+    }
+
+    //static public void should_be_an_instance_of<T>(this object item)
+    //{
+    //item.should_be_an_instance_of(typeof (T));
+    //}
+
+    //static public void should_be_an_instance_of(this object item, Type type)
+    //{
+    //item.ShouldBe(type);
+    //}
+
+    static public void should_have_thrown<TheException>(this Action action) where TheException : Exception
+    {
+      typeof (TheException).ShouldBeThrownBy(action);
+    }
+
+    static public void should_be_true(this bool item)
+    {
+      item.ShouldBeTrue();
+    }
+
+    static public void should_be_false(this bool item)
+    {
+      item.ShouldBeFalse();
+    }
+
+    static public void should_contain<T>(this IEnumerable<T> items, params T[] items_to_find)
+    {
+      foreach (var item_to_find in items_to_find)
+      {
+        items.should_contain(item_to_find);
+      }
+    }
+
+    static public void should_only_contain<T>(this IEnumerable<T> items, params T[] itemsToFind)
+    {
+      items.Count().should_be_equal_to(itemsToFind.Length);
+      items.should_contain(itemsToFind);
+    }
+
+    static public void should_be_equal_ignoring_case(this string item, string other)
+    {
+      item.ShouldBeEqualIgnoringCase(other);
+    }
+  }
+}
spec/assertions.cs
@@ -1,94 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using Machine.Specifications;
-
-namespace specs
-{
-    static public class Assertions
-    {
-        static public void should_be_equal_to<T>(this T item_to_validate, T expected_value)
-        {
-            item_to_validate.ShouldEqual(expected_value);
-        }
-
-        static public void should_be_the_same_instance_as<T>(this T left, T right)
-        {
-            ReferenceEquals(left, right).ShouldBeTrue();
-        }
-
-        static public void should_be_null<T>(this T item)
-        {
-            item.ShouldBeNull();
-        }
-
-        static public void should_not_be_null<T>(this T item) where T : class
-        {
-            item.ShouldNotBeNull();
-        }
-
-        static public void should_be_greater_than<T>(this T actual, T expected) where T : IComparable
-        {
-            actual.ShouldBeGreaterThan(expected);
-        }
-
-        static public void should_be_less_than(this int actual, int expected)
-        {
-            actual.ShouldBeLessThan(expected);
-        }
-
-        static public void should_contain<T>(this IEnumerable<T> items_to_peek_in_to, T items_to_look_for)
-        {
-            items_to_peek_in_to.Contains(items_to_look_for).should_be_true();
-        }
-
-        static public void should_not_contain<T>(this IEnumerable<T> items_to_peek_into, T item_to_look_for)
-        {
-            items_to_peek_into.Contains(item_to_look_for).should_be_false();
-        }
-
-        //static public void should_be_an_instance_of<T>(this object item)
-        //{
-            //item.should_be_an_instance_of(typeof (T));
-        //}
-
-        //static public void should_be_an_instance_of(this object item, Type type)
-        //{
-            //item.ShouldBe(type);
-        //}
-
-        static public void should_have_thrown<TheException>(this Action action) where TheException : Exception
-        {
-            typeof (TheException).ShouldBeThrownBy(action);
-        }
-
-        static public void should_be_true(this bool item)
-        {
-            item.ShouldBeTrue();
-        }
-
-        static public void should_be_false(this bool item)
-        {
-            item.ShouldBeFalse();
-        }
-
-        static public void should_contain<T>(this IEnumerable<T> items, params T[] items_to_find)
-        {
-            foreach (var item_to_find in items_to_find)
-            {
-                items.should_contain(item_to_find);
-            }
-        }
-
-        static public void should_only_contain<T>(this IEnumerable<T> items, params T[] itemsToFind)
-        {
-            items.Count().should_be_equal_to(itemsToFind.Length);
-            items.should_contain(itemsToFind);
-        }
-
-        static public void should_be_equal_ignoring_case(this string item, string other)
-        {
-            item.ShouldBeEqualIgnoringCase(other);
-        }
-    }
-}
spec/Call.cs
@@ -2,11 +2,11 @@ using System;
 
 namespace specs
 {
-    static public class call
+  static public class call
+  {
+    static public Action to(Action action)
     {
-        static public Action to(Action action)
-        {
-            return action;
-        }
+      return action;
     }
+  }
 }
spec/Create.cs
@@ -6,16 +6,16 @@ using Moq;
 
 namespace specs
 {
-    static public class Create
+  static public class Create
+  {
+    static public Mock<Stub> an<Stub>() where Stub : class
     {
-        static public Mock<Stub> an<Stub>() where Stub : class
-        {
-            return An<Stub>();
-        }
+      return An<Stub>();
+    }
 
-        static public Mock<ItemToStub> An<ItemToStub>() where ItemToStub : class
-        {
-            return new Mock<ItemToStub>();
-        }
+    static public Mock<ItemToStub> An<ItemToStub>() where ItemToStub : class
+    {
+      return new Mock<ItemToStub>();
     }
+  }
 }
spec/spec.csproj
@@ -1,15 +1,15 @@
-<Project Sdk="Microsoft.NET.Sdk">
-  <PropertyGroup>
+<Project Sdk="Microsoft.NET.Sdk">
+  <PropertyGroup>
     <TargetFramework>netcoreapp3.0</TargetFramework>
-  </PropertyGroup>
+  </PropertyGroup>
   <ItemGroup>
     <PackageReference Include="Machine.Specifications" Version="1.0.0" />
     <PackageReference Include="Machine.Specifications.Runner.VisualStudio" Version="2.9.0" />
     <PackageReference Include="Machine.Specifications.Should" Version="1.0.0" />
     <PackageReference Include="Microsoft.NET.Test.SDK" Version="16.3.0" />
     <PackageReference Include="Moq" Version="4.13.1" />
-  </ItemGroup>
+  </ItemGroup>
   <ItemGroup>
     <ProjectReference Include="..\lib\lib.csproj" />
-  </ItemGroup>
-</Project>
+  </ItemGroup>
+</Project>