package binlog import ( "strings" "testing" ) func TestGetGtidOfBinlog(t *testing.T) { desc, err := GetGtidOfBinlog("./test/mysql-bin56.000003") if nil != err { t.Fatalf("unexpected error %v", err) } if "F60AB33CC60411E38E1CE66CCF50DB66:1-136" != normalizeGtidForTest(desc) { t.Fatalf("wrong gtid %v", desc) } } func normalizeGtidForTest(desc string) string { parts := strings.Split(desc, ",") for i, part := range parts { gtidParts := strings.SplitN(part, ":", 2) if len(gtidParts) != 2 { parts[i] = strings.ToUpper(part) continue } uuid := strings.ReplaceAll(strings.ToUpper(gtidParts[0]), "-", "") parts[i] = uuid + ":" + strings.ToUpper(gtidParts[1]) } return strings.Join(parts, ",") }