@@ -80,7 +80,7 @@ public void GetAssemblyLocation_UsesCodeBase()
80
80
{
81
81
// Arrange
82
82
var destination = Path . Combine ( AssemblyDirectory , "RelatedAssembly.dll" ) ;
83
- var codeBase = "file://x/file/Assembly.dll" ;
83
+ var codeBase = "file://x: /file/Assembly.dll" ;
84
84
var expected = new Uri ( codeBase ) . LocalPath ;
85
85
var assembly = new TestAssembly
86
86
{
@@ -109,6 +109,54 @@ public void GetAssemblyLocation_UsesLocation_IfCodeBaseIsNotLocal()
109
109
Assert . Equal ( expected , actual ) ;
110
110
}
111
111
112
+ [ Fact ]
113
+ public void GetAssemblyLocation_CodeBase_HasPoundCharacterUnixPath ( )
114
+ {
115
+ var destination = Path . Combine ( AssemblyDirectory , "RelatedAssembly.dll" ) ;
116
+ var expected = @"/etc/#NIN/dotnetcore/tryx/try1.dll" ;
117
+ var assembly = new TestAssembly
118
+ {
119
+ CodeBaseSettable = "file:///etc/#NIN/dotnetcore/tryx/try1.dll" ,
120
+ LocationSettable = expected ,
121
+ } ;
122
+
123
+ // Act
124
+ var actual = RelatedAssemblyAttribute . GetAssemblyLocation ( assembly ) ;
125
+ Assert . Equal ( expected , actual ) ;
126
+ }
127
+
128
+ [ Fact ]
129
+ public void GetAssemblyLocation_CodeBase_HasPoundCharacterUNCPath ( )
130
+ {
131
+ var destination = Path . Combine ( AssemblyDirectory , "RelatedAssembly.dll" ) ;
132
+ var expected = @"\\server\#NIN\dotnetcore\tryx\try1.dll" ;
133
+ var assembly = new TestAssembly
134
+ {
135
+ CodeBaseSettable = "file://server/#NIN/dotnetcore/tryx/try1.dll" ,
136
+ LocationSettable = expected ,
137
+ } ;
138
+
139
+ // Act
140
+ var actual = RelatedAssemblyAttribute . GetAssemblyLocation ( assembly ) ;
141
+ Assert . Equal ( expected , actual ) ;
142
+ }
143
+
144
+ [ Fact ]
145
+ public void GetAssemblyLocation_CodeBase_HasPoundCharacterDOSPath ( )
146
+ {
147
+ var destination = Path . Combine ( AssemblyDirectory , "RelatedAssembly.dll" ) ;
148
+ var expected = @"C:\#NIN\dotnetcore\tryx\try1.dll" ;
149
+ var assembly = new TestAssembly
150
+ {
151
+ CodeBaseSettable = "file:///C:/#NIN/dotnetcore/tryx/try1.dll" ,
152
+ LocationSettable = expected ,
153
+ } ;
154
+
155
+ // Act
156
+ var actual = RelatedAssemblyAttribute . GetAssemblyLocation ( assembly ) ;
157
+ Assert . Equal ( expected , actual ) ;
158
+ }
159
+
112
160
private class TestAssembly : Assembly
113
161
{
114
162
public override AssemblyName GetName ( )
0 commit comments