Exemple #1
0
        public void ConfigurationPackageAtMockCodePackageActivationContextTest()
        {
            //build ConfigurationSectionCollection
            var configSections = new ConfigurationSectionCollection();

            //Build ConfigurationSettings
            var configSettings = CreateConfigurationSettings(configSections);

            //add one ConfigurationSection
            ConfigurationSection configSection = CreateConfigurationSection(nameof(configSection.Name));

            configSections.Add(configSection);

            //add one Parameters entry
            ConfigurationProperty parameter = CreateConfigurationSectionParameters(nameof(parameter.Name), nameof(parameter.Value));

            configSection.Parameters.Add(parameter);

            //Build ConfigurationPackage
            ConfigurationPackage configPackage = CreateConfigurationPackage(configSettings, nameof(configPackage.Path));

            var context = new MockCodePackageActivationContext(
                "fabric:/MockApp",
                "MockAppType",
                "Code",
                "1.0.0.0",
                Guid.NewGuid().ToString(),
                @"C:\logDirectory",
                @"C:\tempDirectory",
                @"C:\workDirectory",
                "ServiceManifestName",
                "1.0.0.0")
            {
                ConfigurationPackage = configPackage
            };

            Assert.AreEqual(configPackage, context.ConfigurationPackage);
            Assert.AreEqual(configSettings, context.ConfigurationPackage.Settings);
            Assert.AreEqual(nameof(configPackage.Path), context.ConfigurationPackage.Path);

            Assert.AreEqual(configSettings, configPackage.Settings);

            Assert.AreEqual(configSection, configPackage.Settings.Sections[0]);
            Assert.AreEqual(nameof(configSection.Name), configPackage.Settings.Sections[0].Name);

            Assert.AreEqual(parameter, configPackage.Settings.Sections[0].Parameters[0]);
            Assert.AreEqual(nameof(parameter.Name), configPackage.Settings.Sections[0].Parameters[0].Name);
            Assert.AreEqual(nameof(parameter.Value), configPackage.Settings.Sections[0].Parameters[0].Value);
        }
        public void TestCustomContext()
        {
            var newUri          = new Uri("fabric:/MockApp/OtherMockStatefulService");
            var serviceTypeName = "OtherMockServiceType";
            var partitionId     = Guid.NewGuid();
            var replicaId       = long.MaxValue;
            var context         = new MockCodePackageActivationContext("fabric:/MyApp", "MyAppType", "Code", "Ver", "Context", "Log", "Temp", "Work", "Man", "ManVer");

            var serviceContext = MockStatefulServiceContextFactory.Create(context, serviceTypeName, newUri, partitionId, replicaId);

            var instance = MockActorServiceFactory.CreateActorServiceForActor <MockActor>(context: serviceContext);

            Assert.IsInstanceOfType(instance, typeof(MockActorService <MockActor>));
            Assert.AreEqual(serviceContext, instance.Context);
        }
        public static StatefulServiceContext GetMockContext()
        {
            //build ConfigurationSectionCollection
            var configSections = new ConfigurationSectionCollection();

            //Build ConfigurationSettings
            var configSettings = CreateConfigurationSettings(configSections);

            ConfigurationSection configSection = CreateConfigurationSection("ClusterConfig");

            configSections.Add(configSection);

            ConfigurationProperty reverseProxyPort = CreateConfigurationSectionParameters("ReverseProxy_Port", "19081");

            configSection.Parameters.Add(reverseProxyPort);

            ConfigurationProperty maxTradesPending = CreateConfigurationSectionParameters("MaxTradesPending", "10");

            configSection.Parameters.Add(maxTradesPending);

            ConfigurationProperty appInsightsKey = CreateConfigurationSectionParameters("Admin_AppInsights_InstrumentationKey", "");

            configSection.Parameters.Add(appInsightsKey);

            ConfigurationProperty teamName = CreateConfigurationSectionParameters("TeamName", "");

            configSection.Parameters.Add(teamName);


            //Build ConfigurationPackage
            ConfigurationPackage configPackage = CreateConfigurationPackage(configSettings);
            var context = new MockCodePackageActivationContext(
                "fabric:/MockApp",
                "MockAppType",
                "Code",
                "1.0.0.0",
                Guid.NewGuid().ToString(),
                @"C:\logDirectory",
                @"C:\tempDirectory",
                @"C:\workDirectory",
                "ServiceManifestName",
                "1.0.0.0")
            {
                ConfigurationPackage = configPackage
            };

            return(MockStatefulServiceContextFactory.Create(context, "barry", new Uri("fabric:/barry/norman"), Guid.NewGuid(), 1));
        }
        public void TestCustom_WithInitData()
        {
            var newUri          = new Uri("fabric:/MockApp/OtherMockStatelessService");
            var serviceTypeName = "OtherMockServiceType";
            var partitionId     = Guid.NewGuid();
            var replicaId       = long.MaxValue;
            var context         = new MockCodePackageActivationContext("fabric:/MyApp", "MyAppType", "Code", "Ver", "Context", "Log", "Temp", "Work", "Man", "ManVer");

            var instance = MockStatelessServiceContextFactory.Create(context, serviceTypeName, newUri, partitionId, replicaId, Encoding.UTF8.GetBytes("blah"));

            Assert.IsInstanceOfType(instance, typeof(StatelessServiceContext));
            Assert.AreEqual(context, instance.CodePackageActivationContext);
            Assert.AreEqual(newUri, instance.ServiceName);
            Assert.AreEqual(serviceTypeName, instance.ServiceTypeName);
            Assert.AreEqual(partitionId, instance.PartitionId);
            Assert.AreEqual(replicaId, instance.InstanceId);
            Assert.AreEqual(replicaId, instance.ReplicaOrInstanceId);
            CollectionAssert.AreEqual(Encoding.UTF8.GetBytes("blah"), instance.InitializationData);
        }