Skip to content

Add tests for parameters - #4304

Merged
szakarias merged 3 commits into
dart-lang:mainfrom
sgrekhov:sgrekhov-dartdoc-16
Nov 2, 2026
Merged

szakarias merged 3 commits into
dart-lang:mainfrom
sgrekhov:sgrekhov-dartdoc-16

Conversation

@sgrekhov

Copy link
Copy Markdown
Collaborator

No description provided.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new test file, placement_parameters_test.dart, to verify the behavior of doc comments placed inside or before parameter lists for functions, constructors, methods, and operators. The feedback suggests a valuable performance optimization: combining test cases that share identical library setups. Since booting a package with the analyzer is a heavy operation, merging these tests to assert both parent and parameter documentation in a single run will significantly speed up the test suite.

Comment on lines +74 to +96
/// Check that doc comments placed before parameters of a top-level function
/// are not ignored.
/// See https://github.com/dart-lang/dartdoc/issues/1259
void test_functionParameters2() async {
var library = await bootPackageWithLibrary('''
void foo(/// Line 1
int x, [
/// Line 2
int y = 0]) {}

void bar({
/// Line 3
int x = 0,
/// Line 4
required int y}) {}
''');
var foo = library.functions.named('foo');
expect(foo.parameters.named('x').documentation, 'Line 1');
expect(foo.parameters.named('y').documentation, 'Line 2');
var bar = library.functions.named('bar');
expect(bar.parameters.named('x').documentation, 'Line 3');
expect(bar.parameters.named('y').documentation, 'Line 4');
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This test case can be removed as its assertions have been merged into test_functionParameters.

@sgrekhov
sgrekhov requested review from eernstg and szakarias October 23, 2026 10:22
Comment on lines +50 to +51
expect(foo.parameters.named('x').documentation, 'Line 1');
expect(foo.parameters.named('y').documentation, 'Line 2');

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not what the spec says: parameters should be documented in prose in the method's or constructor's doc comment. So we should assert isEmpty here (and in the other tests), but that fails for now. Could you split the parameter assertions into separate tests marked @FailingTest (so the passing foo.documentation checks stay unaffected), and drop the header note? I'll fix dartdoc and flip them.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated. PTAL.

@sgrekhov
sgrekhov requested a review from szakarias October 28, 2026 13:32
@szakarias
szakarias merged commit cb1b1b2 into dart-lang:main Nov 2, 2026
19 checks passed
copybara-service Bot pushed a commit to dart-lang/sdk that referenced this pull request Nov 12, 2026
Revisions updated by `dart tools/rev_sdk_deps.dart`.

dartdoc (https://github.com/dart-lang/dartdoc/compare/2f6847b..03ec6df):
  03ec6df6  Thu Nov 5 11:12:45 2026 +0200  Sergey G. Grekhov  Add tests for type parameters (dart-lang/dartdoc#4308)
  14a91302  Tue Nov 3 04:24:32 2026 +0100  Moritz  Migrate to ecosystem health publish check and setup-dart publish workflow (dart-lang/dartdoc#4310)
  cd8bf52c  Mon Nov 2 14:19:25 2026 +0100  Sigurd Meldgaard  Support standalone AOT compilation and embed resources in html_resources.g.dart (dart-lang/dartdoc#4298)
  cb1b1b2f  Mon Nov 2 14:39:28 2026 +0200  Sergey G. Grekhov  Add tests for parameters (dart-lang/dartdoc#4304)
  07506415  Mon Nov 2 12:14:22 2026 +0100  dependabot[bot]  Bump the github-actions group across 1 directory with 3 updates (dart-lang/dartdoc#4311)
  494aec7f  Mon Nov 2 12:14:05 2026 +0100  Sarah Zakarias  Add a "Documentation inherited from" note to inherited doc comments (dart-lang/dartdoc#4309)
  527502a9  Mon Nov 2 11:21:46 2026 +0100  Sarah Zakarias  Give the mock SDK the version of the SDK running the tests (dart-lang/dartdoc#4312)

http (https://github.com/dart-lang/http/compare/1f869d0..4646fe6):
  4646fe6  Thu Nov 5 02:41:04 2026 +0530  Chandra ObulaReddy  [http] Don't throw in RetryClient when `when` has read the response stream (dart-lang/http#2040)

native (https://github.com/dart-lang/native/compare/1838637..6287745):
  6287745ca  Thu Nov 5 20:37:11 2026 +0800  Dz  [hooks_runner] Fix UTF-8 decoding of hook output on Windows (dart-lang/native#3772)
  0eada93f9  Thu Nov 5 19:18:09 2026 +0800  Dz  [native_toolchain_c] Decode vswhere UTF-8 output correctly on Windows (dart-lang/native#3773)

Change-Id: If15b14dac054320ded19f0633a71b77463b9b718
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/574640
Auto-Submit: Nate Bosch <[email protected]>
Commit-Queue: Nicholas Shahan <[email protected]>
Reviewed-by: Nicholas Shahan <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants