public ImportWizard() { ImportSettings = new ImportSettings(); _pageSequence = new CollectionViewSource { Source = new ObservableCollection<Page>(new Page[] { new StartupPage { DataContext = ImportSettings }, new FileSourcePage { DataContext = ImportSettings }, new SaveProjectPage { DataContext = ImportSettings } }) }; PageCount = _pageSequence.View.OfType<object>().Count(); PageSequence = _pageSequence.View; PageSequence.CurrentChanged += PageSequence_CurrentChanged; PageSequence.MoveCurrentToFirst(); DataContext = this; InitializeComponent(); }
public void ImportWizardSimpleApp() { DispatcherTest(async () => { var settings = new ImportSettings(); settings.SourcePath = TestData.GetPath("TestData\\HelloWorldApp\\"); settings.Filters = "*.js;*.njsproj"; settings.ProjectPath = TestData.GetPath("TestData\\TestDestination\\Subdirectory\\ProjectName.njsproj"); await Dispatcher.Yield(); Assert.AreEqual("app.js", settings.StartupFile); var path = settings.CreateRequestedProject(); Assert.AreEqual(settings.ProjectPath, path); var proj = XDocument.Load(path); Assert.AreEqual("..\\..\\HelloWorldApp\\", proj.Descendant("ProjectHome").Value); AssertUtil.ContainsExactly(proj.Descendants(proj.GetName("Compile")).Select(x => x.Attribute("Include").Value), "app.js"); AssertUtil.ContainsExactly(proj.Descendants(proj.GetName("Content")).Select(x => x.Attribute("Include").Value), "HelloWorld.njsproj"); }); }
public void ImportWizardTypeScript() { var settings = new ImportSettings(); settings.SourcePath = TestData.GetPath("TestData\\HelloWorldTypeScript\\"); settings.Filters = "*.ts;*.md;*.json"; settings.StartupFile = "server.ts"; settings.ExcludeNodeModules = false; settings.ProjectPath = TestData.GetPath("TestData\\TestDestination\\TsSubdirectory\\ProjectName.njsproj"); var path = settings.CreateRequestedProject(); Assert.AreEqual(settings.ProjectPath, path); var proj = XDocument.Load(path); AssertUtil.ContainsExactly(proj.Descendants(proj.GetName("TypeScriptCompile")).Select(x => x.Attribute("Include").Value), "server.ts"); Assert.AreEqual("server.js", proj.Descendant("StartupFile").Value); }
public void ProjectFileAlreadyExists() { DispatcherTest(async () => { var settings = new ImportSettings(); settings.SourcePath = TestData.GetPath("TestData\\HelloWorld3"); settings.Filters = "*.js"; settings.StartupFile = "server.js"; settings.ExcludeNodeModules = true; await Dispatcher.Yield(); Assert.AreEqual("HelloWorld31.njsproj", Path.GetFileName(settings.ProjectPath)); }); }
public void ImportWizardEmptyFoldersDontExcludeNodeModules() { var settings = new ImportSettings(); settings.SourcePath = TestData.GetPath("TestData\\HelloWorld4\\"); settings.Filters = "*.js"; settings.StartupFile = "server.js"; settings.ExcludeNodeModules = false; settings.ProjectPath = TestData.GetPath("TestData\\TestDestination\\Subdirectory\\ProjectName.njsproj"); var path = settings.CreateRequestedProject(); Assert.AreEqual(settings.ProjectPath, path); var proj = XDocument.Load(path); AssertUtil.ContainsExactly(proj.Descendants(proj.GetName("Folder")).Select(x => x.Attribute("Include").Value), "Baz", "node_modules"); }
public void ImportWizardExcludeDotPrefixedFolders() { var settings = new ImportSettings(); settings.SourcePath = TestData.GetPath("TestData\\HelloWorld5\\"); settings.Filters = "*.js;*.njsproj"; settings.StartupFile = "server.js"; settings.ExcludeNodeModules = true; settings.ProjectPath = TestData.GetPath("TestData\\TestDestination\\Subdirectory\\ProjectName.njsproj"); var path = settings.CreateRequestedProject(); Assert.AreEqual(settings.ProjectPath, path); var proj = XDocument.Load(path); AssertUtil.ContainsExactly(proj.Descendants(proj.GetName("Compile")).Select(x => x.Attribute("Include").Value), "server.js", "TestFolder\\SubItem.js", "TestFolderWith.Extension\\SubItem.js"); AssertUtil.ContainsExactly(proj.Descendants(proj.GetName("Folder")).Select(x => x.Attribute("Include").Value), "TestFolder", "TestFolderWith.Extension"); }
public void ImportWizardStartupFile() { var settings = new ImportSettings(); settings.SourcePath = TestData.GetPath("TestData\\HelloWorld\\"); settings.Filters = "*.js;*.njsproj"; settings.StartupFile = "server.js"; settings.ProjectPath = TestData.GetPath("TestData\\TestDestination\\Subdirectory\\ProjectName.njsproj"); var path = settings.CreateRequestedProject(); Assert.AreEqual(settings.ProjectPath, path); var proj = XDocument.Load(path); Assert.AreEqual("server.js", proj.Descendant("StartupFile").Value); }
public void ImportWizardFolders() { var settings = new ImportSettings(); settings.SourcePath = TestData.GetPath("TestData\\HelloWorld2\\"); settings.Filters = "*"; settings.ProjectPath = TestData.GetPath("TestData\\TestDestination\\Subdirectory\\ProjectName.njsproj"); var path = settings.CreateRequestedProject(); Assert.AreEqual(settings.ProjectPath, path); var proj = XDocument.Load(path); Assert.AreEqual("..\\..\\HelloWorld2\\", proj.Descendant("ProjectHome").Value); AssertUtil.ContainsExactly(proj.Descendants(proj.GetName("Compile")).Select(x => x.Attribute("Include").Value), "server.js", "TestFolder\\SubItem.js", "TestFolder2\\SubItem.js", "TestFolder3\\SubItem.js"); AssertUtil.ContainsExactly(proj.Descendants(proj.GetName("Folder")).Select(x => x.Attribute("Include").Value), "TestFolder", "TestFolder2", "TestFolder3"); }