package primes import ( "testing" "github.com/stretchr/testify/assert" ) func TestLCM(t *testing.T) { var tests = []struct { Expected int64 A, B int64 }{ {2 * 3 * 5 * 7, 2 * 3 * 5, 2 * 3 * 7}, {2 * 2 * 3 * 5 * 7, 2 * 3 * 5, 2 * 2 * 7}, } for _, test := range tests { assert.Equal(t, test.Expected, LCM(test.A, test.B)) assert.Equal(t, test.Expected, LCM(test.B, test.A)) } } func TestGCD(t *testing.T) { var tests = []struct { Expected int64 A, B int64 }{ {2 * 3, 2 * 3 * 5, 2 * 3 * 7}, {2, 2 * 3 * 5, 2 * 2 * 7}, {1, 3 * 5, 2 * 2 * 7}, } for _, test := range tests { assert.Equal(t, test.Expected, GCD(test.A, test.B)) assert.Equal(t, test.Expected, GCD(test.B, test.A)) } }