### Question:
ModuleDescriptorBuilder { public ModuleDescriptor build() { requireNotNullArg(category, "Module category cannot be null"); requireNotBlank(name, "Module name cannot be blank"); requireNotBlank(description, "Module description cannot be blank"); return new ModuleDescriptor(category, name, description, priority, supportURL, inputTypes); } private  ModuleDescriptorBuilder(); ModuleDescriptorBuilder category(ModuleCategory category); ModuleDescriptorBuilder inputTypes(ModuleInputOutputType... inputTypes); ModuleDescriptorBuilder name(String name); ModuleDescriptorBuilder description(String description); ModuleDescriptorBuilder priority(int priority); ModuleDescriptorBuilder priority(ModulePriority priority); ModuleDescriptorBuilder supportURL(String supportURL); static ModuleDescriptorBuilder builder(); ModuleDescriptor build();  }### Answer:
@Test public void build() { ModuleDescriptor victim = builder().category(ModuleCategory.MERGE).description("desc").name("name") .priority(ModulePriority.DEFAULT).supportURL("url").build(); assertEquals(ModuleCategory.MERGE, victim.category); assertEquals("desc", victim.getDescription()); assertEquals("name", victim.getName()); assertEquals("url", victim.getSupportURL().get()); assertEquals(ModulePriority.DEFAULT.getPriority(), victim.getPriority()); }