Skip to content

Commit 600eb95

Browse files
authored
Merge branch 'master' into nocache-script-packages
2 parents a9cc46a + 4aaadc2 commit 600eb95

File tree

2 files changed

+21
-2
lines changed

2 files changed

+21
-2
lines changed

src/Dotnet.Script.DependencyModel/ProjectSystem/ScriptParser.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,7 @@ public ParseResult ParseFromFiles(IEnumerable<string> csxFiles)
7171
const string DirectivePatternSuffix = Hws + @"""nuget:"
7272
// https://github.com/NuGet/docs.microsoft.com-nuget/issues/543#issue-270039223
7373
+ Hws + @"(\w+(?:[_.-]\w+)*)"
74-
+ Hws + @","
75-
+ Hws + @"(.+?)""";
74+
+ @"(?:" + Hws + "," + Hws + @"(.+?))?""";
7675

7776
private static IEnumerable<PackageReference> ReadPackageReferencesFromReferenceDirective(string fileContent)
7877
{

src/Dotnet.Script.Tests/ScriptParserTests.cs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,20 @@ public void ShouldResolveSinglePackage()
3030
Assert.Equal("1.2.3", result.PackageReferences.Single().Version.Value);
3131
}
3232

33+
[Theory]
34+
[InlineData("#r \"nuget:Package\"")]
35+
[InlineData("#load \"nuget:Package\"")]
36+
public void ShouldResolveSingleVersionlessPackage(string code)
37+
{
38+
var parser = CreateParser();
39+
40+
var result = parser.ParseFromCode(code);
41+
42+
Assert.Equal(1, result.PackageReferences.Count);
43+
Assert.Equal("Package", result.PackageReferences.Single().Id.Value);
44+
Assert.Equal(string.Empty, result.PackageReferences.Single().Version.Value);
45+
}
46+
3347
[Fact]
3448
public void ShouldResolveSinglePackageFromLoadDirective()
3549
{
@@ -86,6 +100,9 @@ public void ShouldResolveMultiplePackages()
86100
[InlineData("#load \"nuget:P a c k a g e, 1.2.3\"")]
87101
[InlineData("#load \"nuget:Pack/age, 1.2.3\"")]
88102
[InlineData("#load \"nuget:Package,\"")]
103+
[InlineData("#load \"nuget:Package \"")]
104+
[InlineData("#load \"nuget:Package\t\"")]
105+
[InlineData("#load \"nuget:Package\n\"")]
89106
[InlineData("\r #r\"nuget:Package, 1.2.3\"")]
90107
[InlineData("#r\n\"nuget:Package, 1.2.3\"")]
91108
[InlineData("#r \"nuget:\nPackage, 1.2.3\"")]
@@ -94,6 +111,9 @@ public void ShouldResolveMultiplePackages()
94111
[InlineData("#r \"nuget:P a c k a g e, 1.2.3\"")]
95112
[InlineData("#r \"nuget:Pack/age, 1.2.3\"")]
96113
[InlineData("#r \"nuget:Package,\"")]
114+
[InlineData("#r \"nuget:Package \"")]
115+
[InlineData("#r \"nuget:Package\t\"")]
116+
[InlineData("#r \"nuget:Package\n\"")]
97117
public void ShouldNotMatchBadDirectives(string code)
98118
{
99119
var parser = CreateParser();

0 commit comments

Comments
 (0)