1 // Copyright 2014 The Chromium Authors 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 package org.chromium.testing.local; 6 7 import org.junit.Assert; 8 import org.junit.Test; 9 import org.junit.runner.Description; 10 import org.junit.runner.RunWith; 11 import org.junit.runner.manipulation.Filter; 12 import org.junit.runners.BlockJUnit4ClassRunner; 13 import org.junit.runners.Suite; 14 15 /** Unit tests for RunnerFilter. */ 16 @RunWith(BlockJUnit4ClassRunner.class) 17 public class RunnerFilterTest { 18 19 private class FakeTestClass {} 20 21 @Test testDescription()22 public void testDescription() { 23 Filter filterUnderTest = new RunnerFilter(BlockJUnit4ClassRunner.class); 24 Assert.assertEquals( 25 "runner-filter: org.junit.runners.BlockJUnit4ClassRunner", 26 filterUnderTest.describe()); 27 } 28 29 @Test testNoFilter()30 public void testNoFilter() { 31 Filter filterUnderTest = new RunnerFilter(null); 32 Assert.assertFalse( 33 filterUnderTest.shouldRun( 34 Description.createTestDescription(RunnerFilterTest.class, "testNoFilter"))); 35 } 36 37 @Test testFilterHit()38 public void testFilterHit() { 39 Filter filterUnderTest = new RunnerFilter(BlockJUnit4ClassRunner.class); 40 Assert.assertTrue( 41 filterUnderTest.shouldRun( 42 Description.createTestDescription( 43 RunnerFilterTest.class, "testFilterHit"))); 44 } 45 46 @Test testFilterMiss()47 public void testFilterMiss() { 48 Filter filterUnderTest = new RunnerFilter(Suite.class); 49 Assert.assertFalse( 50 filterUnderTest.shouldRun( 51 Description.createTestDescription( 52 RunnerFilterTest.class, "testFilterMiss"))); 53 } 54 55 @Test testClassNotFound()56 public void testClassNotFound() { 57 Filter filterUnderTest = new RunnerFilter(BlockJUnit4ClassRunner.class); 58 Assert.assertFalse( 59 filterUnderTest.shouldRun( 60 Description.createTestDescription(FakeTestClass.class, "fakeTestMethod"))); 61 } 62 } 63