|  | // Copyright 2021 The Go Authors. All rights reserved. | 
|  | // Use of this source code is governed by a BSD-style | 
|  | // license that can be found in the LICENSE file. | 
|  |  | 
|  | package integration | 
|  |  | 
|  | import "golang.org/x/pkgsite/internal/frontend" | 
|  |  | 
|  | var versionsPageMultiGoosDuplicates = []*frontend.VersionList{ | 
|  | { | 
|  | VersionListKey: frontend.VersionListKey{ | 
|  | ModulePath: "example.com/symbols", | 
|  | Major:      "v1", | 
|  | }, | 
|  | Versions: []*frontend.VersionSummary{ | 
|  | { | 
|  | CommitTime:          "Jan 30, 2019", | 
|  | Link:                "/example.com/symbols@v1.2.0/duplicate", | 
|  | Retracted:           false, | 
|  | RetractionRationale: "", | 
|  | Version:             "v1.2.0", | 
|  | IsMinor:             true, | 
|  | Symbols: [][]*frontend.Symbol{ | 
|  | { | 
|  | { | 
|  | Name:     "TokenType", | 
|  | Synopsis: "const TokenType", | 
|  | Link:     "/example.com/symbols@v1.2.0/duplicate?GOOS=windows#TokenType", | 
|  | New:      true, | 
|  | Section:  "Constants", | 
|  | Kind:     "Constant", | 
|  | Builds:   []string{"windows/amd64"}, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | { | 
|  | Name:     "TokenType", | 
|  | Synopsis: "type TokenType int", | 
|  | Link:     "/example.com/symbols@v1.2.0/duplicate?GOOS=darwin#TokenType", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Builds:   []string{"darwin/amd64", "linux/amd64"}, | 
|  | // Children is nil because TokenShort was first | 
|  | // introduced at an earlier version. | 
|  | // Its parent and section changed at this version, | 
|  | // but we don't surface that information. | 
|  | }, | 
|  | { | 
|  | Name:     "TokenType", | 
|  | Synopsis: "type TokenType struct", | 
|  | Link:     "/example.com/symbols@v1.2.0/duplicate?GOOS=js#TokenType", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Children: []*frontend.Symbol{ | 
|  | { | 
|  | Name:     "TokenShort", | 
|  | Synopsis: "func TokenShort() TokenType", | 
|  | Link:     "/example.com/symbols@v1.2.0/duplicate?GOOS=js#TokenShort", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Function", | 
|  | }, | 
|  | }, | 
|  | Builds: []string{"js/wasm"}, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | CommitTime:          "Jan 30, 2019", | 
|  | Link:                "/example.com/symbols@v1.1.0/duplicate", | 
|  | Retracted:           false, | 
|  | RetractionRationale: "", | 
|  | Version:             "v1.1.0", | 
|  | IsMinor:             true, | 
|  | Symbols: [][]*frontend.Symbol{ | 
|  | { | 
|  | { | 
|  | Name:     "TokenShort", | 
|  | Synopsis: "const TokenShort", | 
|  | Link:     "/example.com/symbols@v1.1.0/duplicate?GOOS=darwin#TokenShort", | 
|  | New:      true, | 
|  | Section:  "Constants", | 
|  | Kind:     "Constant", | 
|  | Builds:   []string{"darwin/amd64", "linux/amd64"}, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | } | 
|  |  | 
|  | var versionsPageMultiGoos = []*frontend.VersionList{ | 
|  | { | 
|  | VersionListKey: frontend.VersionListKey{ | 
|  | ModulePath: "example.com/symbols", | 
|  | Major:      "v1", | 
|  | }, | 
|  | Versions: []*frontend.VersionSummary{ | 
|  | { | 
|  | CommitTime:          "Jan 30, 2019", | 
|  | Link:                "/example.com/symbols@v1.2.0/multigoos", | 
|  | Retracted:           false, | 
|  | RetractionRationale: "", | 
|  | Version:             "v1.2.0", | 
|  | IsMinor:             true, | 
|  | Symbols: [][]*frontend.Symbol{ | 
|  | { | 
|  | { | 
|  | Name:     "CloseOnExec", | 
|  | Synopsis: "func CloseOnExec(n int)", | 
|  | Link:     "/example.com/symbols@v1.2.0/multigoos?GOOS=js#CloseOnExec", | 
|  | New:      true, | 
|  | Section:  "Functions", | 
|  | Kind:     "Function", | 
|  | Builds:   []string{"js/wasm"}, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | { | 
|  | Name:     "FD", | 
|  | Synopsis: "type FD", | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Link:     "/example.com/symbols@v1.2.0/multigoos?GOOS=darwin#FD", | 
|  | Children: []*frontend.Symbol{ | 
|  | { | 
|  | Name:     "FD.MyMethod", | 
|  | Synopsis: "func (*FD) MyMethod()", | 
|  | Section:  "Types", | 
|  | Kind:     "Method", | 
|  | Link:     "/example.com/symbols@v1.2.0/multigoos?GOOS=darwin#FD.MyMethod", | 
|  | New:      true, | 
|  | }, | 
|  | }, | 
|  | Builds: []string{"darwin/amd64", "linux/amd64"}, | 
|  | }, | 
|  | { | 
|  | Name:     "FD", | 
|  | Synopsis: "type FD", | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Link:     "/example.com/symbols@v1.2.0/multigoos?GOOS=windows#FD", | 
|  | Children: []*frontend.Symbol{ | 
|  | { | 
|  | Name:     "FD.MyWindowsMethod", | 
|  | Synopsis: "func (*FD) MyWindowsMethod()", | 
|  | Section:  "Types", | 
|  | Kind:     "Method", | 
|  | Link:     "/example.com/symbols@v1.2.0/multigoos?GOOS=windows#FD.MyWindowsMethod", | 
|  | New:      true, | 
|  | }, | 
|  | }, | 
|  | Builds: []string{"windows/amd64"}, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | CommitTime:          "Jan 30, 2019", | 
|  | Link:                "/example.com/symbols@v1.1.0/multigoos", | 
|  | Retracted:           false, | 
|  | RetractionRationale: "", | 
|  | Version:             "v1.1.0", | 
|  | IsMinor:             true, | 
|  | Symbols: [][]*frontend.Symbol{ | 
|  | { | 
|  | { | 
|  | Name:     "CloseOnExec", | 
|  | Synopsis: "func CloseOnExec(foo string) error", | 
|  | Link:     "/example.com/symbols@v1.1.0/multigoos?GOOS=windows#CloseOnExec", | 
|  | New:      true, | 
|  | Section:  "Functions", | 
|  | Kind:     "Function", | 
|  | Builds:   []string{"windows/amd64"}, | 
|  | }, | 
|  | { | 
|  | Name:     "CloseOnExec", | 
|  | Synopsis: "func CloseOnExec(num int) (int, error)", | 
|  | Link:     "/example.com/symbols@v1.1.0/multigoos?GOOS=darwin#CloseOnExec", | 
|  | New:      true, | 
|  | Section:  "Functions", | 
|  | Kind:     "Function", | 
|  | Builds:   []string{"darwin/amd64", "linux/amd64"}, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | { | 
|  | Name:     "FD", | 
|  | Synopsis: "type FD struct", | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Link:     "/example.com/symbols@v1.1.0/multigoos?GOOS=darwin#FD", | 
|  | Builds:   []string{"darwin/amd64", "linux/amd64", "windows/amd64"}, | 
|  | New:      true, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | } | 
|  |  | 
|  | var versionsPageHello = []*frontend.VersionList{ | 
|  | { | 
|  | VersionListKey: frontend.VersionListKey{ | 
|  | ModulePath: "example.com/symbols", | 
|  | Major:      "v1", | 
|  | }, | 
|  | Versions: []*frontend.VersionSummary{ | 
|  | { | 
|  | CommitTime:          "Jan 30, 2019", | 
|  | Link:                "/example.com/symbols@v1.2.0/hello", | 
|  | Retracted:           false, | 
|  | RetractionRationale: "", | 
|  | Version:             "v1.2.0", | 
|  | IsMinor:             true, | 
|  | Symbols: [][]*frontend.Symbol{ | 
|  | { | 
|  | { | 
|  | Name:     "Hello", | 
|  | Synopsis: "func Hello() string", | 
|  | Link:     "/example.com/symbols@v1.2.0/hello?GOOS=js#Hello", | 
|  | New:      true, | 
|  | Section:  "Functions", | 
|  | Kind:     "Function", | 
|  | Builds:   []string{"js/wasm", "windows/amd64"}, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | CommitTime:          "Jan 30, 2019", | 
|  | Link:                "/example.com/symbols@v1.1.0/hello", | 
|  | Retracted:           false, | 
|  | RetractionRationale: "", | 
|  | Version:             "v1.1.0", | 
|  | IsMinor:             true, | 
|  | Symbols: [][]*frontend.Symbol{ | 
|  | { | 
|  | { | 
|  | Name:     "Hello", | 
|  | Synopsis: "func Hello() string", | 
|  | Link:     "/example.com/symbols@v1.1.0/hello?GOOS=darwin#Hello", | 
|  | New:      true, | 
|  | Section:  "Functions", | 
|  | Kind:     "Function", | 
|  | Builds:   []string{"darwin/amd64", "linux/amd64"}, | 
|  | }, | 
|  | { | 
|  | Name:     "HelloJS", | 
|  | Synopsis: "func HelloJS() string", | 
|  | Link:     "/example.com/symbols@v1.1.0/hello?GOOS=js#HelloJS", | 
|  | New:      true, | 
|  | Section:  "Functions", | 
|  | Kind:     "Function", | 
|  | Builds:   []string{"js/wasm"}, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | } | 
|  |  | 
|  | var versionsPageSymbols = []*frontend.VersionList{ | 
|  | { | 
|  | VersionListKey: frontend.VersionListKey{ | 
|  | ModulePath: "example.com/symbols", | 
|  | Major:      "v1", | 
|  | }, | 
|  | Versions: []*frontend.VersionSummary{ | 
|  | { | 
|  | CommitTime: "Jan 30, 2019", | 
|  | Link:       "/example.com/symbols@v1.2.0", | 
|  | Version:    "v1.2.0", | 
|  | IsMinor:    true, | 
|  | }, | 
|  | { | 
|  | CommitTime: "Jan 30, 2019", | 
|  | Link:       "/example.com/symbols@v1.1.0", | 
|  | Version:    "v1.1.0", | 
|  | IsMinor:    true, | 
|  | Symbols: [][]*frontend.Symbol{ | 
|  | { | 
|  | { | 
|  | Name:     "I2", | 
|  | Synopsis: "type I2", | 
|  | Link:     "/example.com/symbols@v1.1.0#I2", | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Children: []*frontend.Symbol{ | 
|  | { | 
|  | Name:     "I2.M2", | 
|  | Synopsis: "M2 func()", | 
|  | Link:     "/example.com/symbols@v1.1.0#I2.M2", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Method", | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | Name:     "S2", | 
|  | Synopsis: "type S2", | 
|  | Link:     "/example.com/symbols@v1.1.0#S2", | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Children: []*frontend.Symbol{ | 
|  | { | 
|  | Name:     "S2.G", | 
|  | Synopsis: "G int", | 
|  | Link:     "/example.com/symbols@v1.1.0#S2.G", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Field", | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | Name:     "String", | 
|  | Synopsis: "type String bool", | 
|  | Link:     "/example.com/symbols@v1.1.0#String", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | CommitTime:          "Jan 30, 2019", | 
|  | Link:                "/example.com/symbols@v1.0.0", | 
|  | Retracted:           false, | 
|  | RetractionRationale: "", | 
|  | Version:             "v1.0.0", | 
|  | IsMinor:             true, | 
|  | Symbols: [][]*frontend.Symbol{ | 
|  | { | 
|  | { | 
|  | Name:     "AA", | 
|  | Synopsis: "const AA", | 
|  | Link:     "/example.com/symbols@v1.0.0#AA", | 
|  | New:      true, | 
|  | Section:  "Constants", | 
|  | Kind:     "Constant", | 
|  | }, | 
|  | { | 
|  | Name:     "BB", | 
|  | Synopsis: "const BB", | 
|  | Link:     "/example.com/symbols@v1.0.0#BB", | 
|  | New:      true, | 
|  | Section:  "Constants", | 
|  | Kind:     "Constant", | 
|  | }, | 
|  | { | 
|  | Name:     "C", | 
|  | Synopsis: "const C", | 
|  | Link:     "/example.com/symbols@v1.0.0#C", | 
|  | New:      true, | 
|  | Section:  "Constants", | 
|  | Kind:     "Constant", | 
|  | }, | 
|  | { | 
|  | Name:     "CC", | 
|  | Synopsis: "const CC", | 
|  | Link:     "/example.com/symbols@v1.0.0#CC", | 
|  | New:      true, | 
|  | Section:  "Constants", | 
|  | Kind:     "Constant", | 
|  | }, | 
|  | }, | 
|  | { | 
|  | { | 
|  | Name:     "A", | 
|  | Synopsis: "var A string", | 
|  | Link:     "/example.com/symbols@v1.0.0#A", | 
|  | New:      true, | 
|  | Section:  "Variables", | 
|  | Kind:     "Variable", | 
|  | }, | 
|  | { | 
|  | Name:     "B", | 
|  | Synopsis: "var B string", | 
|  | Link:     "/example.com/symbols@v1.0.0#B", | 
|  | New:      true, | 
|  | Section:  "Variables", | 
|  | Kind:     "Variable", | 
|  | }, | 
|  | { | 
|  |  | 
|  | Name:     "ErrA", | 
|  | Synopsis: `var ErrA = errors.New("error A")`, | 
|  | Link:     "/example.com/symbols@v1.0.0#ErrA", | 
|  | New:      true, | 
|  | Section:  "Variables", | 
|  | Kind:     "Variable", | 
|  | }, | 
|  | { | 
|  |  | 
|  | Name:     "ErrB", | 
|  | Synopsis: `var ErrB = errors.New("error B")`, | 
|  | Link:     "/example.com/symbols@v1.0.0#ErrB", | 
|  | New:      true, | 
|  | Section:  "Variables", | 
|  | Kind:     "Variable", | 
|  | }, | 
|  | { | 
|  | Name:     "V", | 
|  | Synopsis: "var V = 2", | 
|  | Link:     "/example.com/symbols@v1.0.0#V", | 
|  | New:      true, | 
|  | Section:  "Variables", | 
|  | Kind:     "Variable", | 
|  | }, | 
|  | }, | 
|  | { | 
|  | { | 
|  | Name:     "F", | 
|  | Synopsis: "func F()", | 
|  | Link:     "/example.com/symbols@v1.0.0#F", | 
|  | New:      true, | 
|  | Section:  "Functions", | 
|  | Kind:     "Function", | 
|  | }, | 
|  | }, | 
|  | { | 
|  | { | 
|  | Name:     "I1", | 
|  | Synopsis: "type I1 interface", | 
|  | Link:     "/example.com/symbols@v1.0.0#I1", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Children: []*frontend.Symbol{ | 
|  | { | 
|  | Name:     "I1.M1", | 
|  | Synopsis: "M1 func()", | 
|  | Link:     "/example.com/symbols@v1.0.0#I1.M1", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Method", | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | Name:     "I2", | 
|  | Synopsis: "type I2 interface", | 
|  | Link:     "/example.com/symbols@v1.0.0#I2", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | }, | 
|  | { | 
|  | Name:     "Int", | 
|  | Synopsis: "type Int int", | 
|  | Link:     "/example.com/symbols@v1.0.0#Int", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | }, | 
|  | { | 
|  | Name:     "Num", | 
|  | Synopsis: "type Num int", | 
|  | Link:     "/example.com/symbols@v1.0.0#Num", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Children: []*frontend.Symbol{ | 
|  | { | 
|  | Name:     "DD", | 
|  | Synopsis: "const DD", | 
|  | Link:     "/example.com/symbols@v1.0.0#DD", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Constant", | 
|  | }, | 
|  | { | 
|  | Name:     "EE", | 
|  | Synopsis: "const EE", | 
|  | Link:     "/example.com/symbols@v1.0.0#EE", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Constant", | 
|  | }, | 
|  | { | 
|  | Name:     "FF", | 
|  | Synopsis: "const FF", | 
|  | Link:     "/example.com/symbols@v1.0.0#FF", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Constant", | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | Name:     "S1", | 
|  | Synopsis: "type S1 struct", | 
|  | Link:     "/example.com/symbols@v1.0.0#S1", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Children: []*frontend.Symbol{ | 
|  | { | 
|  | Name:     "S1.F", | 
|  | Synopsis: "F int", | 
|  | Link:     "/example.com/symbols@v1.0.0#S1.F", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Field", | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | { | 
|  | Name:     "S2", | 
|  | Synopsis: "type S2 struct", | 
|  | Link:     "/example.com/symbols@v1.0.0#S2", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | }, | 
|  | { | 
|  | Name:     "T", | 
|  | Synopsis: "type T int", | 
|  | Link:     "/example.com/symbols@v1.0.0#T", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Type", | 
|  | Children: []*frontend.Symbol{ | 
|  | { | 
|  | Name:     "CT", | 
|  | Synopsis: "const CT", | 
|  | Link:     "/example.com/symbols@v1.0.0#CT", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Constant", | 
|  | }, | 
|  | { | 
|  | Name:     "VT", | 
|  | Synopsis: "var VT T", | 
|  | Link:     "/example.com/symbols@v1.0.0#VT", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Variable", | 
|  | }, | 
|  | { | 
|  | Name:     "TF", | 
|  | Synopsis: "func TF() T", | 
|  | Link:     "/example.com/symbols@v1.0.0#TF", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Function", | 
|  | }, | 
|  | { | 
|  | Name:     "T.M", | 
|  | Synopsis: "func (T) M()", | 
|  | Link:     "/example.com/symbols@v1.0.0#T.M", | 
|  | New:      true, | 
|  | Section:  "Types", | 
|  | Kind:     "Method", | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | }, | 
|  | } |