Ejemplo n.º 1
0
        public void Init()
        {
            this.settingsProvider = new InMemorySettingsProvider();
            this.settingsService  = new AppSettingsService(this.settingsProvider);

            PackageVersion appVersion      = Package.Current.Id.Version;
            string         resourceVersion = $"{appVersion.Major}.{appVersion.Minor}.{appVersion.Revision}";

            IDictionary <string, string> resourceValues = new Dictionary <string, string>
            {
                { ResourceBasedMotdProvider.VersionResouceKey, resourceVersion }
            };

            SettingsConfigurationAttribute settingsConfiguration = GetTestAttribute <SettingsConfigurationAttribute>();

            if (settingsConfiguration != null)
            {
                this.settingsService.EnableMotd = settingsConfiguration.EnableMotd;
                if (!String.IsNullOrEmpty(settingsConfiguration.MotdResourceVersion))
                {
                    resourceValues[ResourceBasedMotdProvider.VersionResouceKey] =
                        settingsConfiguration.MotdResourceVersion;
                }
            }

            this.resourceProvider = new MockResourceProvider(resourceValues);

            this.providerUnderTest = new ResourceBasedMotdProvider(
                this.resourceProvider,
                this.settingsProvider,
                this.settingsService
                );
        }
Ejemplo n.º 2
0
        public void MultipleMotdProviders()
        {
            IMotdProvider laterProvider = new ResourceBasedMotdProvider(
                this.resourceProvider,
                this.settingsProvider,
                this.settingsService
                );

            Assert.IsTrue(laterProvider.GetMotdForDisplay().ShouldDisplay, "A second provider for the same settings should display as long as it is first");
            Assert.IsFalse(laterProvider.GetMotdForDisplay().ShouldDisplay, "The second provider should only display once");
            Assert.IsFalse(this.providerUnderTest.GetMotdForDisplay().ShouldDisplay, "The first provider should not display after the second has");
        }