### Question:
CredentialBuilder implements Builder<Credential> { public static CredentialBuilder create() { final ModifyOnce<String> name = new ModifyOnce<>(); final ModifyOnce<String> type = new ModifyOnce<>(); final List<ConfigurationEntry> configurationEntries = new ArrayList<>(); return new CredentialBuilder(name, type, configurationEntries); } private  CredentialBuilder(final ModifyOnce<String> name,
            final ModifyOnce<String> type,
            final List<ConfigurationEntry> configurationEntries); static CredentialBuilder create(); static CredentialBuilder createFromExisting(final Credential credential); CredentialBuilder withName(final String name); CredentialBuilder withType(final String type); CredentialBuilder withConfigurationEntry(final String name,
                                                    final String description); @Override Credential build();  }### Answer:
@Test public void testCreate() { final Credential credential = CredentialBuilder.create() .withName("hive2") .withType("hive") .withConfigurationEntry("jdbcUrl", "jdbc: .build(); assertEquals("hive2", credential.getName()); assertEquals("hive", credential.getType()); assertEquals("jdbcUrl", credential.getConfigurationEntries().get(0).getName()); assertEquals("jdbc: }