using CadSearchGui; namespace CadSearchGui.Tests; public class IndexerParseFilenameTests { [Theory] [InlineData("9244228573.asm.41", "9244228573", "asm", 41)] [InlineData("9244228573_D100.asm.16", "9244228573_D100", "asm", 16)] [InlineData("1504240807.PRT.1", "1504240807", "PRT", 1)] public void Estrae_codice_tipo_e_versione_dal_nome_file( string nomeFile, string codiceAtteso, string tipoAtteso, int versioneAttesa) { var (codice, tipo, versione) = Indexer.ParseFilename(nomeFile); Assert.Equal(codiceAtteso, codice); Assert.Equal(tipoAtteso, tipo); Assert.Equal(versioneAttesa, versione); } [Theory] [InlineData("9244228573.edz")] [InlineData("readme.txt")] [InlineData("senza_estensioni")] public void File_senza_pattern_codice_tipo_versione_finisce_in_altro(string nomeFile) { var (codice, tipo, versione) = Indexer.ParseFilename(nomeFile); Assert.Equal(nomeFile, codice); Assert.Equal("altro", tipo); Assert.Null(versione); } }