31 lines
1.0 KiB
C#
31 lines
1.0 KiB
C#
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);
|
||
|
|
}
|
||
|
|
}
|