Ejemplo n.º 1
0
        public CSharpCodeProvider(IProjectManager projectManager, IProjectConfiguraiton projectConfiguration, DefaultCodeProvider defaultCodeProvider, ICodeItemProvider codeItemProvider, IIOWrapper iOWrapper, IDialogFactory dialogFactory)
        {
            if (projectManager == null)
            {
                throw new ArgumentNullException(nameof(projectManager));
            }
            if (projectConfiguration == null)
            {
                throw new ArgumentNullException(nameof(projectConfiguration));
            }
            if (defaultCodeProvider == null)
            {
                throw new ArgumentNullException(nameof(defaultCodeProvider));
            }
            if (codeItemProvider == null)
            {
                throw new ArgumentNullException(nameof(codeItemProvider));
            }
            if (iOWrapper == null)
            {
                throw new ArgumentNullException(nameof(iOWrapper));
            }

            this.projectManager       = projectManager;
            this.defaultCodeProvider  = defaultCodeProvider;
            this.projectConfiguration = projectConfiguration;
            this.codeItemProvider     = codeItemProvider;
            this.iOWrapper            = iOWrapper;
            this.dialogFactory        = dialogFactory;
        }
        public void GetCodeItemProvider_ShouldReturnCSharpCodeItemProvider()
        {
            // Act
            ICodeItemProvider codeItemProvider = codeProviderFactory.GetCodeItemProvider(CodeModelLanguageConstants.vsCMLanguageCSharp);

            // Assert
            Assert.IsInstanceOf(typeof(CSharpCodeItemProvider), codeItemProvider);
        }
        public void Init()
        {
            iOWrapper        = Substitute.For <IIOWrapper>();
            codeItemProvider = Substitute.For <ICodeItemProvider>();
            codeFormatter    = Substitute.For <ICodeFormatter>();
            messageManager   = Substitute.For <MessageManager>();

            codeProvider = new CSharpCodeProvider(codeItemProvider, codeFormatter, iOWrapper, messageManager);
        }
 public void Init()
 {
     projectManager       = Substitute.For <IProjectManager>();
     projectConfiguration = new ProjectConfiguraiton();
     iOWrapper            = Substitute.For <IIOWrapper>();
     defaultCodeProvider  = new DefaultCodeProvider(iOWrapper);
     codeItemProvider     = Substitute.For <ICodeItemProvider>();
     dialogFactory        = Substitute.For <IDialogFactory>();
     codeProvider         = new CSharpCodeProvider(projectManager, projectConfiguration, defaultCodeProvider, codeItemProvider, iOWrapper, dialogFactory);
 }
        public void GetCodeItemProvider_NotSupporteCode_ShouldThrowNotSupportedException(string projectLanguageCode)
        {
            // Assert
            NotSupportedException exception = Assert.Throws <NotSupportedException>(new TestDelegate(() =>
            {
                // Act
                ICodeItemProvider codeItemProvider = codeProviderFactory.GetCodeItemProvider(projectLanguageCode);
            }));

            Assert.AreEqual(messageManager.GetMessage("CurrentProjectTypeIsNotSupported"), exception.Message);
        }
Ejemplo n.º 6
0
        public void OkCommand_CanExecuteReturnTrue()
        {
            //Arange
            ICodeItemProvider codeItemProvider = Substitute.For <ICodeItemProvider>();
            bool usedVSFormatting             = true;
            CreateCodeItemViewModel viewModel = new CreateCodeItemViewModel(codeItemProvider, usedVSFormatting);

            //Act
            bool canExecute = viewModel.OKCommand.CanExecute(null);

            //Assert
            Assert.IsTrue(canExecute);
        }
Ejemplo n.º 7
0
        public CreateCodeItemViewModel(ICodeItemProvider codeItemProvider, bool usedVSFormatting)
        {
            if (codeItemProvider == null)
            {
                throw new ArgumentNullException(nameof(codeItemProvider));
            }

            this.codeItemProvider = codeItemProvider;

            this.okCommand             = new RelayCommand <object>(OnOKCliked, IsEnabledOkButton);
            this.cancelCommand         = new RelayCommand <object>(OnCancelCliked);
            this.closeCommand          = new RelayCommand <object>(OnCloseCliked);
            this.isUseVSFormattingCode = usedVSFormatting;
            this.FileName = "File1";
        }
        public ICodeItemProvider GetCodeItemProvider(string projectLanguageCode)
        {
            ICodeItemProvider codeItemProvider = null;

            if (projectLanguageCode == CodeModelLanguageConstants.vsCMLanguageCSharp)
            {
                codeItemProvider = new CSharpCodeItemProvider();
            }
            else
            {
                throw new NotSupportedException("Current project type is not supported");
            }

            return(codeItemProvider);
        }
Ejemplo n.º 9
0
        public ICodeItemProvider GetCodeItemProvider(string projectLanguageCode)
        {
            ICodeItemProvider codeItemProvider = null;

            if (projectLanguageCode == vsCMLanguageCSharp)
            {
                codeItemProvider = new CSharpCodeItemProvider(messageManager);
            }
            else
            {
                throw new NotSupportedException(this.messageManager.GetMessage("CurrentProjectTypeIsNotSupported"));
            }

            return(codeItemProvider);
        }
Ejemplo n.º 10
0
        public void Ctor_ShouldInitExpectedProperty()
        {
            //Arange
            ICodeItemProvider codeItemProvider = Substitute.For <ICodeItemProvider>();
            bool usedVSFormatting = true;

            //Act
            CreateCodeItemViewModel viewModel = new CreateCodeItemViewModel(codeItemProvider, usedVSFormatting);

            //Assert
            Assert.IsNotNull(viewModel.OKCommand);
            Assert.IsNotNull(viewModel.CancelCommand);
            Assert.IsNotNull(viewModel.CloseCommand);
            Assert.AreEqual(usedVSFormatting, viewModel.IsUseVSFormattingCode);
            Assert.AreEqual("File1", viewModel.FileName);
        }
Ejemplo n.º 11
0
        public IViewAdaper <CreateCodeItemView, CreateCodeItemViewResult> GetCreateCodeItemView(ICodeItemProvider codeItemProvider, bool usedVSFormatting)
        {
            var viewModel = new CreateCodeItemViewModel(codeItemProvider, usedVSFormatting);
            var view      = new CreateCodeItemView();

            view.DataContext = viewModel;

            AttachToParentWindow(view);
            return(new CreateCodeItemViewAdapter(view));
        }