1 /* 2 * Copyright (C) 2021 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package com.android.tradefed.targetprep; 18 19 import com.android.tradefed.config.IConfiguration; 20 import com.android.tradefed.config.OptionSetter; 21 import com.android.tradefed.invoker.TestInformation; 22 23 import org.junit.Before; 24 import org.junit.Test; 25 import org.junit.runner.RunWith; 26 import org.junit.runners.JUnit4; 27 import org.mockito.Mockito; 28 29 /** Unit Tests for {@link KnownFailurePreparer}. */ 30 @RunWith(JUnit4.class) 31 public class KnownFailurePreparerTest { 32 33 private KnownFailurePreparer mKnownFailurePreparer; 34 private IConfiguration mMockConfig; 35 private TestInformation mTestInformation; 36 private static final String KNOWN_FAILURE_LIST = "known-failure-list"; 37 private static final String SKIP_RETRYING_LIST = "skip-retrying-list"; 38 39 @Before setUp()40 public void setUp() { 41 mKnownFailurePreparer = new KnownFailurePreparer(); 42 mTestInformation = Mockito.mock(TestInformation.class); 43 mMockConfig = Mockito.mock(IConfiguration.class); 44 mKnownFailurePreparer.setConfiguration(mMockConfig); 45 } 46 47 @Test testSetup()48 public void testSetup() throws Exception { 49 OptionSetter setter = new OptionSetter(mKnownFailurePreparer); 50 String moduleId1 = "s86 module1"; 51 String moduleId2 = "abi2 module2"; 52 setter.setOptionValue(KNOWN_FAILURE_LIST, moduleId1); 53 setter.setOptionValue(KNOWN_FAILURE_LIST, moduleId2); 54 mKnownFailurePreparer.setUp(mTestInformation); 55 Mockito.verify(mMockConfig, Mockito.times(1)) 56 .injectOptionValue(SKIP_RETRYING_LIST, moduleId1); 57 Mockito.verify(mMockConfig, Mockito.times(1)) 58 .injectOptionValue(SKIP_RETRYING_LIST, moduleId2); 59 } 60 } 61