### Question:
DownloadOptionsFactory { public DownloadOptions create(Options options) { DownloadOptions result = new DownloadOptions(); result.setRepoUrl(options.getMavenRepoUrl()); result.setSnapshotRepoUrl(options.getMavenSnapshotRepoUrl()); result.setGroupId(options.getGroupId()); result.setArtifactId(options.getArtifactId()); result.setUsername(options.getMavenRepoUsername()); result.setPassword(options.getMavenRepoPassword()); result.setCurrentArtifactVersion(options.getCurrentArtifactVersion()); return result; }  DownloadOptions create(Options options);  }### Answer:
@Test public void testCreateShouldWorkProperly() { String groupId = "groupId"; String artifactId = "artifactId"; String mavenRepoUrl = "mavenRepoUrl"; String mavenSnapshotRepoUrl = "mavenSnapshotRepoUrl"; String mavenRepoUsername = "username"; String mavenRepoPassword = "password"; String currentArtifactVersion = "1.2.0"; Options options = new Options(); options.setNewApiPath("newApi"); options.setGroupId(groupId); options.setArtifactId(artifactId); options.setMavenRepoUrl(mavenRepoUrl); options.setMavenSnapshotRepoUrl(mavenSnapshotRepoUrl); options.setMavenRepoUsername(mavenRepoUsername); options.setMavenRepoPassword(mavenRepoPassword); options.setCurrentArtifactVersion(currentArtifactVersion); DownloadOptions result = underTest.create(options); assertThat(result).extracting(DownloadOptions::getRepoUrl).isEqualTo(mavenRepoUrl); assertThat(result).extracting(DownloadOptions::getSnapshotRepoUrl).isEqualTo(mavenSnapshotRepoUrl); assertThat(result).extracting(DownloadOptions::getGroupId).isEqualTo(groupId); assertThat(result).extracting(DownloadOptions::getArtifactId).isEqualTo(artifactId); assertThat(result).extracting(DownloadOptions::getUsername).isEqualTo(mavenRepoUsername); assertThat(result).extracting(DownloadOptions::getPassword).isEqualTo(mavenRepoPassword); assertThat(result).extracting(DownloadOptions::getCurrentArtifactVersion).isEqualTo(currentArtifactVersion); }