Example #1
1
 /// <summary>
 /// Set the delegate that is used to retrieve the current container.
 /// </summary>
 /// <param name="newProvider">Delegate that, when called, will return
 /// the current ambient container.</param>
 public static void SetContainerProvider(ContainerProvider newProvider)
 {
     _containerProvider = newProvider;
 }
Example #2
0
        public PocDependancyResolver()
        {
            ContainerProvider.ApplyConfigurationFromAssembly(typeof(TType));
            _container = ContainerProvider.Container;

            _container.RegisterInstance <IControllerFactory>(new ContainerControllerFactory(_container));
        }
        public void SetupVerifyKeyPairTest()
        {
            var asymmetricKeyPairGenerator = new AsymmetricKeyPairGenerator(new SecureRandomGenerator());
            var primeMapper     = new Rfc3526PrimeMapper();
            var curveNameMapper = new FieldToCurveNameMapper();

            rsaKeyProvider     = new RsaKeyProvider(asymmetricKeyPairGenerator);
            dsaKeyProvider     = new DsaKeyProvider(asymmetricKeyPairGenerator);
            ecKeyProvider      = new EcKeyProvider(asymmetricKeyPairGenerator, curveNameMapper);
            elGamalKeyProvider = new ElGamalKeyProvider(asymmetricKeyPairGenerator, primeMapper);

            encoding          = new EncodingWrapper();
            pkcs8PemFormatter = new Pkcs8PemFormattingProvider(new AsymmetricKeyProvider(new OidToCipherTypeMapper(), new KeyInfoWrapper(), rsaKeyProvider, dsaKeyProvider, ecKeyProvider, elGamalKeyProvider));

            files = new Dictionary <string, byte[]>();
            file  = new Mock <FileWrapper>();
            file.Setup(f => f.ReadAllBytes(It.IsAny <string>()))
            .Returns <string>(givenFile => files[givenFile]);

            console = new Mock <ConsoleWrapper>();

            Container container = ContainerProvider.GetContainer();

            container.Register <FileWrapper>(() => file.Object);
            container.Register <ConsoleWrapper>(() => console.Object);
        }
Example #4
0
        /// <summary>
        ///     Test Application
        /// </summary>
        private static async Task Main( )
        {
            var tokenSource = new CancellationTokenSource(TimeSpan.FromSeconds(60));
            var token       = tokenSource.Token;

            var container = ContainerProvider.Create("Idasen.ConsoleApp",
                                                     "Idasen.ConsoleApp.log");

            var logger   = container.Resolve <ILogger> ( );
            var provider = container.Resolve <IDeskProvider> ( );

            provider.Initialize(DefaultDeviceName,
                                DefaultDeviceAddress,
                                DefaultDeviceMonitoringTimeout);

            var(isSuccess, desk) = await provider.TryGetDesk(token);

            if (isSuccess)
            {
                desk.MoveTo(7200u);
            }
            else
            {
                logger.Error("Failed to detect desk");
            }

            ReadLine( );
        }
Example #5
0
        /// <summary>
        /// Indexes all wysiwyg blocks in the page containers
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void SetBuilderWysiwygField(object sender, IndexingNodeDataEventArgs e)
        {
            //get the current node id
            int nodeId;

            if (!int.TryParse(e.Fields["id"], out nodeId))
            {
                return;
            }

            string wysiwyg = "";

            var containerProvider = new ContainerProvider(nodeId);

            foreach (Container container in containerProvider.Containers)
            {
                string containerContent = String.Join(" ",
                                                      container.Blocks.Where(b => b is WysiwygBlock)
                                                      .Cast <WysiwygBlock>()
                                                      .Select(b => b.Content));

                e.Fields.Add("WBContainer_" + container.Name, containerContent);
                wysiwyg += " " + containerContent;
            }
            SetWBWysiwig(e, "WBWysiwyg", DecodeString(wysiwyg));
        }
