Ejemplo n.º 1
0
        public VSIDebugParameters Clone()
        {
            var clone = new VSIDebugParameters();

            clone.ExtensionOptions    = ExtensionOptions?.Select(x => x.Clone()).ToList();
            clone.ExperimentalOptions = ExperimentalOptions?.Select(x => x.Clone()).ToList();
            return(clone);
        }
Ejemplo n.º 2
0
        public void get_all_should_return_extension_with_not_null_extension_property()
        {
            var options = new ExtensionOptions
            {
                Enabled = true,
                Order   = 1
            };

            _options.Extensions = new Dictionary <string, ExtensionOptions>
            {
                [ExtensionName] = options,
            };

            var result    = Act();
            var extension = result.SingleOrDefault();

            extension.ShouldNotBeNull();
            extension.Extension.ShouldNotBeNull();
        }
Ejemplo n.º 3
0
        public void MergeFrom(VSIDebugParameters other)
        {
            if (other.ExtensionOptions != null)
            {
                if (ExtensionOptions == null)
                {
                    ExtensionOptions = new List <Types.EnumOption>();
                }

                ExtensionOptions.AddRange(other.ExtensionOptions);
            }

            if (other.ExperimentalOptions != null)
            {
                if (ExperimentalOptions == null)
                {
                    ExperimentalOptions = new List <Types.EnumOption>();
                }

                ExperimentalOptions.AddRange(other.ExperimentalOptions);
            }
        }
Ejemplo n.º 4
0
        public void GivenCustomExtensionShouldBeRegisteredAfterDefaultExtension()
        {
            var defaultPath = "default";
            var customPath  = "custom";
            var options     = new ExtensionOptions();

            options.DefaultExtensions.Add(defaultPath);
            options.ExtensionPaths.Add(customPath);
            var loader = new Mock <IExtensionLoader>();

            using (var defaultInstance = new ExtensionInstance(defaultPath, Mock.Of <IFileProvider>(), defaultPath, MockConfiguration(), NullLogger <ExtensionInstance> .Instance))
            {
                using (var customInstance = new ExtensionInstance(customPath, Mock.Of <IFileProvider>(), customPath, MockConfiguration(), NullLogger <ExtensionInstance> .Instance))
                {
                    loader.Setup(l => l.LoadExtension(It.Is <string>(s => s.EndsWith(defaultPath)))).Returns(defaultInstance);
                    loader.Setup(l => l.LoadExtension(It.Is <string>(s => s.EndsWith(customPath)))).Returns(customInstance);
                    using (var subject = new ExtensionProvider(new[] { loader.Object }, MockConfigurationLoader(), new ExtensionInstanceFactory(NullLogger <ExtensionInstance> .Instance), Mock.Of <IExtensionLocator>(), Options.Create(options), NullLogger <ExtensionProvider> .Instance))
                    {
                        Assert.Equal((subject as IExtensionProvider).Instances.First().Location, defaultPath);
                    }
                }
            }
        }