Sha256: ed1358d4ac211649a3cc63f93bdcc15bbd0028747acabd227109a20d654f7ceb

Contents?: true

Size: 939 Bytes

Versions: 81

Compression:

Stored size: 939 Bytes

Contents

package change

import (
	"reflect"
	"testing"
)

func TestChange(t *testing.T) {
	for _, tc := range testCases {
		actual, err := Change(tc.coins, tc.target)
		if tc.valid {
			if err != nil {
				t.Fatalf("%s : Change(%v, %d): expected %v, got error %s",
					tc.description, tc.coins, tc.target, tc.expectedChange, err.Error())
			} else {
				if !reflect.DeepEqual(actual, tc.expectedChange) {
					t.Fatalf("%s : Change(%v, %d): expected %#v, actual %#v",
						tc.description, tc.coins, tc.target, tc.expectedChange, actual)
				} else {
					t.Logf("PASS: %s", tc.description)
				}
			}
		} else {
			if err == nil {
				t.Fatalf("%s : Change(%v, %d): expected error, got %v",
					tc.description, tc.coins, tc.target, actual)
			} else {
				t.Logf("PASS: %s", tc.description)
			}
		}
	}
}

func BenchmarkChange(b *testing.B) {
	for i := 0; i < b.N; i++ {
		for _, tc := range testCases {
			Change(tc.coins, tc.target)
		}
	}
}

Version data entries

81 entries across 81 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/go/exercises/change/change_test.go
trackler-2.2.1.179 tracks/go/exercises/change/change_test.go
trackler-2.2.1.178 tracks/go/exercises/change/change_test.go
trackler-2.2.1.177 tracks/go/exercises/change/change_test.go
trackler-2.2.1.176 tracks/go/exercises/change/change_test.go
trackler-2.2.1.175 tracks/go/exercises/change/change_test.go
trackler-2.2.1.174 tracks/go/exercises/change/change_test.go
trackler-2.2.1.173 tracks/go/exercises/change/change_test.go
trackler-2.2.1.172 tracks/go/exercises/change/change_test.go
trackler-2.2.1.171 tracks/go/exercises/change/change_test.go
trackler-2.2.1.170 tracks/go/exercises/change/change_test.go
trackler-2.2.1.169 tracks/go/exercises/change/change_test.go
trackler-2.2.1.167 tracks/go/exercises/change/change_test.go
trackler-2.2.1.166 tracks/go/exercises/change/change_test.go
trackler-2.2.1.165 tracks/go/exercises/change/change_test.go
trackler-2.2.1.164 tracks/go/exercises/change/change_test.go
trackler-2.2.1.163 tracks/go/exercises/change/change_test.go
trackler-2.2.1.162 tracks/go/exercises/change/change_test.go
trackler-2.2.1.161 tracks/go/exercises/change/change_test.go
trackler-2.2.1.160 tracks/go/exercises/change/change_test.go