Example #6
0
        public MoveResult TryMoveBricks(List <KeyValuePair <BrickPosition, IBrick> > bricks)
        {
            if (bricks == null || !bricks.Any())
            {
                throw new ArgumentException("Must be non-empty list", nameof(bricks));
            }

            if (IsRequestedBrickPositionOccupiedByAnotherBrick(bricks[0]))
            {
                return(new MoveResult(false));
            }

            if (bricks[0].Key.IsOutsideField())
            {
                return(new MoveResult(false));
            }

            foreach (var brick in bricks)
            {
                RemoveBrickFromOldPosition(brick);
                SetBrickToNewPosition(brick);
            }

            ContainerProvider.Resolve <INotificationService>().CreateAndNotifyNewGameFieldData();

            return(new MoveResult(true));
        }
Example #7
0
        private bool MoveColumn(Func <BrickPosition, BrickPosition> changeBrickPositionFunc)
        {
            if (this.IsColumnInFinalPosition)
            {
                return(false);
            }

            var requestedBrickPositions = this.bricksPositions.Select(pair =>
                                                                      new KeyValuePair <BrickPosition, IBrick>(changeBrickPositionFunc(pair.Key), pair.Value)).ToList();

            var brickPositionsToFieldPush = requestedBrickPositions
                                            .Where(pair => !pair.Key.IsOutsideField())
                                            .OrderByDescending(pair => pair.Key.YCoordinate).ToList();

            if (!brickPositionsToFieldPush.Any())
            {
                return(false);
            }

            var moveResult = ContainerProvider.Resolve <IFieldDriver>().TryMoveBricks(brickPositionsToFieldPush);

            if (!moveResult.Success)
            {
                return(false);
            }

            this.bricksPositions.Clear();

            requestedBrickPositions.ForEach(requestedBrickPosition =>
                                            this.bricksPositions.Add(requestedBrickPosition.Key, requestedBrickPosition.Value));

            return(true);
        }
Example #8
0
 public ServiceProvider()
 {
     Options.AllowOverridingRegistrations = true;
     ContainerProvider.DefaultRegister(this);
     RegisterSingleton <INoAction, NoActionService>();
     RegisterSingleton <IEventNotificator, EventNotificator>();
 }
Example #9
0
        public void Registering_All_Configs_Should_Allow_Resolving_ICatalystCli(NetworkType network)
        {
            var configFilesUsed = new[]
            {
                Constants.NetworkConfigFile(network),
                Constants.SerilogJsonConfigFile,
                CliConstants.ShellNodesConfigFile,
                CliConstants.ShellConfigFile
            }
            .Select(f => Path.Combine(Constants.ConfigSubFolder, f));

            using (var containerProvider = new ContainerProvider(configFilesUsed, FileSystem, Output))
            {
                var containerBuilder = containerProvider.ContainerBuilder;
                containerBuilder.RegisterModule(new CoreLibProvider());
                containerBuilder.RegisterModule(new KeystoreModule());
                containerBuilder.RegisterModule(new KeySignerModule());
                containerBuilder.RegisterModule(new BulletProofsModule());
                containerBuilder.RegisterModule(new RpcClientModule());

                containerBuilder.RegisterType <ConsoleUserOutput>().As <IUserOutput>();
                containerBuilder.RegisterType <CatalystCli>().As <ICatalystCli>();
                containerBuilder.RegisterType <ConsoleUserInput>().As <IUserInput>();
                containerBuilder.RegisterType <CommandContext>().As <ICommandContext>();

                containerProvider.ConfigureContainerBuilder();

                using (var scope = containerProvider.Container.BeginLifetimeScope(CurrentTestName + network))
                {
                    scope.Resolve <ICatalystCli>();
                }
            }
        }
