mirror of
https://github.com/MichaelMure/git-bug.git
synced 2024-12-14 08:45:30 +03:00
37 lines
1.2 KiB
Go
37 lines
1.2 KiB
Go
package entity
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestInterleaved(t *testing.T) {
|
|
primary := Id("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWX______________")
|
|
secondary := Id("YZ0123456789+/________________________________________________")
|
|
expectedId := Id("aYbZc0def1ghij2klmn3opqr4stuv5wxyz6ABCD7EFGH8IJKL9MNOP+QRST/UVWX")
|
|
|
|
interleaved := CombineIds(primary, secondary)
|
|
require.Equal(t, expectedId, interleaved)
|
|
|
|
// full length
|
|
splitPrimary, splitSecondary := SeparateIds(interleaved.String())
|
|
require.Equal(t, string(primary[:50]), splitPrimary)
|
|
require.Equal(t, string(secondary[:14]), splitSecondary)
|
|
|
|
// partial
|
|
splitPrimary, splitSecondary = SeparateIds(string(expectedId[:7]))
|
|
require.Equal(t, string(primary[:4]), splitPrimary)
|
|
require.Equal(t, string(secondary[:3]), splitSecondary)
|
|
|
|
// partial
|
|
splitPrimary, splitSecondary = SeparateIds(string(expectedId[:10]))
|
|
require.Equal(t, string(primary[:6]), splitPrimary)
|
|
require.Equal(t, string(secondary[:4]), splitSecondary)
|
|
|
|
// partial
|
|
splitPrimary, splitSecondary = SeparateIds(string(expectedId[:16]))
|
|
require.Equal(t, string(primary[:11]), splitPrimary)
|
|
require.Equal(t, string(secondary[:5]), splitSecondary)
|
|
}
|