package atoi_test import ( "testing" "git.jxs.me/leetgo/atoi" "github.com/stretchr/testify/require" ) func TestEmpty(t *testing.T) { require.Equal(t, 0, atoi.Convert("")) } func TestSingle(t *testing.T) { require.Equal(t, 7, atoi.Convert("7")) } func TestExample1(t *testing.T) { require.Equal(t, 42, atoi.Convert("42")) } func TestExample2(t *testing.T) { require.Equal(t, -42, atoi.Convert(" -42")) } func TestExample3(t *testing.T) { require.Equal(t, 4193, atoi.Convert("4193 with words")) } func TestZeroPrefix(t *testing.T) { require.Equal(t, 101, atoi.Convert("+00101")) } func TestOverflow(t *testing.T) { require.Equal(t, -2147483648, atoi.Convert("-91283472332")) } func TestHuge(t *testing.T) { require.Equal(t, 2147483647, atoi.Convert("20000000000000000000")) } func TestPad(t *testing.T) { require.Equal(t, 12345678, atoi.Convert(" 0000000000012345678")) }