Sha256: 5d7a44f795f8ee95f5395ca4a53ee724dc2ae92aac6895b2308c92cfc4a5c04a

Contents?: true

Size: 1.15 KB

Versions: 50

Compression:

Stored size: 1.15 KB

Contents

package forth

// API:
// func Forth([]string) ([]int, error)
//

import (
	"reflect"
	"testing"
)

const targetTestVersion = 2

func TestTestVersion(t *testing.T) {
	if testVersion != targetTestVersion {
		t.Fatalf("Found testVersion = %v, want %v", testVersion, targetTestVersion)
	}
}

func TestForth(t *testing.T) {
	for _, tg := range testGroups {
		for _, tc := range tg.tests {
			if v, err := Forth(tc.input); err == nil {
				var _ error = err
				if tc.expected == nil {
					t.Fatalf("FAIL: %s | %s\n\tForth(%#v) expected an error, got %v",
						tg.group, tc.description, tc.input, v)
				} else if !reflect.DeepEqual(v, tc.expected) {
					t.Fatalf("FAIL: %s | %s\n\tForth(%#v) expected %v, got %v",
						tg.group, tc.description, tc.input, tc.expected, v)
				}
			} else if tc.expected != nil {
				t.Fatalf("FAIL: %s | %s\n\tForth(%#v) expected %v, got an error: %q",
					tg.group, tc.description, tc.input, tc.expected, err)
			}
			t.Logf("PASS: %s | %s", tg.group, tc.description)
		}
	}
}

func BenchmarkForth(b *testing.B) {
	for i := 0; i < b.N; i++ {
		for _, tg := range testGroups {
			for _, tc := range tg.tests {
				Forth(tc.input)
			}
		}
	}
}

Version data entries

50 entries across 50 versions & 1 rubygems

Version Path
trackler-2.2.1.56 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.55 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.54 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.53 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.52 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.51 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.50 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.49 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.48 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.47 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.46 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.45 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.44 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.43 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.42 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.41 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.40 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.39 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.38 tracks/go/exercises/forth/forth_test.go
trackler-2.2.1.37 tracks/go/exercises/forth/forth_test.go