z_mirror/fmm
git clone https://git.raiguard.me/z_mirror/fmm
5240ba3
trunk
1package fmm 2 3import ( 4"testing" 5 6"github.com/stretchr/testify/require" 7) 8 9func TestModIdent (t * testing.T ) { 10tests := []struct { 11input ,output string 12expected ModIdent 13 }{ 14 {"Zipped" ,"Zipped" ,ModIdent {"Zipped" ,nil }}, 15 {"Zipped_1.0.0" ,"Zipped 1.0.0" ,ModIdent {"Zipped" ,& Version {1 }}}, 16 {"Recipe_Book_1.0.35.zip" ,"Recipe_Book 1.0.35" ,ModIdent {"Recipe_Book" ,& Version {1 ,0 ,35 }}}, 17 } 18for _ ,test := range tests { 19mod := NewModIdent (test .input ) 20require .Equal (t ,mod .Name ,test .expected .Name ) 21if test .expected .Version != nil { 22require .NotNil (t ,mod .Version ) 23require .Equal (t ,test .expected .Version .Cmp (mod .Version ),VersionEq ) 24 }else { 25require .Nil (t ,mod .Version ) 26 } 27require .Equal (t ,mod .ToString (),test .output ) 28 } 29}