/** * Appends a class list which must be assignable to the base class */ public void append(ClassList<T> c) { append(Arrays.asList(c.getClasses())); }
/** * Prepends a class list which must be assignable to the base class */ public void prepend(ClassList<T> c) { prepend(Arrays.asList(c.getClasses())); }
/** * Prepends a class list which must be assignable to the base class */ public void prepend(ClassList<T> c) { prepend(Arrays.asList(c.getClasses())); }
/** * Appends a class list which must be assignable to the base class */ public void append(ClassList<T> c) { append(Arrays.asList(c.getClasses())); }
@Test public void testConfigFileConstructor2() throws IOException { c = new ClassList<Iterable>("iterables.txt", Iterable.class, ClassListTest.class); assertEquals(c.getClasses().length, 2); assertEquals(c.getClasses()[0], AbstractList.class); assertEquals(c.getClasses()[1], ArrayList.class); }
@Test public void testConfigFileConstructor1() throws IOException { configFile = writeConfigFile( "java.util.ArrayList\njava.util.AbstractList"); c = new ClassList<Iterable>(configFile, Iterable.class, null); assertEquals(c.getClasses().length, 2); assertEquals(c.getClasses()[0], ArrayList.class); assertEquals(c.getClasses()[1], AbstractList.class); }
@Test public void testInvalidFileConstructor1() throws IOException { c = new ClassList<Iterable>("invalid", Iterable.class, null); assertEquals(c.getClasses().length, 0); }
@Test public void testNullConstructor() throws IOException { c = new ClassList<Iterable>(null, Iterable.class); assertEquals(c.getClasses().length, 0); }
/** Constructs a new pattern reader. */ public FilePatternReader() { super("File pattern", new String[] {"pattern"}); ClassList<IFormatReader> classes = ImageReader.getDefaultReaderClasses(); Class<? extends IFormatReader>[] classArray = classes.getClasses(); ClassList<IFormatReader> newClasses = new ClassList<IFormatReader>(IFormatReader.class); for (Class<? extends IFormatReader> c : classArray) { if (!c.equals(FilePatternReader.class)) { newClasses.addClass(c); } } helper = new FileStitcher(new ImageReader(newClasses)); suffixSufficient = true; }
@Test public void testDefaultConstructor() { c = new ClassList<Iterable>(Iterable.class); assertEquals(c.getClasses().length, 0); }
@Test public void testInvalidFileConstructor2() throws IOException { c = new ClassList<Iterable>("invalid", Iterable.class, ClassListTest.class); assertEquals(c.getClasses().length, 0); }
@Test public void testAddClass() { c = new ClassList<Iterable>(Iterable.class); c.addClass(AbstractList.class); assertEquals(c.getClasses().length, 1); assertEquals(c.getClasses()[0], AbstractList.class); c.addClass(ArrayList.class); assertEquals(c.getClasses().length, 2); assertEquals(c.getClasses()[1], ArrayList.class); c.addClass(ArrayList.class); assertEquals(c.getClasses().length, 3); assertEquals(c.getClasses()[2], ArrayList.class); }
@Test public void testRemoveClass() throws IOException { c = new ClassList<Iterable>("iterables.txt", Iterable.class, ClassListTest.class); c.removeClass(AbstractList.class); assertEquals(c.getClasses().length, 1); assertEquals(c.getClasses()[0], ArrayList.class); c.removeClass(ArrayList.class); assertEquals(c.getClasses().length, 0); c.removeClass(ArrayList.class); assertEquals(c.getClasses().length, 0); }
/** Constructs a new pattern reader. */ public FilePatternReader() { super("File pattern", new String[] {"pattern"}); ClassList<IFormatReader> classes = ImageReader.getDefaultReaderClasses(); Class<? extends IFormatReader>[] classArray = classes.getClasses(); ClassList<IFormatReader> newClasses = new ClassList<IFormatReader>(IFormatReader.class); for (Class<? extends IFormatReader> c : classArray) { if (!c.equals(FilePatternReader.class)) { newClasses.addClass(c); } } helper = new FileStitcher(new ImageReader(newClasses)); suffixSufficient = true; }
@Test public void testAppend() throws IOException { configFile = writeConfigFile("java.util.ArrayList"); c = new ClassList<Iterable>(configFile, Iterable.class, null); assertEquals(c.getClasses().length, 1); assertEquals(c.getClasses()[0], ArrayList.class); String configFile2 = writeConfigFile("java.util.AbstractList"); ClassList<Iterable> c2 = new ClassList<Iterable>(configFile2, Iterable.class, null); c.append(c2); assertEquals(c.getClasses().length, 2); assertEquals(c.getClasses()[0], ArrayList.class); assertEquals(c.getClasses()[1], AbstractList.class); }
@Test public void testPrepend() throws IOException { configFile = writeConfigFile("java.util.ArrayList"); c = new ClassList<Iterable>(configFile, Iterable.class, null); assertEquals(c.getClasses().length, 1); assertEquals(c.getClasses()[0], ArrayList.class); String configFile2 = writeConfigFile("java.util.AbstractList"); ClassList<Iterable> c2 = new ClassList<Iterable>(configFile2, Iterable.class, null); c.prepend(c2); assertEquals(c.getClasses().length, 2); assertEquals(c.getClasses()[0], AbstractList.class); assertEquals(c.getClasses()[1], ArrayList.class); }
@Test public void testParseFile() throws IOException { c = new ClassList<Iterable>(null, Iterable.class); c.parseFile("iterables.txt",ClassListTest.class); assertEquals(c.getClasses().length, 2); }
@Test(dataProvider = "escaped lines") public void testParseEscapedLine(String line) throws IOException { c = new ClassList<Iterable>(null, Iterable.class); c.parseLine(line); assertEquals(c.getClasses().length, 0); assertTrue(c.getOptions().isEmpty()); }
@Test(dataProvider = "classes") public void testParseClasses(String line, Object output) throws IOException { c = new ClassList<Iterable>(null, Iterable.class); c.parseLine(line); assertEquals(c.getClasses()[0], output); assertTrue(c.getOptions().isEmpty()); }
@Test(dataProvider = "classes with options") public void testParseClassesWithOptions(String line, Object output) throws IOException { c = new ClassList<Iterable>(null, Iterable.class); c.parseLine(line); assertEquals(c.getClasses()[0], output); assertEquals(c.getOptions().size(), 1); assertEquals(c.getOptions().get("java.util.ArrayList.a"), "b"); }