1e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov/******************************************************************************* 2398ee59bebad6835dab57b60157eff16d511709eMarc R. Hoffmann * Copyright (c) 2009, 2015 Mountainminds GmbH & Co. KG and Contributors 3e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * All rights reserved. This program and the accompanying materials 4e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * are made available under the terms of the Eclipse Public License v1.0 5e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * which accompanies this distribution, and is available at 6e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * http://www.eclipse.org/legal/epl-v10.html 7e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * 8e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * Contributors: 9e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * Marc R. Hoffmann - initial API and implementation 10e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * 11e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov *******************************************************************************/ 12e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikovpackage org.jacoco.core.test.validation.targets; 13e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 14e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov/** 15e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * Collection of stub methods that are called from the coverage targets. * 16e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 17e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikovpublic class Stubs { 18e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 19e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 20e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * Exception stub. 21e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 22e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static class StubException extends RuntimeException { 23e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 24e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov static final long serialVersionUID = 0L; 25e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 26e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 27e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 28e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 29e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * Superclass stub. 30e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 31e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static class SuperClass { 32e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 33e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public SuperClass(boolean arg) { 34e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 35e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 36e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 37e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 38e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 39e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * Dummy method. 40e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 41e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static void nop() { 42e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 43e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 44e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 45e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * Dummy method. 46e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 47e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static void nop(int i) { 48e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 49e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 50e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 51e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * Dummy method. 52e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 53e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static void nop(boolean b) { 54e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 55e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 56e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 57e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * Dummy method. 58e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 59e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static void nop(Object o) { 60e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 61e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 62e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 63e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * @return always <code>true</code> 64e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 65e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static boolean t() { 66e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov return true; 67e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 68e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 69e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 70e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * @return always <code>false</code> 71e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 72e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static boolean f() { 73e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov return false; 74e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 75e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 76e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 77e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * @return always <code>1</code> 78e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 79e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static int i1() { 80e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov return 1; 81e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 82e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 83e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 84e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * @return always <code>3</code> 85e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 86e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static int i2() { 87e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov return 2; 88e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 89e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 90e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 91e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * @return always <code>3</code> 92e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 93e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static int i3() { 94e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov return 3; 95e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 96e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 97e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov /** 98e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * Always throws a {@link RuntimeException}. 99e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * 100e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * @throws StubException 101e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov * always thrown 102e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov */ 103e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov public static void ex() throws StubException { 104e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov throw new StubException(); 105e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov } 106e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov 1078ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann /** 1088ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann * Directly executes the given runnable. 1098ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann */ 1108ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann public static void exec(Runnable task) { 1118ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann task.run(); 1128ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann } 1138ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann 1148ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann /** 1158ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann * Never executes the given runnable. 1168ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann */ 1178ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann public static void noexec(Runnable task) { 1188ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann } 1198ffcb7144775ba0da65304c15d952ba7a1cb7da6Marc R. Hoffmann 120e69ba4dbb015949c5d84ba7bbb0b53efac28bb23Evgeny Mandrikov} 121