1// Copyright 2022 Google Inc. All rights reserved. 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15package java 16 17import ( 18 "testing" 19 20 "android/soong/android" 21) 22 23func TestShrinkResourcesArgs(t *testing.T) { 24 result := android.GroupFixturePreparers( 25 PrepareForTestWithJavaDefaultModules, 26 ).RunTestWithBp(t, ` 27 android_app { 28 name: "app_shrink", 29 platform_apis: true, 30 optimize: { 31 shrink_resources: true, 32 } 33 } 34 35 android_app { 36 name: "app_no_shrink", 37 platform_apis: true, 38 optimize: { 39 shrink_resources: false, 40 } 41 } 42 `) 43 44 appShrink := result.ModuleForTests("app_shrink", "android_common") 45 appShrinkResources := appShrink.Rule("shrinkResources") 46 android.AssertStringDoesContain(t, "expected shrinker.xml in app_shrink resource shrinker flags", 47 appShrinkResources.Args["raw_resources"], "shrinker.xml") 48 49 appNoShrink := result.ModuleForTests("app_no_shrink", "android_common") 50 if appNoShrink.MaybeRule("shrinkResources").Rule != nil { 51 t.Errorf("unexpected shrinkResources rule for app_no_shrink") 52 } 53} 54