1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2024-12-10 11:10:18 +02:00
lazygit/pkg/utils/utils_test.go
2021-06-05 22:15:51 +10:00

90 lines
1.2 KiB
Go

package utils
import (
"testing"
"github.com/stretchr/testify/assert"
)
// TestMin is a function.
func TestMin(t *testing.T) {
type scenario struct {
a int
b int
expected int
}
scenarios := []scenario{
{
1,
1,
1,
},
{
1,
2,
1,
},
{
2,
1,
1,
},
}
for _, s := range scenarios {
assert.EqualValues(t, s.expected, Min(s.a, s.b))
}
}
func TestAsJson(t *testing.T) {
type myStruct struct {
a string
}
output := AsJson(&myStruct{a: "foo"})
// no idea why this is returning empty hashes but it's works in the app ¯\_(ツ)_/¯
assert.EqualValues(t, "{}", output)
}
func TestSafeTruncate(t *testing.T) {
type scenario struct {
str string
limit int
expected string
}
scenarios := []scenario{
{
str: "",
limit: 0,
expected: "",
},
{
str: "12345",
limit: 3,
expected: "123",
},
{
str: "12345",
limit: 4,
expected: "1234",
},
{
str: "12345",
limit: 5,
expected: "12345",
},
{
str: "12345",
limit: 6,
expected: "12345",
},
}
for _, s := range scenarios {
assert.EqualValues(t, s.expected, SafeTruncate(s.str, s.limit))
}
}