Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[NIFI-11018] Upgraded from Junit4 to Junit5 #6814

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,8 @@
package org.apache.nifi.web.filter


import org.junit.After
import org.junit.Before
import org.junit.BeforeClass
import org.junit.Test
import org.junit.runner.RunWith
import org.junit.runners.JUnit4
import org.junit.jupiter.api.BeforeAll
import org.junit.jupiter.api.Test
import org.slf4j.Logger
import org.slf4j.LoggerFactory

Expand All @@ -35,27 +31,16 @@ import javax.servlet.ServletResponse
import javax.servlet.http.HttpServletRequest
import javax.servlet.http.HttpServletResponse

@RunWith(JUnit4.class)
class CatchAllFilterTest extends GroovyTestCase {
class CatchAllFilterTest {
private static final Logger logger = LoggerFactory.getLogger(CatchAllFilterTest.class)

@BeforeClass
@BeforeAll
static void setUpOnce() throws Exception {
logger.metaClass.methodMissing = { String name, args ->
logger.info("[${name?.toUpperCase()}] ${(args as List).join(" ")}")
}
}

@Before
void setUp() throws Exception {

}

@After
void tearDown() throws Exception {

}

private static String getValue(String parameterName, Map<String, String> params = [:]) {
params.containsKey(parameterName) ? params[parameterName] : ""
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,24 +17,20 @@
package org.apache.nifi.web.security

import org.apache.nifi.authorization.user.NiFiUser
import org.junit.After
import org.junit.Before
import org.junit.BeforeClass
import org.junit.Test
import org.junit.runner.RunWith
import org.junit.runners.JUnit4
import org.junit.jupiter.api.BeforeAll
import org.junit.jupiter.api.Test
import org.slf4j.Logger
import org.slf4j.LoggerFactory

import java.nio.charset.StandardCharsets

@RunWith(JUnit4.class)
import static org.junit.jupiter.api.Assertions.assertEquals
import static org.junit.jupiter.api.Assertions.assertFalse
import static org.junit.jupiter.api.Assertions.assertNotEquals

class ProxiedEntitiesUtilsTest {
private static final Logger logger = LoggerFactory.getLogger(ProxiedEntitiesUtils.class)

private static final String SAFE_USER_NAME_ANDY = "alopresto"
private static final String SAFE_USER_DN_ANDY = "CN=${SAFE_USER_NAME_ANDY}, OU=Apache NiFi"

private static final String SAFE_USER_NAME_JOHN = "jdoe"
private static final String SAFE_USER_DN_JOHN = "CN=${SAFE_USER_NAME_JOHN}, OU=Apache NiFi"

Expand All @@ -50,29 +46,20 @@ class ProxiedEntitiesUtilsTest {

private static
final String MALICIOUS_USER_NAME_JOHN_ESCAPED = sanitizeDn(MALICIOUS_USER_NAME_JOHN)
private static final String MALICIOUS_USER_DN_JOHN_ESCAPED = sanitizeDn(MALICIOUS_USER_DN_JOHN)

private static final String UNICODE_DN_1 = "CN=Алйс, OU=Apache NiFi"
private static final String UNICODE_DN_1_ENCODED = "<" + base64Encode(UNICODE_DN_1) + ">"

private static final String UNICODE_DN_2 = "CN=Боб, OU=Apache NiFi"
private static final String UNICODE_DN_2_ENCODED = "<" + base64Encode(UNICODE_DN_2) + ">"

@BeforeClass
@BeforeAll
static void setUpOnce() throws Exception {
logger.metaClass.methodMissing = { String name, args ->
logger.info("[${name?.toUpperCase()}] ${(args as List).join(" ")}")
}
}

@Before
void setUp() {
}

@After
void tearDown() {
}

private static String sanitizeDn(String dn = "") {
dn.replaceAll(/>/, '\\\\>').replaceAll('<', '\\\\<')
}
Expand All @@ -82,7 +69,7 @@ class ProxiedEntitiesUtilsTest {
}

private static String printUnicodeString(final String raw) {
StringBuilder sb = new StringBuilder();
StringBuilder sb = new StringBuilder()
for (int i = 0; i < raw.size(); i++) {
int codePoint = Character.codePointAt(raw, i)
int charCount = Character.charCount(codePoint)
Expand Down Expand Up @@ -120,7 +107,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Sanitized name: ${sanitizedName} | ${printUnicodeString(sanitizedName)}")

// Assert
assert sanitizedName != DESIRED_NAME
assertNotEquals(DESIRED_NAME, sanitizedName)
}
}

Expand All @@ -138,7 +125,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Forjohned proxy DN: ${forjohnedProxyDn}")

// Assert
assert forjohnedProxyDn == EXPECTED_PROXY_DN
assertEquals(EXPECTED_PROXY_DN, forjohnedProxyDn)
}

@Test
Expand All @@ -156,7 +143,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Forjohned proxy DN: ${forjohnedProxyDn}")

// Assert
assert forjohnedProxyDn == EXPECTED_PROXY_DN
assertEquals(EXPECTED_PROXY_DN, forjohnedProxyDn)
}

@Test
Expand All @@ -169,7 +156,7 @@ class ProxiedEntitiesUtilsTest {
def output = ProxiedEntitiesUtils.getProxiedEntitiesChain(input)

// Assert
assert output == expectedOutput
assertEquals(expectedOutput, output)
}

@Test
Expand All @@ -182,7 +169,7 @@ class ProxiedEntitiesUtilsTest {
def output = ProxiedEntitiesUtils.getProxiedEntitiesChain(input)

// Assert
assert output == expectedOutput
assertEquals(expectedOutput, output)
}

@Test
Expand All @@ -195,7 +182,7 @@ class ProxiedEntitiesUtilsTest {
def output = ProxiedEntitiesUtils.getProxiedEntitiesChain(input)

// Assert
assert output == expectedOutput
assertEquals(expectedOutput, output)
}

@Test
Expand All @@ -210,7 +197,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Formatted DN: ${formattedDn}")

// Assert
assert formattedDn == expectedFormattedDn
assertEquals(expectedFormattedDn, formattedDn)
}

@Test
Expand All @@ -224,7 +211,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Proxied entities chain: ${proxiedEntitiesChain}")

// Assert
assert proxiedEntitiesChain == "<${SAFE_USER_NAME_JOHN}><${SAFE_USER_NAME_PROXY_1}>" as String
assertEquals("<${SAFE_USER_NAME_JOHN}><${SAFE_USER_NAME_PROXY_1}>" as String, proxiedEntitiesChain)
}

@Test
Expand All @@ -236,7 +223,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Proxied entities chain: ${proxiedEntitiesChain}")

// Assert
assert proxiedEntitiesChain == "<>"
assertEquals("<>", proxiedEntitiesChain)
}

