|
| 1 | +package rese_test |
| 2 | + |
| 3 | +import ( |
| 4 | + "testing" |
| 5 | + |
| 6 | + "github.com/stretchr/testify/require" |
| 7 | + "github.com/yyle88/rese" |
| 8 | +) |
| 9 | + |
| 10 | +func TestM0(t *testing.T) { |
| 11 | + run := func() error { |
| 12 | + return nil |
| 13 | + } |
| 14 | + |
| 15 | + rese.M0(run()) |
| 16 | +} |
| 17 | + |
| 18 | +func TestM1(t *testing.T) { |
| 19 | + run := func() (map[int]string, error) { |
| 20 | + return map[int]string{0: "a"}, nil |
| 21 | + } |
| 22 | + |
| 23 | + m1 := rese.M1(run()) |
| 24 | + require.Equal(t, map[int]string{0: "a"}, m1) |
| 25 | +} |
| 26 | + |
| 27 | +func TestM2(t *testing.T) { |
| 28 | + run := func() (map[int]string, map[string]int, error) { |
| 29 | + return map[int]string{3: "a"}, map[string]int{"x": 1}, nil |
| 30 | + } |
| 31 | + |
| 32 | + m1, m2 := rese.M2(run()) |
| 33 | + require.Equal(t, map[int]string{3: "a"}, m1) |
| 34 | + require.Equal(t, map[string]int{"x": 1}, m2) |
| 35 | +} |
| 36 | + |
| 37 | +func TestM3(t *testing.T) { |
| 38 | + run := func() (map[int8]bool, map[float32]string, map[string]byte, error) { |
| 39 | + return map[int8]bool{1: true}, map[float32]string{1.5: "float"}, map[string]byte{"key": 'A'}, nil |
| 40 | + } |
| 41 | + |
| 42 | + m1, m2, m3 := rese.M3(run()) |
| 43 | + require.Equal(t, map[int8]bool{1: true}, m1) |
| 44 | + require.Equal(t, map[float32]string{1.5: "float"}, m2) |
| 45 | + require.Equal(t, map[string]byte{"key": 'A'}, m3) |
| 46 | +} |
| 47 | + |
| 48 | +func TestM4(t *testing.T) { |
| 49 | + run := func() (map[int64]float64, map[bool]int, map[rune]string, map[uint8]bool, error) { |
| 50 | + return map[int64]float64{100: 3.14}, map[bool]int{true: 1}, map[rune]string{'x': "rune"}, map[uint8]bool{255: false}, nil |
| 51 | + } |
| 52 | + |
| 53 | + m1, m2, m3, m4 := rese.M4(run()) |
| 54 | + require.Equal(t, map[int64]float64{100: 3.14}, m1) |
| 55 | + require.Equal(t, map[bool]int{true: 1}, m2) |
| 56 | + require.Equal(t, map[rune]string{'x': "rune"}, m3) |
| 57 | + require.Equal(t, map[uint8]bool{255: false}, m4) |
| 58 | +} |
| 59 | + |
| 60 | +func TestM5(t *testing.T) { |
| 61 | + run := func() (map[float64]int32, map[int16]complex64, map[string]uint, map[bool]byte, map[uint16]float32, error) { |
| 62 | + return map[float64]int32{2.718: 42}, map[int16]complex64{10: 1 + 2i}, map[string]uint{"num": 100}, map[bool]byte{false: '0'}, map[uint16]float32{1: 0.5}, nil |
| 63 | + } |
| 64 | + |
| 65 | + m1, m2, m3, m4, m5 := rese.M5(run()) |
| 66 | + require.Equal(t, map[float64]int32{2.718: 42}, m1) |
| 67 | + require.Equal(t, map[int16]complex64{10: 1 + 2i}, m2) |
| 68 | + require.Equal(t, map[string]uint{"num": 100}, m3) |
| 69 | + require.Equal(t, map[bool]byte{false: '0'}, m4) |
| 70 | + require.Equal(t, map[uint16]float32{1: 0.5}, m5) |
| 71 | +} |
| 72 | + |
| 73 | +func TestM6(t *testing.T) { |
| 74 | + run := func() (map[uint32]string, map[int]float64, map[complex128]bool, map[string]int8, map[float32]uint64, map[bool]rune, error) { |
| 75 | + return map[uint32]string{1000: "test"}, map[int]float64{5: 2.5}, map[complex128]bool{1 + 1i: true}, map[string]int8{"x": -1}, map[float32]uint64{0.1: 999}, map[bool]rune{true: 'Z'}, nil |
| 76 | + } |
| 77 | + |
| 78 | + m1, m2, m3, m4, m5, m6 := rese.M6(run()) |
| 79 | + require.Equal(t, map[uint32]string{1000: "test"}, m1) |
| 80 | + require.Equal(t, map[int]float64{5: 2.5}, m2) |
| 81 | + require.Equal(t, map[complex128]bool{1 + 1i: true}, m3) |
| 82 | + require.Equal(t, map[string]int8{"x": -1}, m4) |
| 83 | + require.Equal(t, map[float32]uint64{0.1: 999}, m5) |
| 84 | + require.Equal(t, map[bool]rune{true: 'Z'}, m6) |
| 85 | +} |
| 86 | + |
| 87 | +func TestM7(t *testing.T) { |
| 88 | + run := func() (map[int32]uint32, map[uint64]float64, map[string]complex128, map[bool]int16, map[rune]byte, map[float64]string, map[int8]bool, error) { |
| 89 | + return map[int32]uint32{-1: 10}, map[uint64]float64{100: 1.23}, map[string]complex128{"c": 3 + 4i}, map[bool]int16{true: 8}, map[rune]byte{'a': 65}, map[float64]string{0.0: "zero"}, map[int8]bool{127: false}, nil |
| 90 | + } |
| 91 | + |
| 92 | + m1, m2, m3, m4, m5, m6, m7 := rese.M7(run()) |
| 93 | + require.Equal(t, map[int32]uint32{-1: 10}, m1) |
| 94 | + require.Equal(t, map[uint64]float64{100: 1.23}, m2) |
| 95 | + require.Equal(t, map[string]complex128{"c": 3 + 4i}, m3) |
| 96 | + require.Equal(t, map[bool]int16{true: 8}, m4) |
| 97 | + require.Equal(t, map[rune]byte{'a': 65}, m5) |
| 98 | + require.Equal(t, map[float64]string{0.0: "zero"}, m6) |
| 99 | + require.Equal(t, map[int8]bool{127: false}, m7) |
| 100 | +} |
| 101 | + |
| 102 | +func TestM8(t *testing.T) { |
| 103 | + run := func() (map[uint16]int64, map[float32]uint8, map[string]float64, map[bool]complex64, map[int]rune, map[complex128]string, map[uint32]bool, map[int16]int, error) { |
| 104 | + return map[uint16]int64{1: 1000}, map[float32]uint8{2.2: 255}, map[string]float64{"pi": 3.14}, map[bool]complex64{false: 2 + 3i}, map[int]rune{0: 'x'}, map[complex128]string{5 + 6i: "complex"}, map[uint32]bool{10: true}, map[int16]int{-5: 42}, nil |
| 105 | + } |
| 106 | + |
| 107 | + m1, m2, m3, m4, m5, m6, m7, m8 := rese.M8(run()) |
| 108 | + require.Equal(t, map[uint16]int64{1: 1000}, m1) |
| 109 | + require.Equal(t, map[float32]uint8{2.2: 255}, m2) |
| 110 | + require.Equal(t, map[string]float64{"pi": 3.14}, m3) |
| 111 | + require.Equal(t, map[bool]complex64{false: 2 + 3i}, m4) |
| 112 | + require.Equal(t, map[int]rune{0: 'x'}, m5) |
| 113 | + require.Equal(t, map[complex128]string{5 + 6i: "complex"}, m6) |
| 114 | + require.Equal(t, map[uint32]bool{10: true}, m7) |
| 115 | + require.Equal(t, map[int16]int{-5: 42}, m8) |
| 116 | +} |
| 117 | + |
| 118 | +func TestM9(t *testing.T) { |
| 119 | + run := func() (map[int8]uint16, map[float64]int32, map[string]bool, map[uint]float32, map[complex64]string, map[bool]int64, map[rune]uint8, map[int16]complex128, map[uint64]string, error) { |
| 120 | + return map[int8]uint16{1: 100}, map[float64]int32{1.1: 50}, map[string]bool{"yes": true}, map[uint]float32{5: 0.5}, map[complex64]string{1 + 1i: "c64"}, map[bool]int64{true: 999}, map[rune]uint8{'r': 82}, map[int16]complex128{10: 2 + 3i}, map[uint64]string{1000: "end"}, nil |
| 121 | + } |
| 122 | + |
| 123 | + m1, m2, m3, m4, m5, m6, m7, m8, m9 := rese.M9(run()) |
| 124 | + require.Equal(t, map[int8]uint16{1: 100}, m1) |
| 125 | + require.Equal(t, map[float64]int32{1.1: 50}, m2) |
| 126 | + require.Equal(t, map[string]bool{"yes": true}, m3) |
| 127 | + require.Equal(t, map[uint]float32{5: 0.5}, m4) |
| 128 | + require.Equal(t, map[complex64]string{1 + 1i: "c64"}, m5) |
| 129 | + require.Equal(t, map[bool]int64{true: 999}, m6) |
| 130 | + require.Equal(t, map[rune]uint8{'r': 82}, m7) |
| 131 | + require.Equal(t, map[int16]complex128{10: 2 + 3i}, m8) |
| 132 | + require.Equal(t, map[uint64]string{1000: "end"}, m9) |
| 133 | +} |
0 commit comments