func CompareTwoModules()

in breakingchange.go [50:73]


func CompareTwoModules(dir1 string, dir2 string) (string, error) {
	fs := afero.Afero{Fs: afero.OsFs{}}
	oldModule, err := NewModule(dir1, fs)
	if err != nil {
		return "", err
	}
	currentModule, err := NewModule(dir2, fs)
	if err != nil {
		return "", err
	}
	changes, err := BreakingChanges(oldModule, currentModule)
	if err != nil {
		return "", err
	}
	aggregated := linq.From(changes).Select(func(i interface{}) interface{} {
		return i.(Change).ToString()
	}).Aggregate(func(i interface{}, i2 interface{}) interface{} {
		return fmt.Sprintf("%v\n%v", i, i2)
	})
	if r, ok := aggregated.(string); ok {
		return r, nil
	}
	return "", nil
}