mirror of
https://github.com/rmcrackan/Libation.git
synced 2026-10-08 12:13:41 -04:00
66 lines
2.4 KiB
C#
66 lines
2.4 KiB
C#
using AudibleApi.Authorization;
|
|
using LibationUiBase;
|
|
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
|
|
namespace TokenStorageSettingsUiTests;
|
|
|
|
[TestClass]
|
|
public class TokenStorageSettingsUiTests
|
|
{
|
|
[TestMethod]
|
|
public void Checkbox_maps_to_enum_values()
|
|
{
|
|
Assert.AreEqual(TokenStorageMethod.Encrypted, TokenStorageSettingsUi.MethodFromCheckbox(true));
|
|
Assert.AreEqual(TokenStorageMethod.Plaintext, TokenStorageSettingsUi.MethodFromCheckbox(false));
|
|
Assert.IsTrue(TokenStorageSettingsUi.CheckboxFromMethod(TokenStorageMethod.Encrypted));
|
|
Assert.IsFalse(TokenStorageSettingsUi.CheckboxFromMethod(TokenStorageMethod.Plaintext));
|
|
}
|
|
|
|
[TestMethod]
|
|
public void Convert_button_enabled_only_for_mismatch_or_indeterminate()
|
|
{
|
|
Assert.IsTrue(TokenStorageSettingsUi.IsConvertButtonEnabled(TokenStorageAlignment.SomeMismatch));
|
|
Assert.IsTrue(TokenStorageSettingsUi.IsConvertButtonEnabled(TokenStorageAlignment.Indeterminate));
|
|
Assert.IsFalse(TokenStorageSettingsUi.IsConvertButtonEnabled(TokenStorageAlignment.AllMatch));
|
|
Assert.IsFalse(TokenStorageSettingsUi.IsConvertButtonEnabled(TokenStorageAlignment.NoApplicableTokens));
|
|
}
|
|
|
|
[TestMethod]
|
|
public void Prompt_bodies_warn_clearly()
|
|
{
|
|
Assert.AreEqual(
|
|
TokenStorageSettingsUi.SavePromptEncrypted,
|
|
TokenStorageSettingsUi.SavePromptBody(TokenStorageMethod.Encrypted));
|
|
Assert.AreEqual(
|
|
TokenStorageSettingsUi.SavePromptPlaintext,
|
|
TokenStorageSettingsUi.SavePromptBody(TokenStorageMethod.Plaintext));
|
|
|
|
StringAssert.Contains(TokenStorageSettingsUi.SavePromptPlaintext, "readable");
|
|
StringAssert.Contains(TokenStorageSettingsUi.StandaloneConfirmPlaintext, "readable");
|
|
}
|
|
|
|
[TestMethod]
|
|
public void FormatConversionError_includes_categories_without_secret_values()
|
|
{
|
|
var result = IdentityTokenConversionResult.Failure(
|
|
TokenStorageAlignment.SomeMismatch,
|
|
"Conversion failed.",
|
|
"RefreshToken",
|
|
"AccessToken");
|
|
|
|
var message = TokenStorageSettingsUi.FormatConversionError(result);
|
|
StringAssert.Contains(message, "RefreshToken");
|
|
StringAssert.Contains(message, "AccessToken");
|
|
Assert.IsFalse(message.Contains("Atna|"));
|
|
}
|
|
|
|
[TestMethod]
|
|
public void Export_copy_warns_about_secret_file()
|
|
{
|
|
StringAssert.Contains(TokenStorageSettingsUi.ExportConfirmBody, "password");
|
|
StringAssert.Contains(TokenStorageSettingsUi.ExportButtonToolTip, "Docker");
|
|
var temp = TokenStorageSettingsUi.ExportButtonText;
|
|
Assert.AreEqual("Export encryption key...", temp);
|
|
}
|
|
}
|