Sha256: 7f638c0496439f6143e72f22b958d10919251d1d8d0001dd104879794eff6c64

Contents?: true

Size: 805 Bytes

Versions: 67

Compression:

Stored size: 805 Bytes

Contents

// +build ignore

package main

import (
	"log"
	"text/template"

	"../../gen"
)

func main() {
	t, err := template.New("").Parse(tmpl)
	if err != nil {
		log.Fatal(err)
	}
	var j js
	if err := gen.Gen("largest-series-product.json", &j, t); err != nil {
		log.Fatal(err)
	}
}

// The JSON structure we expect to be able to unmarshal into
type js struct {
	Cases []struct {
		Description string
		Digits      string
		Span        int
		Expected    int64
	}
}

// template applied to above data structure generates the Go test cases
var tmpl = `package lsproduct

// Source: {{.Ori}}
{{if .Commit}}// Commit: {{.Commit}}
{{end}}

var tests = []struct {
	digits  string
	span    int
	product int64
	ok      bool
}{
{{range .J.Cases}}{ "{{.Digits}}", {{.Span}}, {{.Expected}}, {{ge .Expected 0}}},
{{end}}}
`

Version data entries

67 entries across 67 versions & 1 rubygems

Version Path
trackler-1.0.2.1 tracks/go/exercises/largest-series-product/example_gen.go
trackler-1.0.2.0 tracks/go/exercises/largest-series-product/example_gen.go
trackler-1.0.1.2 tracks/go/exercises/largest-series-product/example_gen.go
trackler-1.0.1.1 tracks/go/exercises/largest-series-product/example_gen.go
trackler-1.0.1.0 tracks/go/exercises/largest-series-product/example_gen.go
trackler-1.0.0.1 tracks/go/exercises/largest-series-product/example_gen.go
trackler-1.0.0 tracks/go/exercises/largest-series-product/example_gen.go