Navigation Menu

Skip to content

Commit

Permalink
Fix to persist Shelve project property whenever the job is updated
Browse files Browse the repository at this point in the history
this fix would resolve JENKINS-10544
  • Loading branch information
maselvaraj authored and christiangalsterer committed Mar 25, 2014
1 parent aa537fc commit 7258a60
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 5 deletions.
Expand Up @@ -31,13 +31,14 @@ public void onLoaded()
@Override
public void onCreated( Item item )
{
if ( item instanceof AbstractProject )
{
AbstractProject project = (AbstractProject) item;
addShelveProjectProperty( project );
}
addShelveProjectPropertyIfAbstractProject(item);
}

@Override
public void onUpdated(Item item) {
addShelveProjectPropertyIfAbstractProject(item);
}

private void addShelveProjectProperty( AbstractProject<?, ?> project )
{
try
Expand All @@ -52,4 +53,11 @@ private void addShelveProjectProperty( AbstractProject<?, ?> project )
LOGGER.log( Level.SEVERE, "Failed to persist " + project, e );
}
}

private void addShelveProjectPropertyIfAbstractProject(Item item) {
if (item instanceof AbstractProject) {
AbstractProject project = (AbstractProject) item;
addShelveProjectProperty(project);
}
}
}
Expand Up @@ -84,4 +84,16 @@ public void testOnCreate_shouldAddShelveProjectActionForNewProjects()
assertEquals( "Project should have had a ShelveProjectAction added.", 1,
freeStyleProject.getActions( ShelveProjectAction.class ).size() );
}

public void testOnCreate_shouldAddShelveProjectActionForUpdatedProjects()
throws IOException
{
FreeStyleProject freeStyleProject = createFreeStyleProject( "Goofy Project" );

itemListener.onUpdated( freeStyleProject );

assertEquals( "Project should have been added just once.", 1, freeStyleProject.getActions().size() );
assertEquals( "Project should have had a ShelveProjectAction added.", 1,
freeStyleProject.getActions( ShelveProjectAction.class ).size() );
}
}

0 comments on commit 7258a60

Please sign in to comment.