Example #10
0
        public void Init()
        {
            Setup(TestContext.CurrentContext);

            _testMessageToSign = ByteString.CopyFromUtf8("TestMsg");

            ContainerProvider.ContainerBuilder.RegisterInstance(TestKeyRegistry.MockKeyRegistry()).As <IKeyRegistry>();
            ContainerProvider.ContainerBuilder.RegisterModule(new KeystoreModule());
            ContainerProvider.ContainerBuilder.RegisterModule(new KeySignerModule());
            ContainerProvider.ContainerBuilder.RegisterModule(new RpcServerModule());
            ContainerProvider.ContainerBuilder.RegisterModule(new DfsModule());
            ContainerProvider.ContainerBuilder.RegisterModule(new MempoolModule());
            ContainerProvider.ContainerBuilder.RegisterModule(new ConsensusModule());
            ContainerProvider.ContainerBuilder.RegisterModule(new BulletProofsModule());
            ContainerProvider.ContainerBuilder.RegisterModule(new AuthenticationModule());
            ContainerProvider.ContainerBuilder.RegisterModule(new HashingModule());
            ContainerProvider.ContainerBuilder.RegisterType <VerifyMessageRequestObserver>().As <IRpcRequestObserver>();

            ContainerProvider.ContainerBuilder.RegisterInstance(PeerIdHelper.GetPeerId("Test"))
            .As <PeerId>();

            ContainerProvider.ConfigureContainerBuilder();

            _scope       = ContainerProvider.Container.BeginLifetimeScope(CurrentTestName);
            _keySigner   = ContainerProvider.Container.Resolve <IKeySigner>();
            _peerId      = ContainerProvider.Container.Resolve <PeerId>();
            _fakeContext = Substitute.For <IChannelHandlerContext>();

            var fakeChannel = Substitute.For <IChannel>();

            _fakeContext.Channel.Returns(fakeChannel);
            _verifyMessageRequestObserver = _scope.Resolve <IRpcRequestObserver>();
        }
Example #11
0
        public void VerifySignatureTestSetup()
        {
            file = new Mock <FileWrapper>();
            file.Setup(f => f.ReadAllBytes(It.IsAny <string>()))
            .Returns <string>(givenFile => files[givenFile]);

            console = new Mock <ConsoleWrapper>();

            Container container = ContainerProvider.GetContainer();

            container.Register <FileWrapper>(() => file.Object);
            container.Register <ConsoleWrapper>(() => console.Object);

            var asymmetricKeyPairGenerator = new AsymmetricKeyPairGenerator(new SecureRandomGenerator());
            var primeMapper     = new Rfc3526PrimeMapper();
            var curveNameMapper = new FieldToCurveNameMapper();

            rsaKeyProvider     = new RsaKeyProvider(asymmetricKeyPairGenerator);
            dsaKeyProvider     = new DsaKeyProvider(asymmetricKeyPairGenerator);
            ecKeyProvider      = new EcKeyProvider(asymmetricKeyPairGenerator, curveNameMapper);
            elGamalKeyProvider = new ElGamalKeyProvider(asymmetricKeyPairGenerator, primeMapper);

            signatureProvider = new SignatureProvider(new SignatureAlgorithmIdentifierMapper(), new SecureRandomGenerator(), new SignerUtilitiesWrapper());
            pkcs8PemFormatter = new Pkcs8PemFormattingProvider(new AsymmetricKeyProvider(new OidToCipherTypeMapper(), new KeyInfoWrapper(), rsaKeyProvider, dsaKeyProvider, ecKeyProvider, elGamalKeyProvider));

            base64   = new Base64Wrapper();
            encoding = new EncodingWrapper();
            random   = new SecureRandomGenerator();
        }
        internal static bool IsOutsideField(this BrickPosition brickPosition)
        {
            if (brickPosition.YCoordinate < 0)
            {
                return(true);
            }

            if (brickPosition.XCoordinate < 0)
            {
                return(true);
            }

            var settings = ContainerProvider.Resolve <ISettingsProvider>().GetSettingsInstance();

            if (brickPosition.YCoordinate >= settings.FieldHeight)
            {
                return(true);
            }

            if (brickPosition.XCoordinate >= settings.FieldWidth)
            {
                return(true);
            }

            return(false);
        }
