/
dundich
/
sa
Обзор
Документация
Войти
/
dundich
/
sa
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/Tests/Sa.HybridFileStorage.PostgresTests/ParserTests.cs
49 строк
2 KB
dundich
added hyrbid file storages (#3)
24 апр 2025, 14:31
Не верифицирован
24 апр 2025, 14:31
0fecc3c
Код
Авторство
О чём код?
using Sa.HybridFileStorage.Postgres; namespace Sa.HybridFileStorage.PostgresTests; public class ParserTests { [Fact] public void ParseFromFileId_ValidFileId_ReturnsTenantIdAndTimestamp() { string fileId = "pg://123/2023/10/05/12/foo/some.txt"; var (tenantId, timestamp) = Parser.ParseFromFileId(fileId); Assert.Equal(123, tenantId); Assert.Equal(new DateTimeOffset(2023, 10, 5, 12, 0, 0, TimeSpan.Zero).ToUnixTimeSeconds(), timestamp); } [Fact] public void ParseFromFileId_InvalidFileId_ThrowsFormatException() { string fileId = "invalid_file_id"; Assert.Throws<FormatException>(() => Parser.ParseFromFileId(fileId)); } [Fact] public void FormatToFileId_ValidParameters_ReturnsFormattedFileId() { string storageType = "pg"; int tenantId = 123; DateTimeOffset date = new(2023, 10, 5, 12, 0, 0, TimeSpan.Zero); string fileName = "example.txt"; string result = Parser.FormatToFileId(storageType, tenantId, date, fileName); Assert.Equal("pg://123/2023/10/05/12/example.txt", result); } [Fact] public void NormalizeFileName_ValidFileName_ReturnsNormalizedFileName() { string fileName = "\\path\\to\\file.txt"; string result = Parser.NormalizeFileName(fileName); Assert.Equal("path/to/file.txt", result); } [Fact] public void GetFileExtension_ValidFileName_ReturnsFileExtension() { string fileName = "example.txt"; string result = Parser.GetFileExtension(fileName); Assert.Equal("txt", result); } }