Skip to content

Commit 99020fa

Browse files
Java unit test generation leveraging LLM and langchian (#594)
* utg * u * update * update * utg2 * u --------- Co-authored-by: dexterdreeeam <[email protected]>
1 parent ff32eaa commit 99020fa

37 files changed

+2552
-0
lines changed

.vscode/settings.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"[python]": {
3+
"editor.defaultFormatter": "ms-python.black-formatter"
4+
},
5+
"python.formatting.provider": "none"
6+
}
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
import org.junit.Test;
2+
import org.junit.runner.RunWith;
3+
import org.mockito.InjectMocks;
4+
import org.mockito.Mock;
5+
import org.mockito.junit.MockitoJUnitRunner;
6+
import static org.junit.Assert.*;
7+
import static org.mockito.Mockito.*;
8+
9+
@RunWith(MockitoJUnitRunner.class)
10+
public class AuthUtilTest {
11+
@InjectMocks
12+
private AuthUtil authUtil;
13+
@Test
14+
public void testIsIgnore_NullRequestUrl_ReturnsFalse() {
15+
boolean result = authUtil.isIgnore(null); assertFalse(result);
16+
}
17+
18+
@Test
19+
public void testIsIgnore_UrlMappingIsNull_ReturnsFalse() {
20+
when(urlMapping.get(anyString())).thenReturn(null); boolean result = authUtil.isIgnore("example.com"); assertFalse(result); verify(urlMapping, times(1)).get(anyString());
21+
}
22+
23+
@Test
24+
public void testIsIgnore_UrlMappingContainsRequestUrl_ReturnsTrue() {
25+
when(urlMapping.get(anyString())).thenReturn(true); boolean result = authUtil.isIgnore("example.com"); assertTrue(result); verify(urlMapping, times(1)).get(anyString());
26+
}
27+
28+
@Test
29+
public void testIsIgnore_UrlMappingDoesNotContainRequestUrl_ReturnsFalse() {
30+
when(urlMapping.get(anyString())).thenReturn(false); boolean result = authUtil.isIgnore("example.com"); assertFalse(result); verify(urlMapping, times(1)).get(anyString());
31+
}
32+
33+
@Test
34+
public void testVerifyToken_ValidToken_ReturnsTrue() {
35+
String token = "validToken"; boolean result = authUtil.verifyToken(token); assertTrue(result);
36+
}
37+
38+
@Test
39+
public void testVerifyToken_InvalidToken_ReturnsFalse() {
40+
String token = "invalidToken"; boolean result = authUtil.verifyToken(token); assertFalse(result);
41+
}
42+
43+
@Test
44+
public void testDecodeAccessToken_ValidAccessToken_ReturnsUserInfo() {
45+
String accessToken = "validAccessToken"; JSONObject userInfo = authUtil.decodeAccessToken(accessToken); assertNotNull(userInfo);
46+
}
47+
48+
@Test
49+
public void testDecodeAccessToken_InvalidAccessToken_ReturnsNull() {
50+
String accessToken = "invalidAccessToken"; JSONObject userInfo = authUtil.decodeAccessToken(accessToken); assertNull(userInfo);
51+
}
52+
53+
@Test
54+
public void testGetLoginUserName_ValidAccessToken_ReturnsUsername() {
55+
String accessToken = "validAccessToken"; String username = authUtil.getLoginUserName(accessToken); assertNotNull(username);
56+
}
57+
58+
@Test
59+
public void testGetLoginUserName_InvalidAccessToken_ReturnsEmptyString() {
60+
String accessToken = "invalidAccessToken"; String username = authUtil.getLoginUserName(accessToken); assertEquals("", username);
61+
}
62+
63+
@Test
64+
public void testGetLoginUserDisplayName_ValidAccessToken_ReturnsName() {
65+
String accessToken = "validAccessToken"; String name = authUtil.getLoginUserDisplayName(accessToken); assertNotNull(name);
66+
}
67+
68+
@Test
69+
public void testGetLoginUserDisplayName_InvalidAccessToken_ReturnsEmptyString() {
70+
String accessToken = "invalidAccessToken"; String name = authUtil.getLoginUserDisplayName(accessToken); assertEquals("", name);
71+
}
72+
73+
@Test
74+
public void testGetLoginUrl_ReturnsLoginUrl() {
75+
String loginUrl = authUtil.getLoginUrl(); assertNotNull(loginUrl);
76+
}
77+
78+
@Test
79+
public void testGetLoginUrl_WithOriginUrlAndQueryString_ReturnsLoginUrl() {
80+
String originUrl = "example.com"; String queryString = "param=value"; String loginUrl = authUtil.getLoginUrl(originUrl, queryString); assertNotNull(loginUrl);
81+
}
82+
83+
@Test
84+
public void testVerifyCode_ValidCode_ReturnsAccessToken() {
85+
String code = "validCode"; String accessToken = authUtil.verifyCode(code); assertNotNull(accessToken);
86+
}
87+
88+
@Test
89+
public void testVerifyCode_InvalidCode_ReturnsNull() {
90+
String code = "invalidCode"; String accessToken = authUtil.verifyCode(code); assertNull(accessToken);
91+
}
92+
93+
@Test
94+
public void testRequestPhoto_ValidAccessToken_ReturnsInputStream() {
95+
String accessToken = "validAccessToken"; InputStream inputStream = authUtil.requestPhoto(accessToken); assertNotNull(inputStream);
96+
}
97+
98+
public void testRequestPhoto_InvalidAccessToken_ThrowsException() {
99+
String accessToken = "invalidAccessToken"; authUtil.requestPhoto(accessToken);
100+
}
101+
102+
}
Lines changed: 176 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,176 @@
1+
import org.junit.Test;
2+
import org.junit.runner.RunWith;
3+
import org.mockito.InjectMocks;
4+
import org.mockito.Mock;
5+
import org.mockito.junit.MockitoJUnitRunner;
6+
import static org.junit.Assert.*;
7+
import static org.mockito.Mockito.*;
8+
9+
@RunWith(MockitoJUnitRunner.class)
10+
public class AuthUtilTest {
11+
12+
@InjectMocks
13+
private AuthUtil authUtil;
14+
15+
@Mock
16+
private Map<String, Boolean> urlMapping;
17+
18+
@Test
19+
public void testIsIgnore_NullRequestUrl_ReturnsFalse() {
20+
boolean result = authUtil.isIgnore(null);
21+
assertFalse(result);
22+
}
23+
24+
@Test
25+
public void testIsIgnore_UrlMappingIsNull_ReturnsFalse() {
26+
when(urlMapping.get(anyString())).thenReturn(null);
27+
28+
boolean result = authUtil.isIgnore("example.com");
29+
30+
assertFalse(result);
31+
verify(urlMapping, times(1)).get(anyString());
32+
}
33+
34+
@Test
35+
public void testIsIgnore_UrlMappingContainsRequestUrl_ReturnsTrue() {
36+
when(urlMapping.get(anyString())).thenReturn(true);
37+
38+
boolean result = authUtil.isIgnore("example.com");
39+
40+
assertTrue(result);
41+
verify(urlMapping, times(1)).get(anyString());
42+
}
43+
44+
@Test
45+
public void testIsIgnore_UrlMappingDoesNotContainRequestUrl_ReturnsFalse() {
46+
when(urlMapping.get(anyString())).thenReturn(false);
47+
48+
boolean result = authUtil.isIgnore("example.com");
49+
50+
assertFalse(result);
51+
verify(urlMapping, times(1)).get(anyString());
52+
}
53+
54+
@Test
55+
public void testVerifyToken_ValidToken_ReturnsTrue() {
56+
String token = "validToken";
57+
58+
boolean result = authUtil.verifyToken(token);
59+
60+
assertTrue(result);
61+
}
62+
63+
@Test
64+
public void testVerifyToken_InvalidToken_ReturnsFalse() {
65+
String token = "invalidToken";
66+
67+
boolean result = authUtil.verifyToken(token);
68+
69+
assertFalse(result);
70+
}
71+
72+
@Test
73+
public void testDecodeAccessToken_ValidAccessToken_ReturnsUserInfo() {
74+
String accessToken = "validAccessToken";
75+
76+
JSONObject userInfo = authUtil.decodeAccessToken(accessToken);
77+
78+
assertNotNull(userInfo);
79+
}
80+
81+
@Test
82+
public void testDecodeAccessToken_InvalidAccessToken_ReturnsNull() {
83+
String accessToken = "invalidAccessToken";
84+
85+
JSONObject userInfo = authUtil.decodeAccessToken(accessToken);
86+
87+
assertNull(userInfo);
88+
}
89+
90+
@Test
91+
public void testGetLoginUserName_ValidAccessToken_ReturnsUsername() {
92+
String accessToken = "validAccessToken";
93+
94+
String username = authUtil.getLoginUserName(accessToken);
95+
96+
assertNotNull(username);
97+
}
98+
99+
@Test
100+
public void testGetLoginUserName_InvalidAccessToken_ReturnsEmptyString() {
101+
String accessToken = "invalidAccessToken";
102+
103+
String username = authUtil.getLoginUserName(accessToken);
104+
105+
assertEquals("", username);
106+
}
107+
108+
@Test
109+
public void testGetLoginUserDisplayName_ValidAccessToken_ReturnsName() {
110+
String accessToken = "validAccessToken";
111+
112+
String name = authUtil.getLoginUserDisplayName(accessToken);
113+
114+
assertNotNull(name);
115+
}
116+
117+
@Test
118+
public void testGetLoginUserDisplayName_InvalidAccessToken_ReturnsEmptyString() {
119+
String accessToken = "invalidAccessToken";
120+
121+
String name = authUtil.getLoginUserDisplayName(accessToken);
122+
123+
assertEquals("", name);
124+
}
125+
126+
@Test
127+
public void testGetLoginUrl_ReturnsLoginUrl() {
128+
String loginUrl = authUtil.getLoginUrl();
129+
130+
assertNotNull(loginUrl);
131+
}
132+
133+
@Test
134+
public void testGetLoginUrl_WithOriginUrlAndQueryString_ReturnsLoginUrl() {
135+
String originUrl = "example.com";
136+
String queryString = "param=value";
137+
138+
String loginUrl = authUtil.getLoginUrl(originUrl, queryString);
139+
140+
assertNotNull(loginUrl);
141+
}
142+
143+
@Test
144+
public void testVerifyCode_ValidCode_ReturnsAccessToken() {
145+
String code = "validCode";
146+
147+
String accessToken = authUtil.verifyCode(code);
148+
149+
assertNotNull(accessToken);
150+
}
151+
152+
@Test
153+
public void testVerifyCode_InvalidCode_ReturnsNull() {
154+
String code = "invalidCode";
155+
156+
String accessToken = authUtil.verifyCode(code);
157+
158+
assertNull(accessToken);
159+
}
160+
161+
@Test
162+
public void testRequestPhoto_ValidAccessToken_ReturnsInputStream() throws Exception {
163+
String accessToken = "validAccessToken";
164+
165+
InputStream inputStream = authUtil.requestPhoto(accessToken);
166+
167+
assertNotNull(inputStream);
168+
}
169+
170+
@Test(expected = Exception.class)
171+
public void testRequestPhoto_InvalidAccessToken_ThrowsException() throws Exception {
172+
String accessToken = "invalidAccessToken";
173+
174+
authUtil.requestPhoto(accessToken);
175+
}
176+
}

utg/code_parser/csharp.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
2+
class parser:
3+
def __init__(self, codes):
4+
self.codes = codes
5+
self.is_parsed = False
6+
7+
if __name__ == '__main__':
8+
pass

utg/code_parser/function.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
2+
class function:
3+
def __init__(self, lang, namespace, class_name, code):
4+
self.lang = lang
5+
self.namespace = namespace
6+
self.class_name = class_name
7+
self.code = code

0 commit comments

Comments
 (0)