Builder { public Self lore(Collection<String> lines) { if (lore == null) { lore = new ArrayList<>(lines); } else { lore.addAll(lines); } return self(); } Builder(Material material);   Builder(Builder<ItemMeta, ?> source); Self amount(int amount); Self damage(int damage); Self display(@Nullable String name); Self localised(@Nullable String name); Self attribute(Attribute attribute, AttributeModifier modifier); Self model(@Nullable Integer data); Self enchantment(Enchantment enchantment, int level); Self flags(Collection<ItemFlag> flags); Self flags(ItemFlag... flags); Self lore(Collection<String> lines); Self lore(String... lines); Self unbreakable(boolean unbreakable); ItemStack build();  }
@Test void lore_collection() { builder.lore(List.of("A", "B")).lore(List.of("C")); assertEquals(builder.lore, List.of("A", "B", "C")); }
@Test void lore_array() { builder.lore("A", "B").lore("C"); assertEquals(builder.lore, List.of("A", "B", "C")); }