### Question:
ValidatableEntity extends AbstractAnnotation<Entity> { @Override public boolean isValid() { return this.validateUUID(this.annotation.getUuid()) && this.printStatus("EntityMentions must be set", this.annotation.isSetMentionIdList()) && this.printStatus("EntityMentions must be >0", this.annotation.getMentionIdListSize() > 0) && this.printStatus("Type must be set", this.annotation.isSetType()) && this.printStatus("Type must be recognized", !this.annotation.getType().isEmpty()); } ValidatableEntity(Entity annotation);  ValidatableEntity(Entity annotation, Set<UUID> entityMentionUUIDSet); @Override boolean isValid();  }### Answer:
@Test public void badUUID() { Entity e = new Entity(); e.setUuid(new UUID("foo")); e.setMentionIdList(new ArrayList<UUID>()); e.setType("bar"); assertFalse(new ValidatableEntity(e).isValid()); }
@Test public void badType() { Entity e = new Entity(); e.setUuid(UUIDFactory.newUUID()); List<UUID> uuidList = new ArrayList<>(); uuidList.add(UUIDFactory.newUUID()); e.setMentionIdList(uuidList); e.setType(""); assertFalse(new ValidatableEntity(e).isValid()); }
@Test public void noIDs() { Entity e = new Entity(); e.setUuid(UUIDFactory.newUUID()); List<UUID> uuidList = new ArrayList<>(); e.setMentionIdList(uuidList); e.setType("asdf"); assertFalse(new ValidatableEntity(e).isValid()); }