@Test public void shouldSetPackageIdAsNullIfPackageDefinitionIsNull(){ PackageMaterialConfig materialConfig = new PackageMaterialConfig("1"); materialConfig.setPackageDefinition(null); assertThat(materialConfig.getPackageId(), is(nullValue())); assertThat(materialConfig.getPackageDefinition(), is(nullValue())); }
public PackageMaterial(PackageMaterialConfig config) { super(TYPE); this.name = config.getName(); this.packageId = config.getPackageId(); this.packageDefinition = config.getPackageDefinition(); }
public static PackageMaterialConfig fromJSON(JsonReader jsonReader, ConfigHelperOptions options) { PackageMaterialConfig packageMaterialConfig = new PackageMaterialConfig(); // Pass along options or the cruise config object. CruiseConfig cruiseConfig = options.getCruiseConfig(); String ref = jsonReader.getString("ref"); packageMaterialConfig.setPackageDefinition(cruiseConfig.getPackageRepositories().findPackageDefinitionWith(ref)); packageMaterialConfig.setPackageId(ref); return packageMaterialConfig; } }
private CRPackageMaterial packageMaterialToCRPackageMaterial(PackageMaterialConfig packageMaterialConfig) { return new CRPackageMaterial(packageMaterialConfig.getName().toString(), packageMaterialConfig.getPackageId()); }
@Override public MaterialConfig config() { return new PackageMaterialConfig(this.name, this.packageId, this.packageDefinition); }
@Test public void shouldSetPackageIdToNullIfConfigAttributesForThePackageMaterialDoesNotContainPackageId() throws Exception { Map<String, String> attributes = new HashMap<>(); PackageMaterialConfig packageMaterialConfig = new PackageMaterialConfig("id"); packageMaterialConfig.setConfigAttributes(attributes); assertThat(packageMaterialConfig.getPackageId(), is(nullValue())); }
@Test public void shouldAddErrorIfPackagePluginDoesNotExistsForGivenPackageId() throws Exception { PipelineConfigSaveValidationContext configSaveValidationContext = mock(PipelineConfigSaveValidationContext.class); when(configSaveValidationContext.findPackageById(anyString())).thenReturn(mock(PackageRepository.class)); PackageRepository packageRepository = mock(PackageRepository.class); when(packageRepository.doesPluginExist()).thenReturn(false); PackageMaterialConfig packageMaterialConfig = new PackageMaterialConfig(new CaseInsensitiveString("package-name"), "package-id", PackageDefinitionMother.create("package-id")); packageMaterialConfig.getPackageDefinition().setRepository(packageRepository); packageMaterialConfig.validateTree(configSaveValidationContext); assertThat(packageMaterialConfig.errors().getAll().size(), is(1)); assertThat(packageMaterialConfig.errors().on(PackageMaterialConfig.PACKAGE_ID), is("Could not find plugin for given package id:[package-id].")); }
public static PackageMaterialConfig packageMaterialConfig(String repoName, String packageName) { PackageMaterialConfig material = new PackageMaterialConfig("p-id"); PackageRepository repository = PackageRepositoryMother.create("repo-id", repoName, "pluginid", "version", new Configuration(ConfigurationPropertyMother.create("k1", false, "repo-v1"), ConfigurationPropertyMother.create("k2", false, "repo-v2"))); PackageDefinition packageDefinition = PackageDefinitionMother.create("p-id", packageName, new Configuration(ConfigurationPropertyMother.create("k3", false, "package-v1")), repository); material.setPackageDefinition(packageDefinition); repository.getPackages().add(packageDefinition); return material; }
@Test public void shouldGetNameFromRepoNameAndPackageName() { PackageMaterialConfig materialConfig = new PackageMaterialConfig(); PackageRepository repository = PackageRepositoryMother.create("repo-id", "repo-name", "pluginid", "version", new Configuration(ConfigurationPropertyMother.create("k1", false, "v1"))); materialConfig.setPackageDefinition(PackageDefinitionMother.create("p-id", "package-name", new Configuration(ConfigurationPropertyMother.create("k2", false, "v2")), repository)); assertThat(materialConfig.getName().toString(), is("repo-name:package-name")); materialConfig.setPackageDefinition(null); assertThat(materialConfig.getName(), is(nullValue())); }
@Test public void shouldNotAddErrorDuringUniquenessValidationIfMaterialNameIsEmpty() throws Exception { PackageMaterialConfig packageMaterialConfig = new PackageMaterialConfig(""); Map<CaseInsensitiveString, AbstractMaterialConfig> nameToMaterialMap = new HashMap<>(); packageMaterialConfig.validateNameUniqueness(nameToMaterialMap); assertThat(packageMaterialConfig.errors().getAll().size(), is(0)); assertThat(nameToMaterialMap.size(), is(0)); }
@Test public void shouldGetExistingOrDefaultMaterialCorrectly() { SvnMaterialConfig svn = new SvnMaterialConfig("http://test.com", false); PackageMaterialConfig p1 = new PackageMaterialConfig("p1"); PackageMaterialConfig p2 = new PackageMaterialConfig("p2"); assertThat(new MaterialConfigs(svn, p2).getExistingOrDefaultMaterial(p1).getPackageId(), is("p2")); assertThat(new MaterialConfigs(svn).getExistingOrDefaultMaterial(p1).getPackageId(), is("p1")); }
@Test public void shouldCheckEquals() throws Exception { PackageRepository repository = PackageRepositoryMother.create("repo-id", "repo-name", "pluginid", "version", new Configuration(ConfigurationPropertyMother.create("k1", false, "v1"))); PackageDefinition packageDefinition = PackageDefinitionMother.create("p-id", "package-name", new Configuration(ConfigurationPropertyMother.create("k2", false, "v2")), repository); PackageMaterialConfig p1 = new PackageMaterialConfig(); p1.setPackageDefinition(packageDefinition); PackageMaterialConfig p2 = new PackageMaterialConfig(); p2.setPackageDefinition(packageDefinition); assertThat(p1.equals(p2), is(true)); p1 = new PackageMaterialConfig(); p2 = new PackageMaterialConfig(); assertThat(p1.equals(p2), is(true)); p2.setPackageDefinition(packageDefinition); assertThat(p1.equals(p2), is(false)); p1.setPackageDefinition(packageDefinition); p2 = new PackageMaterialConfig(); assertThat(p1.equals(p2), is(false)); assertThat(p1.equals(null), is(false)); }
public static void toJSON(OutputWriter jsonWriter, PackageMaterialConfig packageMaterialConfig) { jsonWriter.add("ref", packageMaterialConfig.getPackageId()); }
@Override protected void appendAttributes(Map<String, Object> parameters) { parameters.put("repositoryName", this.getPackageDefinition().getRepository().getName()); parameters.put("packageName", this.getPackageDefinition().getName()); }
@Override public String getDisplayName() { return ((name == null || name.isBlank()) && getPackageDefinition().getRepository().getName() == null) ? getUriForDisplay() : getName().toString(); }
@Test public void shouldAddErrorIfMaterialDoesNotHaveAPackageId() throws Exception { PackageMaterialConfig packageMaterialConfig = new PackageMaterialConfig(); packageMaterialConfig.validateConcreteMaterial(new ConfigSaveValidationContext(null, null)); assertThat(packageMaterialConfig.errors().getAll().size(), is(1)); assertThat(packageMaterialConfig.errors().on(PackageMaterialConfig.PACKAGE_ID), is("Please select a repository and package")); }
@Override protected void updateConfig(CruiseConfig cruiseConfig) { PackageDefinition packageDefinition = createNewPackageDefinition(cruiseConfig); packageMaterialConfig.setPackageDefinition(packageDefinition); PipelineConfig pipelineConfig = cruiseConfig.pipelineConfigByName(new CaseInsensitiveString(pipeline)); pipelineConfig.addMaterialConfig(packageMaterialConfig); } }
@Test public void shouldNeverIgnorePackageMaterialModifications() { PackageMaterialConfig packageMaterialConfig = new PackageMaterialConfig(); Filter filter = packageMaterialConfig.filter(); MatcherAssert.assertThat(filter, is(notNullValue())); MatcherAssert.assertThat(new Modifications().shouldBeIgnoredByFilterIn(packageMaterialConfig), is(false)); }
@Test public void shouldDelegateToPackageDefinitionForAutoUpdate() throws Exception { PackageDefinition packageDefinition = mock(PackageDefinition.class); when(packageDefinition.isAutoUpdate()).thenReturn(false); PackageMaterialConfig materialConfig = new PackageMaterialConfig(new CaseInsensitiveString("name"), "package-id", packageDefinition); assertThat(materialConfig.isAutoUpdate(), is(false)); verify(packageDefinition).isAutoUpdate(); } }
public PackageMaterialConfig getPackageMaterial() { return getExistingOrDefaultMaterial(new PackageMaterialConfig()); }