Skip to content
This repository was archived by the owner on Apr 12, 2024. It is now read-only.

chore: completely remove the ng scenario runner #15931

Merged
merged 3 commits into from
Dec 14, 2017

Conversation

Narretz
Copy link
Contributor

@Narretz Narretz commented Apr 21, 2017

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Removes the deprecated scenario runner (protractor ancestor)

Closes #9405

TODO:

  • remove / adjust doc info about the scenario runner
  • document browserTrigger as part of ngMock (where it has been moved to)
  • move scenario runner to stand-alone repo (community) before removing it from core? - removing it means no more updates to npm / bower, which could hurt people's build process

Please check if the PR fulfills these requirements

Other information:

@Narretz Narretz added this to the Ice Box milestone Apr 21, 2017
@Narretz Narretz modified the milestones: Ice Box, 1.7.0 Nov 2, 2017
@Narretz Narretz force-pushed the chore-remove-scenario branch from 3887cbe to 74141de Compare November 3, 2017 16:59
* @param {Object=} eventData An optional object which contains additional event data (such as x,y
* coordinates, keys, etc...) that are passed into the event when triggered
* coordinates, keys, etc...) that are passed into the event when
* triggered.
Copy link
Member

Choose a reason for hiding this comment

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

Do changes in this file belong in this PR?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It's just a little improvement on the formatting, doesn't hurt, right? 😅 Or do you mean browserTrigger docs in general? We moved bT before in preparation of the scenario runner removal, but never documented it,

Copy link
Member

Choose a reason for hiding this comment

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

Shouldn't we be more specific about what properties are supported in eventData what they are used for?

@@ -67,7 +67,7 @@ function Browser(window, document, $log, $sniffer) {

/**
* @private
* Note: this method is used only by scenario runner
* Note: this method is used only by protractor / scenario runner
Copy link
Member

Choose a reason for hiding this comment

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

Is protractor really using this? I think it uses testability.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Testability.whenStable calls this function

Copy link
Member

Choose a reason for hiding this comment

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

I know, but this comment does not belong here. For example, we have discussed in the past that we should make Testability public, which means that anyone could use whenStable(). And if we do that, it is very unlikely that someone will remember to update this comment.

If we want to have such a comment, it should be on whenStable() imo.

* @param {Object=} eventData An optional object which contains additional event data (such as x,y
* coordinates, keys, etc...) that are passed into the event when triggered
* coordinates, keys, etc...) that are passed into the event when
* triggered.
Copy link
Member

Choose a reason for hiding this comment

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

Shouldn't we be more specific about what properties are supported in eventData what they are used for?

@@ -938,8 +938,6 @@ function $LocationProvider() {
// update location manually
if ($location.absUrl() !== $browser.url()) {
$rootScope.$apply();
// hack to work around FF6 bug 684208 when scenario runner clicks on links
$window.angular['ff-684208-preventDefault'] = true;
Copy link
Member

Choose a reason for hiding this comment

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

@Narretz Narretz force-pushed the chore-remove-scenario branch from 74141de to 95400c3 Compare December 8, 2017 11:41
@Narretz
Copy link
Contributor Author

Narretz commented Dec 8, 2017

  • removed the comment in $browser
  • removed the workaround for Firefox in browserTrigger.
  • updated eventData with more info. It's still not perfect, because we use different event creation paths for different browsers / events, but it's better than nothing (since we had no docs before).

The fixup is actually wrong, the FF removal is diffeent from the docs

Copy link
Member

@gkalpak gkalpak left a comment

Choose a reason for hiding this comment

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

I love the docs :heart:
LGTM (with a couple of nits/suggestions) 👍

* - `y`: y-coordinates for [MouseEvent](https://developer.mozilla.org/docs/Web/API/MouseEvent)
* and [TouchEvent](https://developer.mozilla.org/docs/Web/API/TouchEvent).
*
* - `relatedTarget`: the related target for
Copy link
Member

Choose a reason for hiding this comment

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

Maybe also link to MouseEvent.relatedTarget.

*
* - `cancelable`: [Event.cancelable](https://developer.mozilla.org/docs/Web/API/Event/cancelable).
* Not applicable to all events.

Copy link
Member

Choose a reason for hiding this comment

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

Missing * 😃

Copy link
Member

Choose a reason for hiding this comment

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

Maybe also mention keyCode, charCode and which for key* events.

@Narretz Narretz force-pushed the chore-remove-scenario branch 2 times, most recently from 000644c to 48d1b2e Compare December 11, 2017 18:33
The runner has been deprecated and undocumented since 2014:
See commit 8d6d126899d4b1927360599403a7592011243270

Closes angular#9405

BREAKING CHANGE:

The angular scenario runner end-to-end test framework has been
removed from the project and will no longer be available on npm
or bower starting with 1.7.0.
It was deprecated and removed from the documentation in 2014.
Applications that still use it should migrate to
[Protractor](http://www.protractortest.org).
Technically, it should also be possible to continue using an
older version of the scenario runner, as the underlying APIs have
not changed. However, we do not guarantee future compatibility.
@Narretz Narretz force-pushed the chore-remove-scenario branch from 48d1b2e to 23087b5 Compare December 13, 2017 18:22
@Narretz Narretz merged commit 7df2952 into angular:master Dec 14, 2017
@Narretz Narretz deleted the chore-remove-scenario branch December 14, 2017 10:50
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

chore(scenarioRunner): do not publish updates to bower/npm
4 participants