package models import ( "reflect" "testing" ) func TestRating_Convert(t *testing.T) { type args struct { e621Rating string } tests := []struct { name string r *Rating args args want Rating }{ { name: "Test 1: NSFW Rating", r: new(Rating), args: args{ e621Rating: "e", }, want: NSFW, }, { name: "Test 2: Questionable Rating", r: new(Rating), args: args{ e621Rating: "q", }, want: Questionable, }, { name: "Test 3: SFW Rating", r: new(Rating), args: args{ e621Rating: "s", }, want: SFW, }, { name: "Test 4: Unknown Rating", r: new(Rating), args: args{ e621Rating: "x", }, want: Unknown, }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { tt.r.Convert(tt.args.e621Rating) if !reflect.DeepEqual(*tt.r, tt.want) { t.Errorf("Convert() = %v, want %v", *tt.r, tt.want) } }) } }