ModuleDepInfo implements Serializable { public ModuleDepInfo() { this(null, BooleanTerm.TRUE, null); } ModuleDepInfo();  ModuleDepInfo(ModuleDepInfo other);  ModuleDepInfo(ModuleDepInfo other, String comment);  ModuleDepInfo(String pluginName, BooleanTerm term, String comment);  ModuleDepInfo(String pluginName, BooleanTerm term, String comment, boolean isPluginNameDeclared); Collection<String> getHasPluginPrefixes(); Collection<String> getHasPluginPrefixes(Map<?, ?> formulaCache); Boolean getIncludeStatus(); boolean containsTerm(BooleanTerm term); ModuleDepInfo andWith(ModuleDepInfo other); String getComment(); boolean add(ModuleDepInfo other); boolean subtract(ModuleDepInfo toSub); void resolveWith(Features features); void resolveWith(Features features, boolean coerceUndefinedToFalse); ModuleDepInfo simplify(Map<?, ?> formulaCache); @Override String toString(); @Override boolean equals(Object otherObj); @Override int hashCode();  }
@Test public void testModuleDepInfo() { ModuleDepInfo depInfo = null; boolean exceptionCaught = false; try { depInfo = new ModuleDepInfo(null, new BooleanTerm("A"), null); } catch (NullPointerException ex) { exceptionCaught = true; } Assert.assertTrue(exceptionCaught); depInfo = new ModuleDepInfo(null, null, null); Assert.assertNull(depInfo.getComment()); depInfo = new ModuleDepInfo(null, null, "Comment 1"); Assert.assertEquals("Comment 1", depInfo.getComment()); }