internal async Task <IServiceManager> CreateServicesAsync(string root, InterpreterConfiguration configuration = null) { configuration = configuration ?? PythonVersions.LatestAvailable; configuration.AssertInstalled(); Trace.TraceInformation("Cache Path: " + configuration.ModuleCachePath); configuration.ModuleCachePath = TestData.GetAstAnalysisCachePath(configuration.Version, true); configuration.SearchPaths = new[] { GetAnalysisTestDataFilesPath() }; configuration.TypeshedPath = TestData.GetDefaultTypeshedPath(); var sm = CreateServiceManager(); sm.AddService(new DiagnosticsService()); TestLogger.Log(TraceEventType.Information, "Create TestDependencyResolver"); var dependencyResolver = new TestDependencyResolver(); sm.AddService(dependencyResolver); TestLogger.Log(TraceEventType.Information, "Create PythonAnalyzer"); var analyzer = new PythonAnalyzer(sm); sm.AddService(analyzer); TestLogger.Log(TraceEventType.Information, "Create PythonInterpreter"); var interpreter = await PythonInterpreter.CreateAsync(configuration, root, sm); sm.AddService(interpreter); TestLogger.Log(TraceEventType.Information, "Create RunningDocumentTable"); var documentTable = new RunningDocumentTable(root, sm); sm.AddService(documentTable); return(sm); }
public void Setup() { var eventStore = new TestEventStore(); var dependencyResolver = new TestDependencyResolver(eventStore); var aggregateFactory = new AggregateFactory(dependencyResolver, dependencyResolver.Resolve <ILogger>()); var eventPublisher = new TestEventPublisher(); _unitOfWork = new UnitOfWork <ISingleSignOnToken>(new AggregateRepository <ISingleSignOnToken>(aggregateFactory, eventStore, eventPublisher, new NullCorrelationIdHelper())); }
public void Setup() { _locator = new TestDependencyResolver(); _register = new BusRegistrar(_locator); if (TestHandleRegistrar.HandlerList.Count == 0) { _register.Register(GetType()); } }
public void Setup() { // This will clear the cache between runs. var cacheKeys = MemoryCache.Default.Select(kvp => kvp.Key).ToList(); foreach (var cacheKey in cacheKeys) { MemoryCache.Default.Remove(cacheKey); } var dependencyResolver = new TestDependencyResolver(null); var aggregateFactory = new AggregateFactory(dependencyResolver, dependencyResolver.Resolve <ILogger>()); _testStore = new TestInMemoryEventStore(); _rep1 = new CacheRepository <ISingleSignOnToken>(new AggregateRepository <ISingleSignOnToken>(aggregateFactory, _testStore, new TestEventPublisher(), new NullCorrelationIdHelper()), _testStore); _rep2 = new CacheRepository <ISingleSignOnToken>(new AggregateRepository <ISingleSignOnToken>(aggregateFactory, _testStore, new TestEventPublisher(), new NullCorrelationIdHelper()), _testStore); _aggregate = new TestAggregate(Guid.NewGuid()); _rep1.Save(_aggregate); var t1 = new Task(() => { for (var i = 0; i < 100; i++) { var aggregate = _rep1.Get <TestAggregate>(_aggregate.Id); aggregate.DoSomething(); _rep1.Save(aggregate); } }); var t2 = new Task(() => { for (var i = 0; i < 100; i++) { var aggregate = _rep2.Get <TestAggregate>(_aggregate.Id); aggregate.DoSomething(); _rep2.Save(aggregate); } }); var t3 = new Task(() => { for (var i = 0; i < 100; i++) { var aggregate = _rep2.Get <TestAggregate>(_aggregate.Id); aggregate.DoSomething(); _rep2.Save(aggregate); } }); t1.Start(); t2.Start(); t3.Start(); Task.WaitAll(new[] { t1, t2, t3 }); }
public void Setup() { _eventStore = new TestInMemoryEventStore(); _eventPublisher = new TestEventPublisher(); var dependencyResolver = new TestDependencyResolver(null); var aggregateFactory = new AggregateFactory(dependencyResolver, dependencyResolver.Resolve <ILogger>()); _rep = new Repository <ISingleSignOnToken>(aggregateFactory, _eventStore, _eventPublisher, new NullCorrelationIdHelper()); _aggregate = new TestAggregate(Guid.Empty); }
public void Setup() { var eventStore = new TestEventStore(); _commandPublisher = new TestCommandPublisher(); _dependencyResolver = new TestDependencyResolver(eventStore, _commandPublisher); var sagaFactory = new AggregateFactory(_dependencyResolver, _dependencyResolver.Resolve <ILogger>()); var testEventPublisher = new TestEventPublisher(); _unitOfWork = new SagaUnitOfWork <ISingleSignOnToken>(new SagaRepository <ISingleSignOnToken>(sagaFactory, eventStore, testEventPublisher, null, new NullCorrelationIdHelper())); }
public void Setup() { _dependencyResolver = new TestDependencyResolver(null); var aggregateFactory = new AggregateFactory(_dependencyResolver, _dependencyResolver.Resolve <ILogger>()); _eventStore = new TestInMemoryEventStore(); _eventPublisher = new TestEventPublisher(); _rep = new AggregateRepository <ISingleSignOnToken>(aggregateFactory, _eventStore, _eventPublisher, new NullCorrelationIdHelper(), new ConfigurationManager()); _unitOfWork = new UnitOfWork <ISingleSignOnToken>(_rep); _aggregate = new TestAggregateNoParameterLessConstructor(2); }
public void Setup() { var eventStore = new TestInMemoryEventStore(); var eventPublisher = new TestEventPublisher(); var snapshotStore = new TestSnapshotStore(); var snapshotStrategy = new DefaultSnapshotStrategy <ISingleSignOnToken>(); var dependencyResolver = new TestDependencyResolver(null); var aggregateFactory = new AggregateFactory(dependencyResolver, dependencyResolver.Resolve <ILogger>()); var snapshotRepository = new SnapshotRepository <ISingleSignOnToken>(snapshotStore, snapshotStrategy, new Repository <ISingleSignOnToken>(aggregateFactory, eventStore, eventPublisher, new NullCorrelationIdHelper()), eventStore, aggregateFactory); var session = new UnitOfWork <ISingleSignOnToken>(snapshotRepository); _aggregate = session.Get <TestSnapshotAggregate>(Guid.NewGuid()); }
public void Setup() { _eventStore = new TestInMemoryEventStore(); _eventPublisher = new TestEventPublisher(); var dependencyResolver = new TestDependencyResolver(null); var aggregateFactory = new AggregateFactory(dependencyResolver, dependencyResolver.Resolve <ILogger>()); _rep = new Repository <ISingleSignOnToken>(aggregateFactory, _eventStore, _eventPublisher, new NullCorrelationIdHelper()); _unitOfWork = new UnitOfWork <ISingleSignOnToken>(_rep); _aggregate = new TestAggregate(Guid.NewGuid()); _aggregate.DoSomething(); _rep.Save(_aggregate); }
public void Setup() { var eventStore = new TestSnapshotEventStore(); var eventPublisher = new TestEventPublisher(); var snapshotStore = new NullSnapshotStore(); var snapshotStrategy = new DefaultSnapshotStrategy <ISingleSignOnToken>(); _dependencyResolver = new TestDependencyResolver(null); var aggregateFactory = new AggregateFactory(_dependencyResolver, _dependencyResolver.Resolve <ILogger>()); var repository = new SnapshotRepository <ISingleSignOnToken>(snapshotStore, snapshotStrategy, new AggregateRepository <ISingleSignOnToken>(aggregateFactory, eventStore, eventPublisher, new NullCorrelationIdHelper(), new ConfigurationManager()), eventStore, aggregateFactory); var session = new UnitOfWork <ISingleSignOnToken>(repository); Guid id = Guid.NewGuid(); _dependencyResolver.NewAggregateGuid = id; _aggregate = session.Get <TestSnapshotAggregate>(id); }
public void Setup() { var eventStore = new TestInMemoryEventStore(); var eventPublisher = new TestEventPublisher(); _snapshotStore = new TestSnapshotStore(); var snapshotStrategy = new DefaultSnapshotStrategy <ISingleSignOnToken>(); var dependencyResolver = new TestDependencyResolver(null); var aggregateFactory = new AggregateFactory(dependencyResolver, dependencyResolver.Resolve <ILogger>()); var repository = new SnapshotRepository <ISingleSignOnToken>(_snapshotStore, snapshotStrategy, new AggregateRepository <ISingleSignOnToken>(aggregateFactory, eventStore, eventPublisher, new NullCorrelationIdHelper(), new ConfigurationManager()), eventStore, aggregateFactory); var session = new UnitOfWork <ISingleSignOnToken>(repository); var aggregate = new TestSnapshotAggregate(); for (int i = 0; i < 30; i++) { aggregate.DoSomething(); } session.Add(aggregate); session.Commit(); }
public void Setup() { IEventStore <ISingleSignOnToken> eventStore = new TestInMemoryEventStore(); var eventPublisher = new TestEventPublisher(); _snapshotStore = new TestInMemorySnapshotStore(); var snapshotStrategy = new DefaultSnapshotStrategy <ISingleSignOnToken>(); var dependencyResolver = new TestDependencyResolver(null); var aggregateFactory = new AggregateFactory(dependencyResolver, dependencyResolver.Resolve <ILogger>()); var repository = new SnapshotRepository <ISingleSignOnToken>(_snapshotStore, snapshotStrategy, new Repository <ISingleSignOnToken>(aggregateFactory, eventStore, eventPublisher, new NullCorrelationIdHelper()), eventStore, aggregateFactory); _unitOfWork = new UnitOfWork <ISingleSignOnToken>(repository); _aggregate = new TestSnapshotAggregate(); for (var i = 0; i < 20; i++) { _unitOfWork.Add(_aggregate); _aggregate.DoSomething(); _unitOfWork.Commit(); } }
public static HttpServer SetupODataServer(TestDependencyResolver dependencyResolver = null) { // Controllers var repo = SetupTestPackageRepository(); var configuration = new Mock<IGalleryConfigurationService>(MockBehavior.Strict); configuration.Setup(c => c.GetSiteRoot(It.IsAny<bool>())).Returns("https://nuget.org/"); configuration.Setup(c => c.Features).Returns(new FeatureConfiguration { FriendlyLicenses = true }); var searchService = new Mock<ISearchService>(MockBehavior.Strict); searchService.Setup(s => s.Search(It.IsAny<SearchFilter>())).Returns <IQueryable<Package>, string>((_, __) => Task.FromResult(new SearchResults(_.Count(), DateTime.UtcNow, _))); searchService.Setup(s => s.ContainsAllVersions).Returns(false); var v1Service = new TestableV1Feed(repo.Object, configuration.Object, searchService.Object); var v2Service = new TestableV2Feed(repo.Object, configuration.Object, searchService.Object); if (dependencyResolver == null) { dependencyResolver = new TestDependencyResolver(); } dependencyResolver.RegisterService(typeof(ODataV1FeedController), v1Service); dependencyResolver.RegisterService(typeof(ODataV2FeedController), v2Service); // Create server var server = SetupServer(dependencyResolver); // Additional routes needed in tests server.Configuration.Routes.Add("v1" + RouteName.DownloadPackage, new HttpRoute("api/v1/package/{id}/{version}")); server.Configuration.Routes.Add("v2" + RouteName.DownloadPackage, new HttpRoute("api/v2/package/{id}/{version}")); // Ready to go return server; }