diff --git a/src/Stove.Dapper/project.json b/src/Stove.Dapper/project.json index b8f6ed2..7c6efef 100644 --- a/src/Stove.Dapper/project.json +++ b/src/Stove.Dapper/project.json @@ -1,13 +1,13 @@ { - "version": "0.0.10-*", + "version": "0.0.11-*", "dependencies": { "Autofac": "4.3.0", "Dapper": "1.50.2", "DapperExtensions": "1.5.0", "EntityFramework": "6.1.3", - "Stove": "0.0.10", - "Stove.EntityFramework": "0.0.10-*" + "Stove": "0.0.11", + "Stove.EntityFramework": "0.0.11-*" }, "frameworks": { diff --git a/src/Stove.EntityFramework/project.json b/src/Stove.EntityFramework/project.json index 78b11e4..b80acca 100644 --- a/src/Stove.EntityFramework/project.json +++ b/src/Stove.EntityFramework/project.json @@ -1,8 +1,8 @@ { - "version" : "0.0.10-*", + "version" : "0.0.11-*", "dependencies": { - "Stove": "0.0.10", + "Stove": "0.0.11", "EntityFramework": "6.1.3", "EntityFramework.DynamicFilters": "2.6.0", "System.Collections": "4.3.0", diff --git a/src/Stove.HangFire/project.json b/src/Stove.HangFire/project.json index 3b8bb04..51e4e2f 100644 --- a/src/Stove.HangFire/project.json +++ b/src/Stove.HangFire/project.json @@ -1,8 +1,8 @@ { - "version": "0.0.10-*", + "version": "0.0.11-*", "dependencies": { - "Stove": "0.0.10", + "Stove": "0.0.11", "Hangfire": "1.6.8", "Hangfire.Core": "1.6.8", "Hangfire.SqlServer": "1.6.8", diff --git a/src/Stove.Mapster/project.json b/src/Stove.Mapster/project.json index 1d041c3..68784e2 100644 --- a/src/Stove.Mapster/project.json +++ b/src/Stove.Mapster/project.json @@ -1,9 +1,9 @@ { - "version" : "0.0.10-*", + "version" : "0.0.11-*", "dependencies" : { "Mapster" : "2.6.1", - "Stove" : "0.0.10" + "Stove" : "0.0.11" }, "frameworks" : { diff --git a/src/Stove.NLog/project.json b/src/Stove.NLog/project.json index a8927fc..9b01c4a 100644 --- a/src/Stove.NLog/project.json +++ b/src/Stove.NLog/project.json @@ -1,10 +1,10 @@ { - "version" : "0.0.10-*", + "version" : "0.0.11-*", "dependencies": { "Autofac": "4.3.0", "NLog": "4.4.3", - "Stove": "0.0.10" + "Stove": "0.0.11" }, "frameworks" : { diff --git a/src/Stove.RabbitMQ/project.json b/src/Stove.RabbitMQ/project.json index 854ca57..54ded3d 100644 --- a/src/Stove.RabbitMQ/project.json +++ b/src/Stove.RabbitMQ/project.json @@ -1,11 +1,11 @@ { - "version": "0.0.10-*", + "version": "0.0.11-*", "dependencies": { "MassTransit": "3.5.5", "MassTransit.Autofac": "3.5.5", "MassTransit.RabbitMQ": "3.5.5", - "Stove": "0.0.10" + "Stove": "0.0.11" }, "frameworks": { diff --git a/src/Stove.Redis/project.json b/src/Stove.Redis/project.json index fbcf4a3..9ae0441 100644 --- a/src/Stove.Redis/project.json +++ b/src/Stove.Redis/project.json @@ -1,10 +1,10 @@ { - "version" : "0.0.10-*", + "version" : "0.0.11-*", "dependencies": { "StackExchange.Redis": "1.2.1", "StackExchange.Redis.Extensions.Core": "2.1.0", - "Stove": "0.0.10" + "Stove": "0.0.11" }, "frameworks" : { diff --git a/src/Stove/Bootstrapping/StoveKernelBootstrapper.cs b/src/Stove/Bootstrapping/StoveKernelBootstrapper.cs index 38ecff0..3cd9e8b 100644 --- a/src/Stove/Bootstrapping/StoveKernelBootstrapper.cs +++ b/src/Stove/Bootstrapping/StoveKernelBootstrapper.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Linq; +using Autofac; using Autofac.Extras.IocManager; using Stove.BackgroundJobs; @@ -68,7 +69,7 @@ private void ConfigureEventBus() Type[] genericArgs = @interface.GetGenericArguments(); if (genericArgs.Length == 1) { - _eventBus.Register(genericArgs[0], new IocHandlerFactory(Resolver.Resolve().BeginScope(), impl)); + _eventBus.Register(genericArgs[0], new IocHandlerFactory(Resolver.Resolve(), impl)); } } } diff --git a/src/Stove/Domain/Uow/UnitOfWorkManager.cs b/src/Stove/Domain/Uow/UnitOfWorkManager.cs index 544917a..2c7f25b 100644 --- a/src/Stove/Domain/Uow/UnitOfWorkManager.cs +++ b/src/Stove/Domain/Uow/UnitOfWorkManager.cs @@ -1,4 +1,5 @@ -using System.Transactions; +using System.Linq; +using System.Transactions; using Autofac.Extras.IocManager; @@ -45,7 +46,9 @@ public IUnitOfWorkCompleteHandle Begin(UnitOfWorkOptions options) options.FillDefaultsForNonProvidedOptions(_defaultOptions); - if (options.Scope == TransactionScopeOption.Required && _currentUnitOfWorkProvider.Current != null) + IUnitOfWork outerUow = _currentUnitOfWorkProvider.Current; + + if (options.Scope == TransactionScopeOption.Required && outerUow != null) { return new InnerUnitOfWorkCompleteHandle(); } @@ -58,6 +61,12 @@ public IUnitOfWorkCompleteHandle Begin(UnitOfWorkOptions options) uow.Disposed += (sender, args) => { _childScope.Dispose(); }; + //Inherit filters from outer UOW + if (outerUow != null) + { + options.FillOuterUowFiltersForNonProvidedOptions(outerUow.Filters.ToList()); + } + uow.Begin(options); _currentUnitOfWorkProvider.Current = uow; diff --git a/src/Stove/Domain/Uow/UnitOfWorkOptions.cs b/src/Stove/Domain/Uow/UnitOfWorkOptions.cs index b14a3e9..a64fba1 100644 --- a/src/Stove/Domain/Uow/UnitOfWorkOptions.cs +++ b/src/Stove/Domain/Uow/UnitOfWorkOptions.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Linq; using System.Transactions; namespace Stove.Domain.Uow @@ -75,5 +76,18 @@ internal void FillDefaultsForNonProvidedOptions(IUnitOfWorkDefaultOptions defaul IsolationLevel = defaultOptions.IsolationLevel.Value; } } + + internal void FillOuterUowFiltersForNonProvidedOptions(List filterOverrides) + { + foreach (var filterOverride in filterOverrides) + { + if (FilterOverrides.Any(fo => fo.FilterName == filterOverride.FilterName)) + { + continue; + } + + FilterOverrides.Add(filterOverride); + } + } } } \ No newline at end of file diff --git a/src/Stove/Events/Bus/EventBus.cs b/src/Stove/Events/Bus/EventBus.cs index 6481f36..5249a4a 100644 --- a/src/Stove/Events/Bus/EventBus.cs +++ b/src/Stove/Events/Bus/EventBus.cs @@ -21,6 +21,11 @@ namespace Stove.Events.Bus /// public class EventBus : IEventBus { + /// + /// Gets the default instance. + /// + public static EventBus Default = new EventBus(); + /// /// All registered handler factories. /// Key: Type of the event @@ -38,11 +43,6 @@ public EventBus() Logger = NullLogger.Instance; } - /// - /// Gets the default instance. - /// - public static EventBus Default { get; } = new EventBus(); - /// /// Reference to the Logger. /// diff --git a/src/Stove/Events/Bus/IEventBus.cs b/src/Stove/Events/Bus/IEventBus.cs index 1ff8742..6bef1a8 100644 --- a/src/Stove/Events/Bus/IEventBus.cs +++ b/src/Stove/Events/Bus/IEventBus.cs @@ -7,123 +7,113 @@ namespace Stove.Events.Bus { /// - /// Defines interface of the event bus. + /// Defines interface of the event bus. /// public interface IEventBus { - #region Register - /// - /// Registers to an event. - /// Given action is called for all event occurrences. + /// Registers to an event. + /// Given action is called for all event occurrences. /// /// Action to handle events /// Event type IDisposable Register(Action action) where TEventData : IEventData; /// - /// Registers to an event. - /// Same (given) instance of the handler is used for all event occurrences. + /// Registers to an event. + /// Same (given) instance of the handler is used for all event occurrences. /// /// Event type /// Object to handle the event IDisposable Register(IEventHandler handler) where TEventData : IEventData; /// - /// Registers to an event. - /// A new instance of object is created for every event occurrence. + /// Registers to an event. + /// A new instance of object is created for every event occurrence. /// /// Event type /// Type of the event handler IDisposable Register() where TEventData : IEventData where THandler : IEventHandler, new(); /// - /// Registers to an event. - /// Same (given) instance of the handler is used for all event occurrences. + /// Registers to an event. + /// Same (given) instance of the handler is used for all event occurrences. /// /// Event type /// Object to handle the event IDisposable Register(Type eventType, IEventHandler handler); /// - /// Registers to an event. - /// Given factory is used to create/release handlers + /// Registers to an event. + /// Given factory is used to create/release handlers /// /// Event type /// A factory to create/release handlers IDisposable Register(IEventHandlerFactory handlerFactory) where TEventData : IEventData; /// - /// Registers to an event. + /// Registers to an event. /// /// Event type /// A factory to create/release handlers IDisposable Register(Type eventType, IEventHandlerFactory handlerFactory); - #endregion - - #region Unregister - /// - /// Unregisters from an event. + /// Unregisters from an event. /// /// Event type /// void Unregister(Action action) where TEventData : IEventData; /// - /// Unregisters from an event. + /// Unregisters from an event. /// /// Event type /// Handler object that is registered before void Unregister(IEventHandler handler) where TEventData : IEventData; /// - /// Unregisters from an event. + /// Unregisters from an event. /// /// Event type /// Handler object that is registered before void Unregister(Type eventType, IEventHandler handler); /// - /// Unregisters from an event. + /// Unregisters from an event. /// /// Event type /// Factory object that is registered before void Unregister(IEventHandlerFactory factory) where TEventData : IEventData; /// - /// Unregisters from an event. + /// Unregisters from an event. /// /// Event type /// Factory object that is registered before void Unregister(Type eventType, IEventHandlerFactory factory); /// - /// Unregisters all event handlers of given event type. + /// Unregisters all event handlers of given event type. /// /// Event type void UnregisterAll() where TEventData : IEventData; /// - /// Unregisters all event handlers of given event type. + /// Unregisters all event handlers of given event type. /// /// Event type void UnregisterAll(Type eventType); - #endregion - - #region Trigger - /// - /// Triggers an event. + /// Triggers an event. /// /// Event type /// Related data for the event void Trigger(TEventData eventData) where TEventData : IEventData; /// - /// Triggers an event. + /// Triggers an event. /// /// Event type /// The object which triggers the event @@ -131,14 +121,14 @@ public interface IEventBus void Trigger(object eventSource, TEventData eventData) where TEventData : IEventData; /// - /// Triggers an event. + /// Triggers an event. /// /// Event type /// Related data for the event void Trigger(Type eventType, IEventData eventData); /// - /// Triggers an event. + /// Triggers an event. /// /// Event type /// The object which triggers the event @@ -146,7 +136,7 @@ public interface IEventBus void Trigger(Type eventType, object eventSource, IEventData eventData); /// - /// Triggers an event asynchronously. + /// Triggers an event asynchronously. /// /// Event type /// Related data for the event @@ -154,7 +144,7 @@ public interface IEventBus Task TriggerAsync(TEventData eventData) where TEventData : IEventData; /// - /// Triggers an event asynchronously. + /// Triggers an event asynchronously. /// /// Event type /// The object which triggers the event @@ -163,7 +153,7 @@ public interface IEventBus Task TriggerAsync(object eventSource, TEventData eventData) where TEventData : IEventData; /// - /// Triggers an event asynchronously. + /// Triggers an event asynchronously. /// /// Event type /// Related data for the event @@ -171,15 +161,12 @@ public interface IEventBus Task TriggerAsync(Type eventType, IEventData eventData); /// - /// Triggers an event asynchronously. + /// Triggers an event asynchronously. /// /// Event type /// The object which triggers the event /// Related data for the event /// The task to handle async operation Task TriggerAsync(Type eventType, object eventSource, IEventData eventData); - - - #endregion } -} \ No newline at end of file +} diff --git a/src/Stove/StoveCoreRegistrationExtensions.cs b/src/Stove/StoveCoreRegistrationExtensions.cs index 8588ac8..8cbf0fc 100644 --- a/src/Stove/StoveCoreRegistrationExtensions.cs +++ b/src/Stove/StoveCoreRegistrationExtensions.cs @@ -81,26 +81,27 @@ public static IIocBuilder UseStoveDefaultConnectionStringResolver([NotNull] this } /// - /// Uses the stove default event bus. + /// Uses the stove event bus. /// /// The builder. /// [NotNull] - public static IIocBuilder UseStoveDefaultEventBus([NotNull] this IIocBuilder builder) + public static IIocBuilder UseStoveEventBus([NotNull] this IIocBuilder builder) { - builder.RegisterServices(r => r.Register(context => EventBus.Default)); + builder.RegisterServices(r => r.Register(Lifetime.Singleton)); return builder; } + /// - /// Uses the stove event bus. + /// Uses the stove default event bus. /// /// The builder. /// [NotNull] - public static IIocBuilder UseStoveEventBus([NotNull] this IIocBuilder builder) + public static IIocBuilder UseStoveDefaultEventBus([NotNull] this IIocBuilder builder) { - builder.RegisterServices(r => r.Register()); + builder.RegisterServices(r => r.Register(context => EventBus.Default, Lifetime.Singleton)); return builder; } diff --git a/src/Stove/project.json b/src/Stove/project.json index 3cb88e1..c237510 100644 --- a/src/Stove/project.json +++ b/src/Stove/project.json @@ -1,5 +1,5 @@ { - "version" : "0.0.10", + "version" : "0.0.11", "dependencies": { "Autofac": "4.3.0", diff --git a/test/Stove.Demo.ConsoleApp/Program.cs b/test/Stove.Demo.ConsoleApp/Program.cs index b6b3203..e88020b 100644 --- a/test/Stove.Demo.ConsoleApp/Program.cs +++ b/test/Stove.Demo.ConsoleApp/Program.cs @@ -34,7 +34,7 @@ private static void Main(string[] args) .UseStoveEntityFramework() .UseStoveDapper() .UseStoveMapster() - .UseStoveDefaultEventBus() + .UseStoveEventBus() .UseStoveDbContextEfTransactionStrategy() .UseStoveTypedConnectionStringResolver() .UseStoveNLog() diff --git a/test/Stove.Demo.ConsoleApp/project.json b/test/Stove.Demo.ConsoleApp/project.json index df622dc..5af622c 100644 --- a/test/Stove.Demo.ConsoleApp/project.json +++ b/test/Stove.Demo.ConsoleApp/project.json @@ -17,14 +17,14 @@ "MassTransit": "3.5.5", "Newtonsoft.Json": "9.0.1", "Owin": "1.0", - "Stove": "0.0.10", - "Stove.Dapper": "0.0.10-*", - "Stove.EntityFramework": "0.0.10-*", - "Stove.HangFire": "0.0.10-*", - "Stove.Mapster": "0.0.10-*", - "Stove.NLog": "0.0.10-*", + "Stove": "0.0.11", + "Stove.Dapper": "0.0.11-*", + "Stove.EntityFramework": "0.0.11-*", + "Stove.HangFire": "0.0.11-*", + "Stove.Mapster": "0.0.11-*", + "Stove.NLog": "0.0.11-*", "Stove.RabbitMQ": "1.0.0-*", - "Stove.Redis": "0.0.10-*" + "Stove.Redis": "0.0.11-*" }, "frameworks": { diff --git a/test/Stove.EntityFramework.Tests/project.json b/test/Stove.EntityFramework.Tests/project.json index c7d7e27..95227be 100644 --- a/test/Stove.EntityFramework.Tests/project.json +++ b/test/Stove.EntityFramework.Tests/project.json @@ -4,7 +4,7 @@ "testRunner": "xunit", "dependencies": { "Autofac": "4.3.0", - "Stove.EntityFramework": "0.0.10-*", + "Stove.EntityFramework": "0.0.11-*", "Stove.TestBase": "0.0.1-*" }, diff --git a/test/Stove.Mapster.Tests/Stove.Mapster.Tests.xproj b/test/Stove.Mapster.Tests/Stove.Mapster.Tests.xproj index c33d3f0..a329cf9 100644 --- a/test/Stove.Mapster.Tests/Stove.Mapster.Tests.xproj +++ b/test/Stove.Mapster.Tests/Stove.Mapster.Tests.xproj @@ -4,7 +4,6 @@ 14.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - 7182fae3-631d-4485-af40-69d60a8bd8b7 @@ -13,9 +12,11 @@ .\bin\ v4.6.1 - 2.0 + + + - + \ No newline at end of file diff --git a/test/Stove.Mapster.Tests/project.json b/test/Stove.Mapster.Tests/project.json index e3a955b..34dc557 100644 --- a/test/Stove.Mapster.Tests/project.json +++ b/test/Stove.Mapster.Tests/project.json @@ -4,7 +4,7 @@ "testRunner" : "xunit", "dependencies" : { - "Stove.Mapster" : "0.0.10-*", + "Stove.Mapster" : "0.0.11-*", "Stove.TestBase" : "0.0.1-*" }, diff --git a/test/Stove.RabbitMQ.Tests/Stove.RabbitMQ.Tests.xproj b/test/Stove.RabbitMQ.Tests/Stove.RabbitMQ.Tests.xproj index 96b9099..4b92522 100644 --- a/test/Stove.RabbitMQ.Tests/Stove.RabbitMQ.Tests.xproj +++ b/test/Stove.RabbitMQ.Tests/Stove.RabbitMQ.Tests.xproj @@ -4,7 +4,6 @@ 14.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - f024076f-a7aa-4b54-9f01-d3691a8bc988 @@ -13,9 +12,11 @@ .\bin\ v4.6.1 - 2.0 + + + - + \ No newline at end of file diff --git a/test/Stove.RabbitMQ.Tests/project.json b/test/Stove.RabbitMQ.Tests/project.json index 383ca8f..270ceab 100644 --- a/test/Stove.RabbitMQ.Tests/project.json +++ b/test/Stove.RabbitMQ.Tests/project.json @@ -4,8 +4,8 @@ "testRunner" : "xunit", "dependencies": { - "Stove": "0.0.10", - "Stove.RabbitMQ": "0.0.10-*", + "Stove": "0.0.11", + "Stove.RabbitMQ": "0.0.11-*", "Stove.TestBase": "0.0.1-*" }, diff --git a/test/Stove.TestBase/project.json b/test/Stove.TestBase/project.json index a505fd9..506c2ce 100644 --- a/test/Stove.TestBase/project.json +++ b/test/Stove.TestBase/project.json @@ -5,7 +5,7 @@ "dotnet-test-xunit": "2.2.0-preview2-build1029", "NSubstitute": "1.10.0", "Shouldly": "2.8.2", - "Stove": "0.0.10", + "Stove": "0.0.11", "FluentAssemblyScanner": "1.0.7", "xunit": "2.2.0" }, diff --git a/test/Stove.Tests.SampleApplication/BasicRepository_Tests.cs b/test/Stove.Tests.SampleApplication/BasicRepository_Tests.cs index bf2017b..4d3e9a8 100644 --- a/test/Stove.Tests.SampleApplication/BasicRepository_Tests.cs +++ b/test/Stove.Tests.SampleApplication/BasicRepository_Tests.cs @@ -4,6 +4,7 @@ using Stove.Domain.Repositories; using Stove.Domain.Uow; +using Stove.Events.Bus; using Stove.Events.Bus.Entities; using Stove.Events.Bus.Handlers; using Stove.Extensions; @@ -90,6 +91,37 @@ public void uow_complete_handle_eventbus_should_work_with_repository_insert() } } + [Fact] + public void uow_complete_handle_eventbus_should_work_with_repository_insert2() + { + var uowManager = LocalResolver.Resolve(); + var userRepository = LocalResolver.Resolve>(); + + using (IUnitOfWorkCompleteHandle uow = uowManager.Begin()) + { + for (var i = 0; i < 1000; i++) + { + userRepository.Insert(new User + { + Email = "ouzsykn@hotmail.com", + Surname = "Sykn", + Name = "Oğuz" + }); + } + + uow.Complete(); + } + + using (IUnitOfWorkCompleteHandle uow = uowManager.Begin()) + { + userRepository.GetAll().ForEach(user => user.Surname = "Soykan"); + userRepository.Count(x => x.Email == "ouzsykn@hotmail.com").ShouldBe(1000); + userRepository.FirstOrDefault(x => x.Email == "ouzsykn@hotmail.com").ShouldNotBeNull(); + + uow.Complete(); + } + } + public class UserCreatedEventHandler : IEventHandler>, IEventHandler>, ITransientDependency diff --git a/test/Stove.Tests.SampleApplication/SampleApplicationTestBase.cs b/test/Stove.Tests.SampleApplication/SampleApplicationTestBase.cs index 928fe1e..2552dbb 100644 --- a/test/Stove.Tests.SampleApplication/SampleApplicationTestBase.cs +++ b/test/Stove.Tests.SampleApplication/SampleApplicationTestBase.cs @@ -26,7 +26,7 @@ public SampleApplicationTestBase() { builder .UseStoveEntityFramework() - .UseStoveDefaultEventBus() + .UseStoveEventBus() .UseStoveDefaultConnectionStringResolver() .UseStoveDbContextEfTransactionStrategy() .UseStoveMapster(); @@ -52,6 +52,30 @@ protected virtual void CreateInitialData() Surname = "Soykan", Email = "oguzhansoykan@outlook.com" }); + + context.Users.Add(new User + { + CreationTime = Clock.Now, + Name = "Neşet", + Surname = "Ertaş", + Email = "nesetertas@hotmail.com" + }); + + context.Users.Add(new User + { + CreationTime = Clock.Now, + Name = "Muharrem", + Surname = "Ertaş", + Email = "muharremertas@gmail.com" + }); + + context.Users.Add(new User + { + CreationTime = Clock.Now, + Name = "Çekiç", + Surname = "Ali", + Email = "cekicali@hotmail.com" + }); }); } diff --git a/test/Stove.Tests.SampleApplication/UnitOfWorkNested_Tests.cs b/test/Stove.Tests.SampleApplication/UnitOfWorkNested_Tests.cs new file mode 100644 index 0000000..c35cdf4 --- /dev/null +++ b/test/Stove.Tests.SampleApplication/UnitOfWorkNested_Tests.cs @@ -0,0 +1,49 @@ +using System.Transactions; + +using Shouldly; + +using Stove.Domain.Uow; + +using Xunit; + +namespace Stove.Tests.SampleApplication +{ + public class UnitOfWorkNested_Tests : SampleApplicationTestBase + { + private readonly IUnitOfWorkManager _unitOfWorkManager; + + public UnitOfWorkNested_Tests() + { + Building(builder => { }).Ok(); + _unitOfWorkManager = LocalResolver.Resolve(); + } + + [Fact] + public void Should_Copy_Filters_To_Nested_Uow() + { + using (IUnitOfWorkCompleteHandle outerUow = _unitOfWorkManager.Begin()) + { + _unitOfWorkManager.Current.EnableFilter(StoveDataFilters.SoftDelete); + + _unitOfWorkManager.Current.IsFilterEnabled(StoveDataFilters.SoftDelete).ShouldBe(true); + + using (_unitOfWorkManager.Current.DisableFilter(StoveDataFilters.SoftDelete)) + { + using (IUnitOfWorkCompleteHandle nestedUow = _unitOfWorkManager.Begin(TransactionScopeOption.RequiresNew)) + { + //Because nested transaction copies outer uow's filters. + _unitOfWorkManager.Current.IsFilterEnabled(StoveDataFilters.SoftDelete).ShouldBe(false); + + nestedUow.Complete(); + } + + _unitOfWorkManager.Current.IsFilterEnabled(StoveDataFilters.SoftDelete).ShouldBe(false); + } + + _unitOfWorkManager.Current.IsFilterEnabled(StoveDataFilters.SoftDelete).ShouldBe(true); + + outerUow.Complete(); + } + } + } +} diff --git a/test/Stove.Tests.SampleApplication/project.json b/test/Stove.Tests.SampleApplication/project.json index ccef23c..834f1cc 100644 --- a/test/Stove.Tests.SampleApplication/project.json +++ b/test/Stove.Tests.SampleApplication/project.json @@ -5,8 +5,8 @@ "dependencies": { "Effort.EF6": "1.3.0", - "Stove.EntityFramework": "0.0.10-*", - "Stove.Mapster": "0.0.10-*", + "Stove.EntityFramework": "0.0.11-*", + "Stove.Mapster": "0.0.11-*", "Stove.TestBase": "0.0.1-*" },