@@ -35,18 +35,22 @@ public CodeGenerationService(GithubClient githubClient) {
35
35
public GithubSource generateTests (String url , final boolean referencedSources ) {
36
36
final var myUrl = url .replace ("https://github.com" , GithubClient .GITHUB_BASE_URL ).replace ("/blob" , "" );
37
37
var result = this .githubClient .readSourceFile (myUrl );
38
- var isComment = new AtomicBoolean (false );
39
- var sourceLines = result .lines ().stream ().map (myLine -> myLine .replaceAll ("[\t ]" , "" ).trim ())
38
+ final var isComment = new AtomicBoolean (false );
39
+ final var sourceLines = result .lines ().stream ().map (myLine -> myLine .replaceAll ("[\t ]" , "" ).trim ())
40
40
.filter (myLine -> !myLine .isBlank ()).filter (myLine -> filterComments (isComment , myLine )).toList ();
41
41
final var basePackage = List .of (result .sourcePackage ().split ("\\ ." )).stream ().limit (2 )
42
42
.collect (Collectors .joining ("." ));
43
- var importLines = sourceLines .stream ().filter (x -> referencedSources ).filter (myLine -> myLine .contains ("import" ))
43
+ final var dependencies = this .createDependencies (referencedSources , myUrl , sourceLines , basePackage );
44
+ return new GithubSource (result .sourceName (), result .sourcePackage (), sourceLines , dependencies );
45
+ }
46
+
47
+ private List <GithubSource > createDependencies (final boolean referencedSources , final String myUrl ,
48
+ final List <String > sourceLines , final String basePackage ) {
49
+ return sourceLines .stream ().filter (x -> referencedSources ).filter (myLine -> myLine .contains ("import" ))
44
50
.filter (myLine -> myLine .contains (basePackage ))
45
51
.map (myLine -> String .format ("%s%s%s" , myUrl .split (basePackage .replace ("." , "/" ))[0 ].trim (),
46
52
myLine .split ("import" )[1 ].split (";" )[0 ].replaceAll ("\\ ." , "/" ).trim (), ".java" ))
47
53
.map (myLine -> this .generateTests (myLine , false )).toList ();
48
- // importLines.forEach(myLine -> LOGGER.info(myLine));
49
- return new GithubSource (result .sourceName (), result .sourcePackage (), sourceLines , importLines );
50
54
}
51
55
52
56
private boolean filterComments (AtomicBoolean isComment , String myLine ) {
0 commit comments