@@ -6,6 +6,53 @@ const root = normalize(join(__dirname, "..", "..", "mock"));
6
6
const tempRoot = normalize ( join ( __dirname , ".." , ".." , "temp" ) ) ;
7
7
8
8
describe ( "Version" , ( ) => {
9
+ describe ( "#resolveFromPath" , ( ) => {
10
+ test ( "should be able to infer from path" , ( ) => {
11
+ let path = "org/lwjgl/lwjgl-stb/3.2.1/lwjgl-stb-3.2.1.jar" ;
12
+ let info = LibraryInfo . resolveFromPath ( path )
13
+ expect ( info . path ) . toEqual ( path ) ;
14
+ expect ( info . groupId ) . toEqual ( "org.lwjgl" ) ;
15
+ expect ( info . artifactId ) . toEqual ( "lwjgl-stb" ) ;
16
+ expect ( info . version ) . toEqual ( "3.2.1" ) ;
17
+ expect ( info . name ) . toEqual ( "org.lwjgl:lwjgl-stb:3.2.1" ) ;
18
+ expect ( info . classifier ) . toEqual ( "" ) ;
19
+ expect ( info . type ) . toEqual ( "jar" ) ;
20
+ } ) ;
21
+ test ( "should be able to infer from path with classifier" , ( ) => {
22
+ let path = "org/lwjgl/lwjgl-stb/3.2.1/lwjgl-stb-3.2.1-javadoc.jar" ;
23
+ let info = LibraryInfo . resolveFromPath ( path )
24
+ expect ( info . path ) . toEqual ( path ) ;
25
+ expect ( info . groupId ) . toEqual ( "org.lwjgl" ) ;
26
+ expect ( info . artifactId ) . toEqual ( "lwjgl-stb" ) ;
27
+ expect ( info . version ) . toEqual ( "3.2.1" ) ;
28
+ expect ( info . name ) . toEqual ( "org.lwjgl:lwjgl-stb:3.2.1:javadoc" ) ;
29
+ expect ( info . classifier ) . toEqual ( "javadoc" ) ;
30
+ expect ( info . type ) . toEqual ( "jar" ) ;
31
+ } ) ;
32
+ test ( "should be able to infer from path with other file type" , ( ) => {
33
+ let path = "org/lwjgl/lwjgl-stb/3.2.1/lwjgl-stb-3.2.1-javadoc.zip" ;
34
+ let info = LibraryInfo . resolveFromPath ( path )
35
+ expect ( info . path ) . toEqual ( path ) ;
36
+ expect ( info . groupId ) . toEqual ( "org.lwjgl" ) ;
37
+ expect ( info . artifactId ) . toEqual ( "lwjgl-stb" ) ;
38
+ expect ( info . version ) . toEqual ( "3.2.1" ) ;
39
+ expect ( info . name ) . toEqual ( "org.lwjgl:lwjgl-stb:3.2.1:javadoc@zip" ) ;
40
+ expect ( info . classifier ) . toEqual ( "javadoc" ) ;
41
+ expect ( info . type ) . toEqual ( "zip" ) ;
42
+ } ) ;
43
+ test ( "should be able to infer from path with other file type and snapshot" , ( ) => {
44
+ let path = "org/lwjgl/lwjgl-stb/3.2.1/3.2.1-javadoc.zip" ;
45
+ let info = LibraryInfo . resolveFromPath ( path )
46
+ expect ( info . path ) . toEqual ( path ) ;
47
+ expect ( info . groupId ) . toEqual ( "org.lwjgl" ) ;
48
+ expect ( info . artifactId ) . toEqual ( "lwjgl-stb" ) ;
49
+ expect ( info . version ) . toEqual ( "3.2.1" ) ;
50
+ expect ( info . name ) . toEqual ( "org.lwjgl:lwjgl-stb:3.2.1:javadoc@zip" ) ;
51
+ expect ( info . classifier ) . toEqual ( "javadoc" ) ;
52
+ expect ( info . type ) . toEqual ( "zip" ) ;
53
+ expect ( info . isSnapshot ) . toEqual ( true ) ;
54
+ } ) ;
55
+ } ) ;
9
56
describe ( "#getLibraryInfo" , ( ) => {
10
57
test ( "should be able to parse normal minecraft library" , ( ) => {
11
58
const name = "com.mojang:patchy:1.1" ;
0 commit comments