/** Hack to deploy addon in an immutable repository */
 private static void deployAddonInImmutableRepository(
     AddonId addonId, AddonRepository repository) {
   Furnace furnace = new FurnaceImpl();
   furnace.addRepository(AddonRepositoryMode.MUTABLE, repository.getRootDirectory());
   AddonManagerImpl addonManager =
       new AddonManagerImpl(furnace, new MavenAddonDependencyResolver());
   addonManager.deploy(addonId).perform();
 }
  @SuppressWarnings("unchecked")
  @Test
  public void testUpdateOnImmutableRepository() throws Exception {
    AddonId no_dep = AddonId.from("test:no_dep", "1.0.0.Final");
    AddonId no_dep_newer = AddonId.from("test:no_dep", "1.0.1.Final");

    // Adding an addon in a immutable repo
    deployAddonInImmutableRepository(no_dep, immutable);
    InstallRequest newer = addonManager.install(no_dep_newer);
    List<? extends AddonActionRequest> actions = newer.getActions();
    Assert.assertEquals(1, actions.size());
    Assert.assertThat((List<DeployRequest>) actions, everyItem(isA(DeployRequest.class)));
  }