You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

RepositoryCacheConfigTest.java 2.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /*
  2. * Copyright (C) 2016 Ericsson and others
  3. *
  4. * This program and the accompanying materials are made available under the
  5. * terms of the Eclipse Distribution License v. 1.0 which is available at
  6. * https://www.eclipse.org/org/documents/edl-v10.php.
  7. *
  8. * SPDX-License-Identifier: BSD-3-Clause
  9. */
  10. package org.eclipse.jgit.lib;
  11. import static org.eclipse.jgit.lib.RepositoryCacheConfig.AUTO_CLEANUP_DELAY;
  12. import static org.eclipse.jgit.lib.RepositoryCacheConfig.NO_CLEANUP;
  13. import static org.junit.Assert.assertEquals;
  14. import java.util.concurrent.TimeUnit;
  15. import org.eclipse.jgit.errors.ConfigInvalidException;
  16. import org.junit.Before;
  17. import org.junit.Test;
  18. public class RepositoryCacheConfigTest {
  19. private RepositoryCacheConfig config;
  20. @Before
  21. public void setUp() {
  22. config = new RepositoryCacheConfig();
  23. }
  24. @Test
  25. public void testDefaultValues() {
  26. assertEquals(TimeUnit.HOURS.toMillis(1), config.getExpireAfter());
  27. assertEquals(config.getExpireAfter() / 10, config.getCleanupDelay());
  28. }
  29. @Test
  30. public void testCleanupDelay() {
  31. config.setCleanupDelay(TimeUnit.HOURS.toMillis(1));
  32. assertEquals(TimeUnit.HOURS.toMillis(1), config.getCleanupDelay());
  33. }
  34. @Test
  35. public void testAutoCleanupDelay() {
  36. config.setExpireAfter(TimeUnit.MINUTES.toMillis(20));
  37. config.setCleanupDelay(AUTO_CLEANUP_DELAY);
  38. assertEquals(TimeUnit.MINUTES.toMillis(20), config.getExpireAfter());
  39. assertEquals(config.getExpireAfter() / 10, config.getCleanupDelay());
  40. }
  41. @Test
  42. public void testAutoCleanupDelayShouldBeMax10minutes() {
  43. config.setExpireAfter(TimeUnit.HOURS.toMillis(10));
  44. assertEquals(TimeUnit.HOURS.toMillis(10), config.getExpireAfter());
  45. assertEquals(TimeUnit.MINUTES.toMillis(10), config.getCleanupDelay());
  46. }
  47. @Test
  48. public void testDisabledCleanupDelay() {
  49. config.setCleanupDelay(NO_CLEANUP);
  50. assertEquals(NO_CLEANUP, config.getCleanupDelay());
  51. }
  52. @Test
  53. public void testFromConfig() throws ConfigInvalidException {
  54. Config otherConfig = new Config();
  55. otherConfig.fromText("[core]\nrepositoryCacheExpireAfter=1000\n"
  56. + "repositoryCacheCleanupDelay=500");
  57. config.fromConfig(otherConfig);
  58. assertEquals(1000, config.getExpireAfter());
  59. assertEquals(500, config.getCleanupDelay());
  60. }
  61. }