//[TestMethod] public void TestCSharpScript() { Files.Do(f => { var omod = new OMOD(f.FileName); Assert.IsNotNull(omod); var scriptFunctions = new ScriptFunctions(); ScriptRunner.RunScript(omod, scriptFunctions); }); }
public void TestOBMMScript() { Files.Do(f => { var omod = new OMOD(f.FileName); Assert.IsNotNull(omod); var data = omod.GetDataFiles(); var plugins = omod.GetPlugins(); var scriptFunctions = new ScriptFunctions(); var srd = ScriptRunner.RunScript(omod, scriptFunctions, data, plugins); Assert.IsNotNull(srd); Assert.IsTrue(!srd.CancelInstall); srd.Pretty(omod, data, plugins); Assert.IsNotNull(srd.InstallFiles); }); }
public void EndToEnd() { // Creation var ops = new OMODCreationOptions { Name = "I love, love... moist towelettes", Author = "erri120", Email = "*****@*****.**", Website = "https://github.com/erri120", Description = "The best OMOD you can find on the internet!", Image = "", MajorVersion = 6, MinorVersion = 6, BuildVersion = 6, CompressionType = CompressionType.SevenZip, DataFileCompressionLevel = CompressionLevel.High, OMODCompressionLevel = CompressionLevel.Medium, ESPs = new List <string>(0), ESPPaths = new List <string>(0), DataFiles = ModFiles, DataFilePaths = FolderStructure, Readme = Readme, Script = Script }; OMOD.CreateOMOD(ops, OMODFile); Assert.IsTrue(File.Exists(OMODFile)); // Test parsing var omod = new OMOD(OMODFile); Assert.IsNotNull(omod); Assert.IsTrue(CompareCreationToFile(ref ops, ref omod)); // Test extraction var data = omod.GetDataFiles(); var fList1 = new List <FileInfo>(); var fList2 = new List <FileInfo>(); Directory.GetFiles("files", "*", SearchOption.AllDirectories).Do(f => { fList1.Add(new FileInfo(f)); }); Directory.GetFiles(data, "*", SearchOption.AllDirectories).Do(f => { fList2.Add(new FileInfo(f)); }); Assert.IsTrue(fList1.Count == fList2.Count); for (var i = 0; i < fList1.Count; i++) { var f1 = fList1[i]; var f2 = fList2[i]; Assert.IsTrue(Equals(f1, f2, Path.GetFullPath("files"), data)); } // Test scripting var scriptFunctions = new ScriptFunctions(); var srd = ScriptRunner.RunScript(omod, scriptFunctions, data); Assert.IsNotNull(srd); Assert.IsTrue(!srd.CancelInstall); Assert.IsTrue(srd.CopyDataFiles.Count == 1 && srd.CopyDataFiles.TryGetValue(new ScriptCopyDataFile("A\\A.txt", "meshes\\a.txt"), out _)); Assert.IsTrue(srd.InstallData.Contains("something.txt")); }