You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2019/06/07 06:48:15 UTC
[maven-shared-utils] 02/05: Load SUT class a little later
This is an automated email from the ASF dual-hosted git repository.
rfscholte pushed a commit to branch MSHARED-826
in repository https://gitbox.apache.org/repos/asf/maven-shared-utils.git
commit 71af09677f715e7832ad44d0cc69feaa8205af82
Author: Maarten Mulders <m....@xs4all.nl>
AuthorDate: Thu Jun 6 13:32:09 2019 +0200
Load SUT class a little later
This way, we can first change the system props
and then interact with the SUT. This way, changing
the static class fields is no longer needed.
---
.../java/org/apache/maven/shared/utils/OsTest.java | 30 +---------------------
1 file changed, 1 insertion(+), 29 deletions(-)
diff --git a/src/test/java/org/apache/maven/shared/utils/OsTest.java b/src/test/java/org/apache/maven/shared/utils/OsTest.java
index 051a930..7c2fd1f 100644
--- a/src/test/java/org/apache/maven/shared/utils/OsTest.java
+++ b/src/test/java/org/apache/maven/shared/utils/OsTest.java
@@ -47,58 +47,30 @@ public class OsTest
@Before
public void setUp()
- throws Exception
{
origOsName = System.getProperty( "os.name" );
origOsArch = System.getProperty( "os.arch" );
origOsVersion = System.getProperty( "os.version" );
- origOsFamily = Os.OS_FAMILY;
// and now set some special settings ;)
System.setProperty( "os.name" , "os/2" );
System.setProperty( "os.arch" , "i386" );
System.setProperty( "os.version", "2.1.32" );
- // blow away the originally loaded values
- setStaticOsField( "OS_NAME", "os/2" );
- setStaticOsField( "OS_FAMILY", "os/2" );
- setStaticOsField( "OS_ARCH", "i386" );
- setStaticOsField( "OS_VERSION", "2.1.32" );
+ origOsFamily = Os.OS_FAMILY;
}
@After
public void tearDown()
- throws Exception
{
// set the original OS settings again
System.setProperty( "os.name" , origOsName );
System.setProperty( "os.arch" , origOsArch );
System.setProperty( "os.version", origOsVersion );
-
- // restore the originally loaded values
- setStaticOsField( "OS_NAME", origOsName );
- setStaticOsField( "OS_ARCH", origOsArch );
- setStaticOsField( "OS_VERSION", origOsVersion );
- setStaticOsField( "OS_FAMILY", origOsFamily );
}
- private void setStaticOsField( String variableName, Object value )
- throws NoSuchFieldException, IllegalAccessException
- {
- Field field = Os.class.getField( variableName );
-
- Field modifiersField = Field.class.getDeclaredField( "modifiers" );
- modifiersField.setAccessible( true );
- modifiersField.setInt( field, field.getModifiers() & ~Modifier.FINAL );
-
- field.setAccessible( true );
- field.set( null, value );
- }
-
-
@Test
public void testConstructor()
- throws Exception
{
Os os = new Os();
os.eval();