diff --git a/roman/roman.go b/roman/roman.go new file mode 100644 index 0000000..2301213 --- /dev/null +++ b/roman/roman.go @@ -0,0 +1,11 @@ +package roman + +func ConvertToRoman(arabic int) string { + var converted string + if arabic <= 3 { + for i := 0; i < arabic; i++ { + converted += "I" + } + } + return converted +} diff --git a/roman/roman_test.go b/roman/roman_test.go new file mode 100644 index 0000000..0b445d6 --- /dev/null +++ b/roman/roman_test.go @@ -0,0 +1,25 @@ +package roman + +import "testing" + +func TestRomanNemerals(t *testing.T) { + cases := []struct { + Description string + Arabic int + Want string + }{ + {"1 gets converted to I", 1, "I"}, + {"2 gets converted to II", 2, "II"}, + {"3 gets converted to III", 3, "III"}, + } + for _, test := range cases { + t.Run(test.Description, func(t *testing.T) { + got := ConvertToRoman(test.Arabic) + want := test.Want + + if got != want { + t.Errorf("got %q, want %q", got, want) + } + }) + } +}