@Test
Expand All @@ -250,7 +237,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Proxied entities chain: ${proxiedEntitiesChain}")

// Assert
assert proxiedEntitiesChain == "<><${SAFE_USER_NAME_PROXY_1}>" as String
assertEquals("<><${SAFE_USER_NAME_PROXY_1}>" as String, proxiedEntitiesChain)
}

@Test
Expand All @@ -264,7 +251,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Proxied entities chain: ${proxiedEntitiesChain}")

// Assert
assert proxiedEntitiesChain == "<${SAFE_USER_NAME_JOHN}><${UNICODE_DN_1_ENCODED}>" as String
assertEquals("<${SAFE_USER_NAME_JOHN}><${UNICODE_DN_1_ENCODED}>" as String, proxiedEntitiesChain)
}

@Test
Expand All @@ -278,7 +265,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Proxied entities chain: ${proxiedEntitiesChain}")

// Assert
assert proxiedEntitiesChain == "<${MALICIOUS_USER_NAME_JOHN_ESCAPED}><${SAFE_USER_NAME_PROXY_1}>" as String
assertEquals("<${MALICIOUS_USER_NAME_JOHN_ESCAPED}><${SAFE_USER_NAME_PROXY_1}>" as String, proxiedEntitiesChain)
}

@Test
Expand All @@ -293,7 +280,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Tokenized proxy chain: ${tokenizedNames}")

// Assert
assert tokenizedNames == NAMES
assertEquals(NAMES, tokenizedNames)
}

@Test
Expand All @@ -308,7 +295,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Tokenized proxy chain: ${tokenizedNames}")

// Assert
assert tokenizedNames == NAMES
assertEquals(NAMES, tokenizedNames)
}

@Test
Expand All @@ -323,7 +310,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Tokenized proxy chain: ${tokenizedNames}")

// Assert
assert tokenizedNames == NAMES
assertEquals(NAMES, tokenizedNames)
}

@Test
Expand All @@ -338,7 +325,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Tokenized proxy chain: ${tokenizedNames}")

// Assert
assert tokenizedNames == NAMES
assertEquals(NAMES, tokenizedNames)
}

@Test
Expand All @@ -353,7 +340,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Tokenized proxy chain: ${tokenizedDns.collect { "\"${it}\"" }}")

// Assert
assert tokenizedDns == DNS
assertEquals(DNS, tokenizedDns)
}

@Test
Expand All @@ -368,7 +355,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Tokenized proxy chain: ${tokenizedNames}")

