Skip to content

Build Arduino IDE and run tests on GitHub-hosted runners #9696

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 3 commits into from
Feb 6, 2020

Conversation

tlk
Copy link
Contributor

@tlk tlk commented Jan 31, 2020

I noticed some Arduino IDE tests were failing when I ran them (fx #9695).

This PR increases visibility of existing tests by building the Arduino IDE and running Arduino IDE tests automatically on the GitHub platform.

Background: A GitHub-hosted runner is a virtual machine hosted by GitHub with the GitHub Actions runner application installed. This makes it possible to build and run Arduino tests automatically.

https://help.github.com/en/actions/automating-your-workflow-with-github-actions/virtual-environments-for-github-hosted-runners

tlk added 3 commits January 31, 2020 12:52
A GitHub-hosted runner is a virtual machine hosted by GitHub with the GitHub
Actions runner application installed.
The GitHub-hosted runner is a virtual machine hosted by GitHub.

Xvfb on that setup defaults to a virtual screen size of 640x480
(XVFBARGS='-screen 0 640x480x16') which in turn makes the Arduino user
interface tests fail with exceptions like this:

    [junit] org.fest.swing.exception.ActionFailedException: The component to click is out of the boundaries of the screen
    [junit] 	at org.fest.swing.exception.ActionFailedException.actionFailure(ActionFailedException.java:33)
    [junit] 	at org.fest.swing.core.RobotEventGenerator.pressMouse(RobotEventGenerator.java:74)

Setting the xvfb screen size to 1024x768 solves this error.
@cmaglie
Copy link
Member

cmaglie commented Feb 6, 2020

Coool! There is a way to try this before merging?

@cmaglie cmaglie self-assigned this Feb 6, 2020
@cmaglie cmaglie added the Type: Improvement This proposal is considered to be especially beneficial label Feb 6, 2020
@cmaglie
Copy link
Member

cmaglie commented Feb 6, 2020

Ok I found it: just pushed to a branch on arduino/Arduino: https://github.com/arduino/Arduino/runs/429535956?check_suite_focus=true

I see that the tests are failing but there is still a green light? Should it be marked as failed?

BTW great work! This will surely improve the workflow.

I'm wondering if we could run the same on Windows and Mac virtual gh-hosted envs?

@cmaglie cmaglie merged commit b4e5a8f into arduino:master Feb 6, 2020
@cmaglie cmaglie added this to the Release 1.8.12 milestone Feb 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Improvement This proposal is considered to be especially beneficial
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants