mirror of
https://github.com/wabbajack-tools/wabbajack.git
synced 2024-08-30 18:42:17 +00:00
89 lines
3.0 KiB
C#
89 lines
3.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
using Wabbajack.Common;
|
|
using Wabbajack.Lib;
|
|
|
|
namespace Wabbajack.Test
|
|
{
|
|
[TestClass]
|
|
public class MO2Tests
|
|
{
|
|
#region CheckValidInstallPath
|
|
[TestMethod]
|
|
public void CheckValidInstallPath_Empty()
|
|
{
|
|
using (var tempDir = new TempFolder())
|
|
{
|
|
Assert.IsTrue(MO2Installer.CheckValidInstallPath(tempDir.Dir.FullName, downloadFolder: null).Succeeded);
|
|
}
|
|
}
|
|
|
|
[TestMethod]
|
|
public void CheckValidInstallPath_DoesNotExist()
|
|
{
|
|
using (var tempDir = new TempFolder())
|
|
{
|
|
Assert.IsTrue(MO2Installer.CheckValidInstallPath(Path.Combine(tempDir.Dir.FullName, "Subfolder"), downloadFolder: null).Succeeded);
|
|
}
|
|
}
|
|
|
|
[TestMethod]
|
|
public void CheckValidInstallPath_Invalid()
|
|
{
|
|
using (var tempDir = new TempFolder())
|
|
{
|
|
Assert.IsFalse(MO2Installer.CheckValidInstallPath($"{tempDir.Dir.FullName}/*", downloadFolder: null).Succeeded);
|
|
}
|
|
}
|
|
|
|
[TestMethod]
|
|
public void CheckValidInstallPath_HasModlist()
|
|
{
|
|
using (var tempDir = new TempFolder())
|
|
{
|
|
File.Create(Path.Combine(tempDir.Dir.FullName, $"ModOrganizer.exe"));
|
|
File.Create(Path.Combine(tempDir.Dir.FullName, $"modlist{ExtensionManager.Extension}"));
|
|
Assert.IsFalse(MO2Installer.CheckValidInstallPath(tempDir.Dir.FullName, downloadFolder: null).Succeeded);
|
|
}
|
|
}
|
|
|
|
[TestMethod]
|
|
public void CheckValidInstallPath_ProperOverwrite()
|
|
{
|
|
using (var tempDir = new TempFolder())
|
|
{
|
|
File.Create(Path.Combine(tempDir.Dir.FullName, $"ModOrganizer.exe"));
|
|
Assert.IsTrue(MO2Installer.CheckValidInstallPath(tempDir.Dir.FullName, downloadFolder: null).Succeeded);
|
|
}
|
|
}
|
|
|
|
[TestMethod]
|
|
public void CheckValidInstallPath_ImproperOverwrite()
|
|
{
|
|
using (var tempDir = new TempFolder())
|
|
{
|
|
File.Create(Path.Combine(tempDir.Dir.FullName, $"someFile.txt"));
|
|
Assert.IsFalse(MO2Installer.CheckValidInstallPath(tempDir.Dir.FullName, downloadFolder: null).Succeeded);
|
|
}
|
|
}
|
|
|
|
[TestMethod]
|
|
public void CheckValidInstallPath_OverwriteFilesInDownloads()
|
|
{
|
|
using (var tempDir = new TempFolder())
|
|
{
|
|
var downloadsFolder = Path.Combine(tempDir.Dir.FullName, "downloads");
|
|
Directory.CreateDirectory(downloadsFolder);
|
|
File.Create(Path.Combine(tempDir.Dir.FullName, $"downloads/someFile.txt"));
|
|
Assert.IsFalse(MO2Installer.CheckValidInstallPath(tempDir.Dir.FullName, downloadFolder: downloadsFolder).Succeeded);
|
|
}
|
|
}
|
|
#endregion
|
|
}
|
|
}
|