Commit 5b4f9edc authored by Andy Wilkinson's avatar Andy Wilkinson

Restore original TCCL in PropertiesLauncherTests

Calling launch of PropertiesLauncherTests sets the thread context
class loader to an instance of LaunchedURLClassLoader. To avoid this
class loader being used beyond the scope of the test and launcher
that created it, this commit updates PropertiesLauncherTests to
capture the TCCL before each test and restore it after each test.

Closes gh-9378
parent 64158286
/* /*
* Copyright 2012-2016 the original author or authors. * Copyright 2012-2017 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
...@@ -53,8 +53,11 @@ public class PropertiesLauncherTests { ...@@ -53,8 +53,11 @@ public class PropertiesLauncherTests {
@Rule @Rule
public TemporaryFolder temporaryFolder = new TemporaryFolder(); public TemporaryFolder temporaryFolder = new TemporaryFolder();
private ClassLoader contextClassLoader;
@Before @Before
public void setup() throws IOException { public void setup() throws IOException {
this.contextClassLoader = Thread.currentThread().getContextClassLoader();
MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this);
System.setProperty("loader.home", System.setProperty("loader.home",
new File("src/test/resources").getAbsolutePath()); new File("src/test/resources").getAbsolutePath());
...@@ -62,6 +65,7 @@ public class PropertiesLauncherTests { ...@@ -62,6 +65,7 @@ public class PropertiesLauncherTests {
@After @After
public void close() { public void close() {
Thread.currentThread().setContextClassLoader(this.contextClassLoader);
System.clearProperty("loader.home"); System.clearProperty("loader.home");
System.clearProperty("loader.path"); System.clearProperty("loader.path");
System.clearProperty("loader.main"); System.clearProperty("loader.main");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment