package lib

import (
	"go/ast"
	"strings"
)

const (
	genPrefix = "// Code generated"
	genSuffix = "DO NOT EDIT."
)

// IsGeneratedFile returns true if the file is generated according to
// https://golang.org/s/generatedcode and other heuristics.
func IsGeneratedFile(file *ast.File) bool {
	for _, c := range file.Comments {
		for _, t := range c.List {
			if strings.HasPrefix(t.Text, genPrefix) && strings.HasSuffix(t.Text, genSuffix) {
				return true
			}
			// Generated testmain.go stubs from rules_go - for some reason, they don't
			// contain the expected markers.
			if strings.Contains(t.Text, "This package must be initialized before packages being tested.") {
				return true
			}
		}
	}
	return false
}
