Skip to content

Commit 761d6c6

Browse files
committed
feat: lowercase package identifers on a parser level
1 parent 2aac256 commit 761d6c6

File tree

2 files changed

+8
-5
lines changed

2 files changed

+8
-5
lines changed

buckaroo-tests/PackageIdentifier.fs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ open Xunit
55
open Buckaroo
66

77
[<Fact>]
8-
let ``PackageIdentifier.parse works correctly`` () =
8+
let ``PackageIdentifier.parse works correctly`` () =
99
let cases = [
1010
("github.com/abc/def", PackageIdentifier.GitHub { Owner = "abc"; Project = "def" });
1111
("github.com/abc/def.ghi", PackageIdentifier.GitHub { Owner = "abc"; Project = "def.ghi" });
@@ -14,6 +14,9 @@ let ``PackageIdentifier.parse works correctly`` () =
1414
("bitbucket.org/abc/def", PackageIdentifier.BitBucket { Owner = "abc"; Project = "def" });
1515
("gitlab.com/abc/def", PackageIdentifier.GitLab { Owner = "abc"; Project = "def" });
1616
("gitlab.com/abc-def/xyz", PackageIdentifier.GitLab { Owner = "abc-def"; Project = "xyz" });
17+
("github.com/ABC-DEF/XYZ", PackageIdentifier.GitHub { Owner = "abc-def"; Project = "xyz" });
18+
("gitlab.com/ABC-DEF/XYZ", PackageIdentifier.GitLab { Owner = "abc-def"; Project = "xyz" });
19+
("bitbucket.org/ABC-DEF/XYZ", PackageIdentifier.BitBucket { Owner = "abc-def"; Project = "xyz" });
1720
]
1821

1922
for (input, expected) in cases do

buckaroo/PackageIdentifier.fs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ module PackageIdentifier =
3838
let! owner = gitHubIdentifierParser
3939
do! CharParsers.skipString "/"
4040
let! project = gitHubIdentifierParser
41-
return { Owner = owner; Project = project }
41+
return { Owner = owner.ToLower(); Project = project.ToLower() }
4242
}
4343

4444
let parseAdhocIdentifier (x : string) : Result<AdhocPackageIdentifier, string> =
@@ -52,7 +52,7 @@ module PackageIdentifier =
5252
let! owner = gitHubIdentifierParser
5353
do! CharParsers.skipString "/"
5454
let! project = gitHubIdentifierParser
55-
return { Owner = owner; Project = project }
55+
return { Owner = owner.ToLower(); Project = project.ToLower() }
5656
}
5757

5858
let parseGitHubIdentifier (x : string) =
@@ -65,7 +65,7 @@ module PackageIdentifier =
6565
let! owner = gitHubIdentifierParser
6666
do! CharParsers.skipString "/"
6767
let! project = gitHubIdentifierParser
68-
return { Owner = owner; Project = project }
68+
return { Owner = owner.ToLower(); Project = project.ToLower() }
6969
}
7070

7171
let parseBitBucketIdentifier (x : string) =
@@ -78,7 +78,7 @@ module PackageIdentifier =
7878
let! owner = gitHubIdentifierParser
7979
do! CharParsers.skipString "/"
8080
let! project = gitHubIdentifierParser
81-
return { Owner = owner; Project = project }
81+
return { Owner = owner.ToLower(); Project = project.ToLower() }
8282
}
8383

8484
let parseGitLabIdentifier (x : string) =

0 commit comments

Comments
 (0)