Closed kevmoo closed 6 years ago
I'm working on the conversion of all of the component tests for all the Angular example apps. That would certainly be a good basis for validation. I can post here once I'm done.
Awesome!
On Mon, May 14, 2018 at 4:46 PM Patrice Chalin notifications@github.com wrote:
I'm working on the conversion of all of the component tests for all the Angular example apps. That would certainly be a good basis for validation. I can post here once I'm done.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/google/pageloader/issues/130#issuecomment-388997508, or mute the thread https://github.com/notifications/unsubscribe-auth/AABCilT2FvJGkXMwDWJq5DSYkfRIF-Gbks5tyhdegaJpZM4T-ldW .
The pageloader-builder-generated *.g.dart
files get written to the original source folder. Can we ensure that they are instead saved where ever the Angular *.template.dart
files are saved (which includes the build output folder when it is specified)?
Maybe this has to do with the use of part of "foo.g.dart"
. That is another thing that Angular is able to avoid. It is a lot more convenient to be able to import "foo.g.dart" as bar
to avoid errors from tools even when the .g.dart file isn't present.
cc @natebosch @kwalrath
Btw, how about releasing 3.0.0-alpha first. That way I'll be able to pickup the package from pub, and be able to test links into the API docs.
how about releasing 3.0.0-alpha first
@chalin – are you ready for an alpha release? Does the code as-is seem to work?
The pageloader-builder-generated .g.dart files get written to the original source folder. Can we ensure that they are instead saved where ever the Angular .template.dart files are saved (which includes the build output folder when it is specified)?
Maybe this has to do with the use of part of "foo.g.dart". That is another thing that Angular is able to avoid. It is a lot more convenient to be able to import "foo.g.dart" as bar to avoid errors from tools even when the .g.dart file isn't present.
It's technically possible for users to avoid writing the factory MyPO.create(PageLoaderElement context)
in the boilerplate to avoid the need for part
directive. Then the user can do something like:
import 'my_po.g.dart';
// ...
final po = new $MyPO.create(context)
If we emulate something similar as: import "foo.g.dart" as bar
similar to how *.template.dart
does it, that could also theoretically work, but the way I see it - having to always remember to add a bar
prefix to use the PageObject is about the same level of annoyance of having to write a single part
directive at the top of the page object dart file.
For the alpha release, I think we can stay with this style.
Btw, how about releasing 3.0.0-alpha first. That way I'll be able to pickup the package from pub, and be able to test links into the API docs.
I'm currently working on some fixes flagged internally that would be issues with Dart 2. I'll submit this pull request sometime today as well as a small feature request regarding matchers. Once done, I think we can release the alpha
.
I'm ok with sticking to this approach for the alpha release. I'd prefer using import ... as po
for the release after that.
bar prefix to use the PageObject is about the same level of annoyance of having to write a single part directive at the top of the page object dart file.
The main problem with the workflow when using the part
approach is that the IDE complains about $MyPO.create(...)
until I'm able to successfully build at least once. It is easier to use import
foo_po.g.dartas po;
along with uri_has_not_been_generated
set to ignore to silence the IDE false errors.
Status update for today: I've successfully converted 5 of the 7 example app projects that have component tests. The one with the largest test suite is toh-5: you can see the file changes in this commit (or view the entire PR). I'll complete the conversion tomorrow.
Btw, it's great to be able to drop the unnecessary async-ness!
Status update: all projects have been successfully converted to use pageloader 3-dev (albeit with a dependency_override
for the example using ACX -- for details, see https://github.com/dart-lang/angular_components/issues/263.)
@mk13 – are we ready to call beta here?
I'm finishing up one more requested feature, then we can announce the beta. ETA sometime this week.
Released! The next release will be v3.0.0. Some upcoming key changes will be:
@CheckTag
. Makes it less reliant on string literals and therefore less prone to errors due to typos.mousemove
, mouseup
, and mousedown
. Future version will support events such as mouseleave
, mouseout
, etc.
Any there specific items we should validate before we release?
Sanity check w/ @chalin ?
CC @mk13
Let's make sure to discuss before we do this...