mirror of
https://github.com/wismna/ModernKeePass.git
synced 2025-10-03 15:40:18 -04:00
104 lines
3.5 KiB
C#
104 lines
3.5 KiB
C#
using System;
|
|
using System.Linq;
|
|
using Windows.ApplicationModel;
|
|
using Windows.Storage.AccessCache;
|
|
using Microsoft.VisualStudio.TestPlatform.UnitTestFramework;
|
|
using ModernKeePass.ViewModels;
|
|
using ModernKeePassApp.Test.Mock;
|
|
|
|
namespace ModernKeePassApp.Test
|
|
{
|
|
[TestClass]
|
|
public class ViewModelsTests
|
|
{
|
|
[TestMethod]
|
|
public void TestAboutVm()
|
|
{
|
|
var aboutVm = new AboutVm(Package.Current);
|
|
Assert.AreEqual("1.0", aboutVm.Version);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void TestMainVm()
|
|
{
|
|
var database = new DatabaseHelperMock();
|
|
var mainVm = new MainVm(null, null, database);
|
|
Assert.AreEqual(1, mainVm.MainMenuItems.Count());
|
|
var firstGroup = mainVm.MainMenuItems.FirstOrDefault();
|
|
Assert.AreEqual(6, firstGroup.Count());
|
|
|
|
database.Status = 1;
|
|
mainVm = new MainVm(null, null, database);
|
|
Assert.IsNotNull(mainVm.SelectedItem);
|
|
Assert.AreEqual("Open", ((MainMenuItemVm) mainVm.SelectedItem).Title);
|
|
|
|
database.Status = 2;
|
|
mainVm = new MainVm(null, null, database);
|
|
Assert.IsNotNull(mainVm.SelectedItem);
|
|
Assert.AreEqual(2, mainVm.MainMenuItems.Count());
|
|
Assert.AreEqual("Save", ((MainMenuItemVm) mainVm.SelectedItem).Title);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void TestCompositeKeyVm()
|
|
{
|
|
var database = new DatabaseHelperMock();
|
|
var compositeKeyVm = new CompositeKeyVm(database);
|
|
Assert.IsTrue(compositeKeyVm.OpenDatabase(false).GetAwaiter().GetResult());
|
|
compositeKeyVm.StatusType = 1;
|
|
compositeKeyVm.Password = "test";
|
|
Assert.AreEqual(0, compositeKeyVm.StatusType);
|
|
Assert.AreEqual(15.0, compositeKeyVm.PasswordComplexityIndicator);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void TestOpenVm()
|
|
{
|
|
var database = new DatabaseHelperMock
|
|
{
|
|
Status = 1,
|
|
DatabaseFile = Package.Current.InstalledLocation.GetFileAsync(@"Databases\TestDatabase.kdbx")
|
|
.GetAwaiter().GetResult()
|
|
};
|
|
var openVm = new OpenVm(database);
|
|
Assert.IsTrue(openVm.ShowPasswordBox);
|
|
Assert.AreEqual("MockDatabase", openVm.Name);
|
|
}
|
|
|
|
/*[TestMethod]
|
|
public void TestNewVm()
|
|
{
|
|
}*/
|
|
|
|
[TestMethod]
|
|
public void TestRecentVm()
|
|
{
|
|
var mru = StorageApplicationPermissions.MostRecentlyUsedList;
|
|
mru.Add(Package.Current.InstalledLocation.GetFileAsync(@"Databases\TestDatabase.kdbx")
|
|
.GetAwaiter().GetResult(), "MockDatabase");
|
|
var recentVm = new RecentVm();
|
|
Assert.IsTrue(recentVm.RecentItems.Count == 1);
|
|
recentVm.SelectedItem = recentVm.RecentItems.FirstOrDefault();
|
|
Assert.IsTrue(recentVm.SelectedItem.IsSelected);
|
|
mru.Clear();
|
|
}
|
|
|
|
/*[TestMethod]
|
|
public void TestSaveVm()
|
|
{
|
|
}*/
|
|
|
|
[TestMethod]
|
|
public void TestSettingsVm()
|
|
{
|
|
var settingsVm = new SettingsVm();
|
|
Assert.AreEqual(1, settingsVm.MenuItems.Count());
|
|
var firstGroup = settingsVm.MenuItems.FirstOrDefault();
|
|
Assert.AreEqual(1, firstGroup.Count());
|
|
Assert.IsNotNull(settingsVm.SelectedItem);
|
|
var selectedItem = (ListMenuItemVm) settingsVm.SelectedItem;
|
|
Assert.AreEqual("General", selectedItem.Title);
|
|
}
|
|
}
|
|
}
|