// Assert
assert tokenizedNames == NAMES
assertEquals(NAMES, tokenizedNames)
}

@Test
Expand All @@ -383,9 +370,9 @@ class ProxiedEntitiesUtilsTest {
logger.info("Tokenized proxy chain: ${tokenizedNames.collect { "\"${it}\"" }}")

// Assert
assert tokenizedNames == NAMES
assert tokenizedNames.size() == NAMES.size()
assert !tokenizedNames.contains(SAFE_USER_NAME_JOHN)
assertEquals(NAMES, tokenizedNames)
assertEquals(NAMES.size(), tokenizedNames.size())
assertFalse(tokenizedNames.contains(SAFE_USER_NAME_JOHN))
}

@Test
Expand All @@ -400,7 +387,7 @@ class ProxiedEntitiesUtilsTest {
logger.info("Tokenized proxy chain: ${tokenizedNames.collect { "\"${it}\"" }}")

// Assert
assert tokenizedNames == TOKENIZED_NAMES
assert tokenizedNames.size() == TOKENIZED_NAMES.size()
assertEquals(TOKENIZED_NAMES, tokenizedNames)
assertEquals(TOKENIZED_NAMES.size(), tokenizedNames.size())
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,25 +16,23 @@
*/
package org.apache.nifi.web.security.oidc


import com.nimbusds.oauth2.sdk.auth.ClientAuthenticationMethod
import com.nimbusds.oauth2.sdk.id.Issuer
import com.nimbusds.openid.connect.sdk.SubjectType
import com.nimbusds.openid.connect.sdk.op.OIDCProviderMetadata
import org.apache.nifi.util.NiFiProperties
import org.junit.After
import org.junit.Before
import org.junit.BeforeClass
import org.junit.Test
import org.junit.runner.RunWith
import org.junit.runners.JUnit4
import org.junit.jupiter.api.BeforeAll
import org.junit.jupiter.api.BeforeEach
import org.junit.jupiter.api.Test
import org.slf4j.Logger
import org.slf4j.LoggerFactory

import java.util.concurrent.TimeUnit

@RunWith(JUnit4.class)
class OidcServiceGroovyTest extends GroovyTestCase {
import static org.junit.jupiter.api.Assertions.assertEquals
import static org.junit.jupiter.api.Assertions.assertNull

class OidcServiceGroovyTest {
private static final Logger logger = LoggerFactory.getLogger(OidcServiceGroovyTest.class)

private static final Map<String, Object> DEFAULT_NIFI_PROPERTIES = [
Expand All @@ -61,23 +59,19 @@ class OidcServiceGroovyTest extends GroovyTestCase {
"CIsImVtYWlsIjoib2lkY190ZXN0QG5pZmkuYXBhY2hlLm9yZyJ9" +
".b4NIl0RONKdVLOH0D1eObdwAEX8qX-ExqB8KuKSZFLw"

@BeforeClass
@BeforeAll
static void setUpOnce() throws Exception {
logger.metaClass.methodMissing = { String name, args ->
logger.info("[${name?.toUpperCase()}] ${(args as List).join(" ")}")
}
}

@Before
@BeforeEach
void setUp() throws Exception {
mockNiFiProperties = buildNiFiProperties()
soip = new StandardOidcIdentityProvider(mockNiFiProperties)
}

@After
void teardown() throws Exception {
}

private static NiFiProperties buildNiFiProperties(Map<String, Object> props = [:]) {
def combinedProps = DEFAULT_NIFI_PROPERTIES + props
new NiFiProperties(combinedProps)
Expand All @@ -100,7 +94,7 @@ class OidcServiceGroovyTest extends GroovyTestCase {
final String cachedJwt = service.getJwt(MOCK_REQUEST_IDENTIFIER)
logger.info("Cached JWT: ${cachedJwt}")

assert cachedJwt == MOCK_JWT
assertEquals(MOCK_JWT, cachedJwt)
}

@Test
Expand All @@ -121,7 +115,7 @@ class OidcServiceGroovyTest extends GroovyTestCase {
logger.info("Retrieved JWT: ${retrievedJwt}")

// Assert
assert retrievedJwt == MOCK_JWT
assertEquals(MOCK_JWT, retrievedJwt)
}

@Test
Expand Down Expand Up @@ -149,7 +143,7 @@ class OidcServiceGroovyTest extends GroovyTestCase {
logger.info("Retrieved JWT: ${retrievedJwt}")

// Assert
assert retrievedJwt == null
assertNull(retrievedJwt)
}

private static StandardOidcIdentityProvider buildIdentityProviderWithMockInitializedProvider(Map<String, String> additionalProperties = [:]) {
Expand Down