// Copyright 2020 Google LLC. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package main import "testing" func TestDeprecatedPkgs(t *testing.T) { tests := []struct { name string dp deprecatedPkgs inName string inVersion string want string }{ { name: "replacement found", dp: deprecatedPkgs{"foo:v1": "example.com/foo"}, inName: "foo", inVersion: "v1", want: "example.com/foo", }, { name: "replacemet found with no versions specified", dp: deprecatedPkgs{"foo": "example.com/foo"}, inName: "foo", inVersion: "v1", want: "example.com/foo", }, { name: "no replacement found, package not in map", dp: deprecatedPkgs{"foo": "example.com/foo"}, inName: "bar", inVersion: "v1", want: "", }, { name: "no replacement found, version mismatch", dp: deprecatedPkgs{"foo:v1": "example.com/foo"}, inName: "foo", inVersion: "v2", want: "", }, } for _, tc := range tests { t.Run(tc.name, func(t *testing.T) { got := tc.dp.Get(tc.inName, tc.inVersion) if got != tc.want { t.Errorf("deprecatedPkg.Get(%v, %v): got %q, want %q", tc.inName, tc.inVersion, got, tc.want) } }) } }