Example #13
0
        protected void Application_Start(object sender, EventArgs e)
        {
            var builder = new ContainerBuilder();

            builder.RegisterModelBinders(Assembly.GetExecutingAssembly());
            builder.RegisterModelBinderProvider();
            builder.RegisterControllers(Assembly.GetExecutingAssembly());
            builder.RegisterType <AuthenticationService>().As <IAuthenticationService>();
            builder.RegisterModule <AutofacWebTypesModule>();
            builder.RegisterModule <NHibernateModule>();

            // Change controller action parameter injection by changing web.config.
            builder.RegisterType <ExtensibleActionInvoker>().As <IActionInvoker>().InstancePerRequest();

            // MVC integration test items
            builder.RegisterType <InvokerDependency>().As <IInvokerDependency>();

            // DomainServices
            builder.RegisterAssemblyTypes(Assembly.GetExecutingAssembly()).AssignableTo <DomainService>();
            builder.RegisterModule <AutofacDomainServiceModule>();

            IContainer container = builder.Build();

            _containerProvider = new ContainerProvider(container);

            DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
            DomainService.Factory = new AutofacDomainServiceFactory(new MvcContainerProvider());

            RegisterRoutes(RouteTable.Routes);
        }
Example #14
0
 public void StopGameIfGameIsOver()
 {
     if (this.DrivenEntity.Any(pair => pair.Key.YCoordinate == 0))
     {
         ContainerProvider.Resolve <IGameProvider>().GetGameInstance()?.GameOver();
     }
 }
        public PoaConsensusTests(ITestOutputHelper output) : base(output)
        {
            ContainerProvider.ConfigureContainerBuilder(true, true, true);
            _scope = ContainerProvider.Container.BeginLifetimeScope(CurrentTestName);

            var context = new FfiWrapper();

            _endOfTestCancellationSource = new CancellationTokenSource();

            var poaNodeDetails = Enumerable.Range(0, 3).Select(i =>
            {
                var privateKey     = context.GeneratePrivateKey();
                var publicKey      = privateKey.GetPublicKey();
                var nodeSettings   = PeerSettingsHelper.TestPeerSettings(publicKey.Bytes, 2000 + i);
                var peerIdentifier = nodeSettings.PeerId;
                var name           = $"producer{i.ToString()}";
                return(new { index = i, name, privateKey, nodeSettings, peerIdentifier });
            }
                                                               ).ToList();

            var peerIdentifiers = poaNodeDetails.Select(n => n.peerIdentifier).ToList();

            _nodes = poaNodeDetails.Select(
                p => new PoaTestNode($"producer{p.index.ToString()}",
                                     p.privateKey,
                                     p.nodeSettings,
                                     peerIdentifiers.Except(new[] { p.peerIdentifier }),
                                     FileSystem,
                                     output)).ToList();
        }
Example #16
0
        public void ParseTest()
        {
            var containerProvider = new ContainerProvider();
            var container         = containerProvider.Get();
            var rootParser        = container.Resolve <ParserExecutor>();

            var result = rootParser.Parse(new In {
                Id = "123"
            }).ToList();

            Assert.AreEqual(2, result.Count());
            Assert.IsTrue(result.Any(r => r.GetType() == typeof(ParserExecutorResultBase)));

            var aResult = result.ToArray()[0];

            Assert.AreEqual(null, aResult.Exception);
            Assert.AreEqual("WorkUnit_1_A set Prop1; Execute Service A", aResult.Prop1);
            Assert.AreEqual("WorkUnit_2_A set Prop2; Execute Service B", aResult.Prop2);

            var bResult = result.ToArray()[1];

            Assert.AreEqual(null, bResult.Exception);
            Assert.AreEqual("WorkUnit_1_B set Prop1", bResult.Prop1);
            Assert.AreEqual(null, bResult.Prop2);
        }
Example #17
0
        public ReputationManagerTests(ITestOutputHelper output) : base(output)
        {
            ContainerProvider.ConfigureContainerBuilder();

            _scope             = ContainerProvider.Container.BeginLifetimeScope(CurrentTestName);
            _reputationManager = _scope.Resolve <IReputationManager>();
        }
Example #18
0
        private void CreateContainer()
        {
            var containerBuilder = new ContainerBuilder();

            containerBuilder.RegisterModule(new StormwindModule());
            containerBuilder.RegisterModule(new AutofacControllerModule(Assembly.GetAssembly(GetType())));
            ContainerProvider = new ContainerProvider(containerBuilder.Build());
        }
