| 123456789101112131415161718192021222324252627282930313233343536 |
- namespace MeloongCore.Tests;
- public class ConfigTest : TestWithFolder {
- [Test]
- public async Task JsonConfigProvider_EncryptedReadWrite() {
- var filePath = Path.Combine(tempFolder, "config.json");
- var provider = new JsonConfigProvider(filePath);
- provider.SetToCache("token", "plain token", encrypted: true);
- provider.Save();
- await Assert.That(FileUtils.ReadAsString(filePath).Contains("plain token")).IsFalse();
- await Assert.That(provider.Read("token", encrypted: true)).IsEqualTo("plain token");
- await Assert.That(provider.DecryptedContent.TryGetValue("token", out var decrypted) && decrypted == "plain token").IsTrue();
- }
- [Test]
- public async Task JsonConfigProvider_ClearCache() {
- var filePath = Path.Combine(tempFolder, "config.json");
- var provider = new JsonConfigProvider(filePath);
- provider.SetToCache("token", "old token", encrypted: true);
- provider.Save();
- await Assert.That(provider.Read("token", encrypted: true)).IsEqualTo("old token");
- var secondProvider = new JsonConfigProvider(filePath);
- secondProvider.SetToCache("token", "new token", encrypted: true);
- secondProvider.Save();
- provider.ClearCache();
- await Assert.That(provider.DecryptedContent.IsEmpty).IsTrue();
- await Assert.That(provider.Read("token", encrypted: true)).IsEqualTo("new token");
- }
- }
|