@@ -23,12 +23,13 @@ import (
23
23
)
24
24
25
25
var l1 = & libraries.Library {Name : "Calculus Lib" , Location : libraries .User }
26
- var l2 = & libraries.Library {Name : "Calculus Lib-master" , Location : libraries .User }
27
- var l3 = & libraries.Library {Name : "Calculus Lib Improved" , Location : libraries .User }
28
- var l4 = & libraries.Library {Name : "Another Calculus Lib" , Location : libraries .User }
29
- var l5 = & libraries.Library {Name : "Yet Another Calculus Lib Improved" , Location : libraries .User }
30
- var l6 = & libraries.Library {Name : "Calculus Unified Lib" , Location : libraries .User }
31
- var l7 = & libraries.Library {Name : "AnotherLib" , Location : libraries .User }
26
+ var l2 = & libraries.Library {Name : "Calculus Lib-main" , Location : libraries .User }
27
+ var l3 = & libraries.Library {Name : "Calculus Lib-master" , Location : libraries .User }
28
+ var l4 = & libraries.Library {Name : "Calculus Lib Improved" , Location : libraries .User }
29
+ var l5 = & libraries.Library {Name : "Another Calculus Lib" , Location : libraries .User }
30
+ var l6 = & libraries.Library {Name : "Yet Another Calculus Lib Improved" , Location : libraries .User }
31
+ var l7 = & libraries.Library {Name : "Calculus Unified Lib" , Location : libraries .User }
32
+ var l8 = & libraries.Library {Name : "AnotherLib" , Location : libraries .User }
32
33
var bundleServo = & libraries.Library {Name : "Servo" , Location : libraries .IDEBuiltIn , Architectures : []string {"avr" , "sam" , "samd" }}
33
34
34
35
func runResolver (include string , arch string , libs ... * libraries.Library ) * libraries.Library {
@@ -91,14 +92,14 @@ func TestArchitecturePriority(t *testing.T) {
91
92
92
93
func TestClosestMatchWithTotallyDifferentNames (t * testing.T ) {
93
94
libraryList := libraries.List {}
94
- libraryList .Add (l5 )
95
95
libraryList .Add (l6 )
96
96
libraryList .Add (l7 )
97
+ libraryList .Add (l8 )
97
98
resolver := NewCppResolver ()
98
99
resolver .headers ["XYZ.h" ] = libraryList
99
100
res := resolver .ResolveFor ("XYZ.h" , "xyz" )
100
101
require .NotNil (t , res )
101
- require .Equal (t , l7 , res , "selected library" )
102
+ require .Equal (t , l8 , res , "selected library" )
102
103
}
103
104
104
105
func TestCppHeaderPriority (t * testing.T ) {
@@ -109,12 +110,14 @@ func TestCppHeaderPriority(t *testing.T) {
109
110
r5 := ComputePriority (l5 , "calculus_lib.h" , "avr" )
110
111
r6 := ComputePriority (l6 , "calculus_lib.h" , "avr" )
111
112
r7 := ComputePriority (l7 , "calculus_lib.h" , "avr" )
113
+ r8 := ComputePriority (l8 , "calculus_lib.h" , "avr" )
112
114
require .True (t , r1 > r2 )
113
115
require .True (t , r2 > r3 )
114
116
require .True (t , r3 > r4 )
115
117
require .True (t , r4 > r5 )
116
118
require .True (t , r5 > r6 )
117
- require .True (t , r6 == r7 )
119
+ require .True (t , r6 > r7 )
120
+ require .True (t , r7 == r8 )
118
121
}
119
122
120
123
func TestCppHeaderResolverWithNilResult (t * testing.T ) {
@@ -135,13 +138,14 @@ func TestCppHeaderResolver(t *testing.T) {
135
138
resolver .headers [header ] = librarylist
136
139
return resolver .ResolveFor (header , "avr" ).Name
137
140
}
138
- require .Equal (t , "Calculus Lib" , resolve ("calculus_lib.h" , l1 , l2 , l3 , l4 , l5 , l6 , l7 ))
139
- require .Equal (t , "Calculus Lib-master" , resolve ("calculus_lib.h" , l2 , l3 , l4 , l5 , l6 , l7 ))
140
- require .Equal (t , "Calculus Lib Improved" , resolve ("calculus_lib.h" , l3 , l4 , l5 , l6 , l7 ))
141
- require .Equal (t , "Another Calculus Lib" , resolve ("calculus_lib.h" , l4 , l5 , l6 , l7 ))
142
- require .Equal (t , "Yet Another Calculus Lib Improved" , resolve ("calculus_lib.h" , l5 , l6 , l7 ))
143
- require .Equal (t , "Calculus Unified Lib" , resolve ("calculus_lib.h" , l6 , l7 ))
144
- require .Equal (t , "Calculus Unified Lib" , resolve ("calculus_lib.h" , l7 , l6 ))
141
+ require .Equal (t , "Calculus Lib" , resolve ("calculus_lib.h" , l1 , l2 , l3 , l4 , l5 , l6 , l7 , l8 ))
142
+ require .Equal (t , "Calculus Lib-main" , resolve ("calculus_lib.h" , l2 , l3 , l4 , l5 , l6 , l7 , l8 ))
143
+ require .Equal (t , "Calculus Lib-master" , resolve ("calculus_lib.h" , l3 , l4 , l5 , l6 , l7 , l8 ))
144
+ require .Equal (t , "Calculus Lib Improved" , resolve ("calculus_lib.h" , l4 , l5 , l6 , l7 , l8 ))
145
+ require .Equal (t , "Another Calculus Lib" , resolve ("calculus_lib.h" , l5 , l6 , l7 , l8 ))
146
+ require .Equal (t , "Yet Another Calculus Lib Improved" , resolve ("calculus_lib.h" , l6 , l7 , l8 ))
147
+ require .Equal (t , "Calculus Unified Lib" , resolve ("calculus_lib.h" , l7 , l8 ))
148
+ require .Equal (t , "Calculus Unified Lib" , resolve ("calculus_lib.h" , l8 , l7 ))
145
149
}
146
150
147
151
func TestCppHeaderResolverWithLibrariesInStrangeDirectoryNames (t * testing.T ) {
0 commit comments