Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update dartdoc_test #239

Merged
merged 3 commits into from
Jun 3, 2024
Merged

update dartdoc_test #239

merged 3 commits into from
Jun 3, 2024

Conversation

takumma
Copy link
Contributor

@takumma takumma commented May 31, 2024

No description provided.

import 'package:analyzer/file_system/physical_file_system.dart';
import 'package:path/path.dart';

class CompositeResourceProvider implements ResourceProvider {
Copy link
Member

Choose a reason for hiding this comment

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

I'd consider just using the OverlayResourceProvider on top of PhysicalResourceProvider.

Because if you get a Folder object from the memoryProvider, then calling getChild might not return the correct result.

Correctly wrapping a ResourceProvider is not easy, if you want to try you can dive into the implementation for OverlayResourceProvider. But just using OverlayResourceProvider is probably fine. We don't need to inject many files anyways :D

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I replace it to just use OverlayResourcceProvider. I believe a single resourceProvider instance should be shared within dartdoc_test, but I'm not sure if analysisContext or session should be share as well... I think I need to understand the package:analyzer and anlysis process.

@jonasfj jonasfj marked this pull request as ready for review June 3, 2024 11:27
@jonasfj jonasfj merged commit 5ca5135 into google:dartdoc_test Jun 3, 2024
15 of 18 checks passed
jonasfj added a commit that referenced this pull request Aug 28, 2024
* Initial dartdoc_test packages with some hacks

* Update CI configuration

* update dartdoc_test (#239)

* add more examples and fix extracting

* code splitting and print code samples and it's location.

* set overlay of sample code and update dart sdk

* [dartdoc_test] add extractor tests and wrap code with imports (#241)

* add test

* fix

* add import

* fix indent

* move to getter

* fix for ci

* fix sdk version

* fix

* [dartdoc_test] add documentation samples analyzer (#242)

* implement analyze and output samples to .dartdoc_test directory

* add CRLF/LF line breaks tests

* add license headers to all files

* add documentation and some modified

* fix extractor test and add TestContext

* update to make analyzer work

* translate original span from sample file span

* make DartDocTestContext to singleton no longer

* add example dart project

* add write options to write sample code to file (for debug)

* updated README. minor fixes

* add new analyzer test

* update example README

* update README, add .gitignore for .dartdoc_test, and create add subcommand to generate test file

* fix

* rename DartDoc -> Dartdoc

* fix extractor and add tests

* fix span translation and add test

* add CommandRunner and make some commands to subCommand

* fix

* fix analyzer and ignore warning

* fix print of analyze results

* create integration test

* [dartdoc_test] implement good logging! (#245)

* move some codes to src/

* set analyze to default command, and print usage when -h flag is set

* remove extract command and fix integration_test

* add logger and varbose option

* add test for verbose

* fix log

* move log to Command

* [dartdoc_test] implement Reporter (#247)

* create logger class

* add summary log

* move command

* create reporter

* fix

* add ansi and fix extractor to allow code blocks with no specified language

* add output directory option

* add extractor test

* import and print relative path

* fix format

* apply review suggestions and update Reporter

* update reporter

* use stdout reporter

* allow analyze command options in default command

* add integration test for runDartdocTest()

* update report to print relative path

* fix to work test reporter in example directory

* fix

* [dartdoc_test] add some ways to ignore analysis (#248)

* implement code sample ignoring

* add comments

* fix ignoring and test

* update documentations

* add exclude option

* fix summary and make ReporterForTest use verbose flag

* move models to model.dart

* only run integration test on ./example

* do not wrap code samples with main() when code sample includes main()

* fix

* rename code sample output directory

* add doc comments

* update ignoring to use code block tagging (dart#no-test)

* add public member documentations

* fix

* switch default output directory to

* update CHANGELOG

* fix to make some class to final

* remove Reporter constructor, add some comments, and some fixes

* add missing doc comment

* fix output code

* fix for ci

* fix readme

---------

Co-authored-by: takumma <[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