Add parse tests for package header

This commit is contained in:
Richard Feldman 2022-12-02 16:38:37 -05:00
parent 8a5ddaab2f
commit bee24fcd37
No known key found for this signature in database
GPG key ID: F1F21AA5B1D9E43B
5 changed files with 79 additions and 0 deletions

View file

@ -0,0 +1,27 @@
Module {
comments: [],
header: Package(
PackageHeader {
before_name: [],
name: @8-24 PackageName(
"rtfeldman/blah",
),
exposes: KeywordItem {
keyword: Spaces {
before: [],
item: ExposesKeyword,
after: [],
},
item: [],
},
packages: KeywordItem {
keyword: Spaces {
before: [],
item: PackagesKeyword,
after: [],
},
item: [],
},
},
),
}

View file

@ -0,0 +1 @@
package "rtfeldman/blah" exposes [] packages {}

View file

@ -0,0 +1,46 @@
Module {
comments: [],
header: Package(
PackageHeader {
before_name: [],
name: @8-20 PackageName(
"foo/barbaz",
),
exposes: KeywordItem {
keyword: Spaces {
before: [
Newline,
],
item: ExposesKeyword,
after: [],
},
item: [
@34-37 ModuleName(
"Foo",
),
@39-42 ModuleName(
"Bar",
),
],
},
packages: KeywordItem {
keyword: Spaces {
before: [
Newline,
],
item: PackagesKeyword,
after: [],
},
item: [
@59-71 PackageEntry {
shorthand: "foo",
spaces_after_shorthand: [],
package_name: @64-71 PackageName(
"./foo",
),
},
],
},
},
),
}

View file

@ -0,0 +1,3 @@
package "foo/barbaz"
exposes [Foo, Bar]
packages { foo: "./foo" }

View file

@ -220,6 +220,7 @@ mod test_parse {
pass/empty_hosted_header.header,
pass/empty_interface_header.header,
pass/empty_list.expr,
pass/empty_package_header.header,
pass/empty_platform_header.header,
pass/empty_record.expr,
pass/empty_string.expr,
@ -276,6 +277,7 @@ mod test_parse {
pass/newline_inside_empty_list.expr,
pass/newline_singleton_list.expr,
pass/nonempty_hosted_header.header,
pass/nonempty_package_header.header,
pass/nonempty_platform_header.header,
pass/not_docs.expr,
pass/number_literal_suffixes.expr,