Example #19
0
        public void Init()
        {
            Setup(TestContext.CurrentContext);

            ContainerProvider.ConfigureContainerBuilder();
            _scope             = ContainerProvider.Container.BeginLifetimeScope(CurrentTestName);
            _reputationManager = _scope.Resolve <IReputationManager>();
        }
Example #20
0
        public override void Run()
        {
            this._view      = ContainerProvider.Resolve <TView>();
            this._viewModel = (ContentViewModel <T, TViewModel>)_view.DataContext;
            base.Run();

            ShellExtensionService.ShowInContentRegion(this._view);
        }
Example #21
0
        protected override Task ProcessStep()
        {
            var newColumn = ContainerProvider.Resolve <IColumnFactory>().CreateColumn();

            ContainerProvider.Resolve <IColumnDriver>().Drive(newColumn);

            return(Task.CompletedTask);
        }
Example #22
0
        private int GenerateRandomBrickKind()
        {
            var settings = ContainerProvider.Resolve <ISettingsProvider>().GetSettingsInstance();

            var rand = new Random();

            return(rand.Next(0, settings.CountOfDifferentBrickKinds));
        }
        protected override async Task ProcessStep()
        {
            ContainerProvider.Resolve <IColumnDriver>().MoveColumnDown();

            var settings = ContainerProvider.Resolve <ISettingsProvider>().GetSettingsInstance();

            await Task.Delay(settings.GameSpeed).ConfigureAwait(false);
        }
Example #24
0
        void BuildContainer()
        {
            var builder = new ContainerBuilder();

            RegisterContainerComponents(builder);

            containerProvider = new ContainerProvider(builder.Build());
            ControllerBuilder.Current.SetControllerFactory(new AutofacControllerFactory(containerProvider));
        }
        public void CreateAndNotifyNewGameFieldData()
        {
            var newGameFieldData = CreateEmptyGameFieldData();

            FillGameFieldData(newGameFieldData);

            ContainerProvider.Resolve <IGameProvider>().GetGameInstance()
            ?.RaiseGameFieldChanged(new GameFieldChangedEventArgs(newGameFieldData));
        }
        private static void Initialize()
        {
            if (_rootScope != null)
            {
                return;
            }

            _rootScope = ContainerProvider.BuildContainer("./");
        }
        private void FillGameFieldData(int[,] newGameFieldData)
        {
            var gameField = ContainerProvider.Resolve <IFieldDriver>().DrivenEntity;

            foreach (var pair in gameField)
            {
                newGameFieldData[pair.Key.XCoordinate, pair.Key.YCoordinate] = pair.Value.BrickKind;
            }
        }
        public HastingsDiscoveryTests(ITestOutputHelper output) : base(output)
        {
            _testScheduler = new TestScheduler();
            _settings      = PeerSettingsHelper.TestPeerSettings();
            _ownNode       = PeerIdHelper.GetPeerId("ownNode");

            ContainerProvider.ConfigureContainerBuilder(true, true);
            _logger = ContainerProvider.Container.Resolve <ILogger>();
        }
Example #29
0
        public static IContainerProvider Setup()
        {
            // Build up your application container and register your dependencies.
            Builder = new ContainerBuilder();
            RegisterDependancies();
            var containerProvider = new ContainerProvider(Builder.Build());

            return(containerProvider);
        }
Example #30
0
        private void InitialiseContainer()
        {
            var builder = new ContainerBuilder();

            builder.RegisterModule(new ControllerlessActionsModule());
            provider = new ContainerProvider(builder.Build());

            ServiceLocator.SetLocatorProvider(() => provider.RequestContainer.Resolve <IServiceLocator>());
        }
Example #31
0
        public void Init()
        {
            this.Setup(TestContext.CurrentContext);
            _testScheduler = new TestScheduler();
            _settings      = PeerSettingsHelper.TestPeerSettings();
            _ownNode       = PeerIdHelper.GetPeerId("ownNode");

            ContainerProvider.ConfigureContainerBuilder(true, true);
            _logger = ContainerProvider.Container.Resolve <ILogger>();
        }
Example #32
0
        static ContainerLocator()
        {
            _provider = () =>
            {
                var accessor = Application.Current as IContainerAccessor;
                if (accessor == null) return null;

                return accessor.Container;
            };
        }