xref: /aosp_15_r20/build/blueprint/pathtools/lists_test.go (revision 1fa6dee971e1612fa5cc0aa5ca2d35a22e2c34a3)
1*1fa6dee9SAndroid Build Coastguard Worker// Copyright 2021 Google Inc. All rights reserved.
2*1fa6dee9SAndroid Build Coastguard Worker//
3*1fa6dee9SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*1fa6dee9SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*1fa6dee9SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*1fa6dee9SAndroid Build Coastguard Worker//
7*1fa6dee9SAndroid Build Coastguard Worker//	http://www.apache.org/licenses/LICENSE-2.0
8*1fa6dee9SAndroid Build Coastguard Worker//
9*1fa6dee9SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*1fa6dee9SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*1fa6dee9SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*1fa6dee9SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*1fa6dee9SAndroid Build Coastguard Worker// limitations under the License.
14*1fa6dee9SAndroid Build Coastguard Workerpackage pathtools
15*1fa6dee9SAndroid Build Coastguard Worker
16*1fa6dee9SAndroid Build Coastguard Workerimport (
17*1fa6dee9SAndroid Build Coastguard Worker	"testing"
18*1fa6dee9SAndroid Build Coastguard Worker)
19*1fa6dee9SAndroid Build Coastguard Worker
20*1fa6dee9SAndroid Build Coastguard Workerfunc TestLists_ReplaceExtension(t *testing.T) {
21*1fa6dee9SAndroid Build Coastguard Worker
22*1fa6dee9SAndroid Build Coastguard Worker	testCases := []struct {
23*1fa6dee9SAndroid Build Coastguard Worker		from, ext, to string
24*1fa6dee9SAndroid Build Coastguard Worker	}{
25*1fa6dee9SAndroid Build Coastguard Worker		{"1.jpg", "png", "1.png"},
26*1fa6dee9SAndroid Build Coastguard Worker		{"1", "png", "1.png"},
27*1fa6dee9SAndroid Build Coastguard Worker		{"1.", "png", "1.png"},
28*1fa6dee9SAndroid Build Coastguard Worker		{"2.so", "so.1", "2.so.1"},
29*1fa6dee9SAndroid Build Coastguard Worker		{"/out/.test/1.png", "jpg", "/out/.test/1.jpg"},
30*1fa6dee9SAndroid Build Coastguard Worker		{"/out/.test/1", "jpg", "/out/.test/1.jpg"},
31*1fa6dee9SAndroid Build Coastguard Worker	}
32*1fa6dee9SAndroid Build Coastguard Worker
33*1fa6dee9SAndroid Build Coastguard Worker	for _, test := range testCases {
34*1fa6dee9SAndroid Build Coastguard Worker		t.Run(test.from, func(t *testing.T) {
35*1fa6dee9SAndroid Build Coastguard Worker			got := ReplaceExtension(test.from, test.ext)
36*1fa6dee9SAndroid Build Coastguard Worker			if got != test.to {
37*1fa6dee9SAndroid Build Coastguard Worker				t.Errorf("ReplaceExtension(%v, %v) = %v; want: %v", test.from, test.ext, got, test.to)
38*1fa6dee9SAndroid Build Coastguard Worker			}
39*1fa6dee9SAndroid Build Coastguard Worker		})
40*1fa6dee9SAndroid Build Coastguard Worker	}
41*1fa6dee9SAndroid Build Coastguard Worker}
42