Skip to content

Commit 0213003

Browse files
author
Thomas
committed
test case with no refresh endpoint
1 parent bb5360b commit 0213003

File tree

2 files changed

+35
-5
lines changed

2 files changed

+35
-5
lines changed

server/api-service/lowcoder-server/src/main/java/org/lowcoder/api/authentication/request/oauth2/request/GenericAuthRequest.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.lowcoder.api.authentication.request.oauth2.request;
22

3+
import lombok.Setter;
34
import org.lowcoder.api.authentication.request.AuthException;
45
import org.lowcoder.api.authentication.request.oauth2.GenericOAuthProviderSource;
56
import org.lowcoder.api.authentication.request.oauth2.OAuth2RequestContext;
@@ -21,11 +22,10 @@
2122
* This class is for Generic Auth Request
2223
*/
2324
public class GenericAuthRequest extends AbstractOauth2Request<Oauth2GenericAuthConfig>{
25+
@Setter
2426
private static boolean isTest = false;
25-
26-
public static void setIsTest(boolean isTest) {
27-
GenericAuthRequest.isTest = isTest;
28-
}
27+
@Setter
28+
private static boolean testCase01 = false;
2929

3030
public GenericAuthRequest(Oauth2GenericAuthConfig context) {
3131
super(context, new GenericOAuthProviderSource(context));
@@ -60,6 +60,7 @@ protected Mono<AuthToken> getAuthToken(OAuth2RequestContext context) {
6060
@Override
6161
protected Mono<AuthToken> refreshAuthToken(String refreshToken) {
6262
if(isTest) {
63+
if(testCase01) return Mono.error(new AuthException(true));
6364
AuthToken authToken = AuthToken.builder().build();
6465
return Mono.just(authToken);
6566
} else return WebClientBuildHelper.builder()

server/api-service/lowcoder-server/src/test/java/org/lowcoder/api/authentication/GenericAuthenticateTest.java

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,36 @@ public void testGoogleLoginSuccess() {
6363
String orgId = "org01";
6464
String redirectUrl = "https://test.com";
6565

66-
GenericAuthRequest.setIsTest(true);
66+
GenericAuthRequest.setTest(true);
67+
String uid = "uId";
68+
69+
MockServerHttpRequest request = MockServerHttpRequest.post("").build();
70+
MockServerWebExchange exchange = MockServerWebExchange.builder(request).build();
71+
72+
var authId = getGenericAuthConfigId(orgId).block();
73+
Mono<User> userMono = authenticationController.loginWithThirdParty(authId, source, code, null, redirectUrl, orgId, exchange)
74+
.then(userRepository.findByConnections_SourceAndConnections_RawId(source, uid));
75+
76+
StepVerifier.create(userMono)
77+
.assertNext(user -> {
78+
assertEquals("dummyname", user.getName());
79+
assertEquals(UserState.ACTIVATED, user.getState());
80+
assertEquals(1, user.getConnections().size());
81+
assertTrue(user.getIsEnabled());
82+
})
83+
.verifyComplete();
84+
}
85+
86+
@Test
87+
@WithMockUser
88+
public void testGoogleLoginWithNoRefreshSuccess() {
89+
String source = AuthSourceConstants.GOOGLE;
90+
String code = "test-code-123456";
91+
String orgId = "org01";
92+
String redirectUrl = "https://test.com";
93+
94+
GenericAuthRequest.setTest(true);
95+
GenericAuthRequest.setTestCase01(true);
6796
String uid = "uId";
6897

6998
MockServerHttpRequest request = MockServerHttpRequest.post("").build();

0 commit comments

Comments
 (0)