Skip to content

start work on a testing plan for devtools #5

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

Merged
merged 4 commits into from
Aug 30, 2018

Conversation

devoncarew
Copy link
Member

A rough draft of a testing plan for this project. I'd expect to use package:test to write tests, and each test would have the setup described in the markdown file. Comments welcome, and I'll work on adding an actual test as part of this PR.

@jacob314 @DanTup

@DanTup
Copy link
Contributor

DanTup commented Aug 22, 2018

Plan LGTM (though sounds like you're not ready to merge if you're going to add a test).

@devoncarew
Copy link
Member Author

Yup, I'd like to try and get one test in, then iterate on that - add one or two more, and make sure that the common parts of the tests are abstracted out a bit (build the framework once we have a better idea of what the tests will look like).

@devoncarew
Copy link
Member Author

OK, this PR now contains the integration testing framework and the first two integration tests.

test 1: start the devtools app and verify that you can switch pages
test 2: start the devtools app; start a fixture app; connect to the fixture app from devtools; switch to the 'logs' page in devtools; clear the log data; cause the fixture app to emit a message which should show up in the log view; verify that the devtools log page does show the log message

Ready for review; comments welcome. After landing, I'll follow up with a PR that runs the tests on travis (they just run via pub run test, but do need to be able to locate a copy of chrome, and need either a headed environment, or for chrome to run headlessly).


void main() {
log('starting app');
print('starting app');
Copy link
Contributor

Choose a reason for hiding this comment

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

can the print calls be removed?

Copy link
Member Author

Choose a reason for hiding this comment

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

I'd like to keep them just for the sake of making it easier to debug this app in some circumstances.


//const String defaultPath = '/Applications/Google Chrome.app';
const String defaultPath = '/Applications/Google Chrome Canary.app';
//const String bundlePath = 'Contents/MacOS/Google Chrome';
Copy link
Contributor

Choose a reason for hiding this comment

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

I assume you meant to leave it at Chrome not Canary before checkin?

Copy link
Member Author

Choose a reason for hiding this comment

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

Yup! Will update.

WipConnection get wipConnection => _wip;
}

// TODO(devoncarew): I'm not sure this class is necessary.
Copy link
Contributor

Choose a reason for hiding this comment

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

probably remove this class.

Copy link
Member Author

Choose a reason for hiding this comment

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

will do

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.

3 participants