Skip to content

Commit

Permalink
Merge pull request #27 from eficode/development
Browse files Browse the repository at this point in the history
0.5.3 release
  • Loading branch information
sampeson authored Nov 11, 2019
2 parents 2f0c84b + 63e70f1 commit 33e87f9
Show file tree
Hide file tree
Showing 22 changed files with 421 additions and 264 deletions.
15 changes: 8 additions & 7 deletions AUTHORS.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
Core contributors:
Jukka Haavisto 2017 -
Sami Pesonen 2017 -
Pasi Saikkonen 2017 -
Jukka Haavisto 2017 -
Sami Pesonen 2017 -
Pasi Saikkonen 2017 -

Other contributors:
Tatu Lahtela Find All With Pseudo Class and Find Class keywords
Sakari Hoisko Dockerized linux env with X
Juho Lehtonen Optimized docker environment.
Juho Saarinen Package improvements
Tatu Lahtela Find All With Pseudo Class and Find Class keywords
Sakari Hoisko Dockerized linux env with X
Juho Lehtonen Optimized docker environment.
Juho Saarinen Package improvements, initial monocle support, screenshot bug fix

10 changes: 7 additions & 3 deletions BUILD.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ JavaFXLibrary uses Apache Maven as a build tool.
are being used by both JavaFXLibrary and the AUT. It's not uncommon that a specific version is needed for AUT and another
version of the same dependency is required for JavaFXLibrary(e.g. TestFX dependency for Google Guava). Not always are these
dependencies backwards compatible and therefore JavaFXLibrary has adopted Apache Maven Shade Plugin to cope with this issue.
Currently the package com.google.common has been renamed in JavaFXLibrary as shaded.com.google.common to avoid version
mismatches with Google Guava dependencies. See https://maven.apache.org/plugins/maven-shade-plugin/ for more info.
Currently the package com.google.common has been renamed in JavaFXLibrary as shaded.com.google.common and org.apache.commons as shaded.org.apache.commons to avoid version
mismatches with dependencies in AUT and internally. See https://maven.apache.org/plugins/maven-shade-plugin/ for more info.


## Releasing
Expand Down Expand Up @@ -58,8 +58,12 @@ JavaFXLibrary uses Apache Maven as a build tool.
</settings>
````
* Release snapshot or actual release (depending what is in version tag in pom.xml)``mvn clean deploy -P release``
* In case of release log in to https://oss.sonatype.org:
* from left choose `Staging repositories` and scroll down, choose `robotframework-*` repository and review
* choose from top toolbar `Release`, add to reason field `x.y.z release` and submit
* sync takes typically hours before visible in Maven Central
* snapshots can be found from https://oss.sonatype.org/content/repositories/snapshots/org/robotframework/javafxlibrary/
* actual releases can be found from https://search.maven.org/ and typing `javafxlibrary` in the search field.
* actual releases can be found from https://search.maven.org/ and typing `javafxlibrary` in the search field.

## Announcements

Expand Down
33 changes: 30 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@ JavaFXLibrary works with both Jython (local and remote use) and Python (remote o
JavaFXLibrary is tested to work with Robot Framework 3.0.2 or later.

## Keyword documentation
See keyword [documentation](https://eficode.github.io/JavaFXLibrary/javafxlibrary.html).
See keyword [documentation](https://repo1.maven.org/maven2/org/robotframework/javafxlibrary/0.5.3/javafxlibrary-0.5.3.html).

For editors (IDEs) keyword documentation can be obtained from [here](https://repo1.maven.org/maven2/org/robotframework/javafxlibrary/0.5.3/javafxlibrary-0.5.3.xml).

## Taking the library into use
### As a local library
Expand All @@ -17,7 +19,7 @@ See keyword [documentation](https://eficode.github.io/JavaFXLibrary/javafxlibrar
*** Settings ***
Library JavaFXLibrary
```
3. Add library jar to Jython [module search path](http://robotframework.org/robotframework/3.0b1/RobotFrameworkUserGuide.html#configuring-where-to-search-libraries-and-other-extensions) and run your tests:
3. Add library jar to Jython [module search path](http://robotframework.org/robotframework/3.1.2/RobotFrameworkUserGuide.html#configuring-where-to-search-libraries-and-other-extensions) and run your tests:
```
jython -J-cp javafxlibrary-<version>.jar -m robot.run tests.robot
```
Expand Down Expand Up @@ -70,4 +72,29 @@ Library's acceptance test suite can be used as a JavaFXLibrary demo. Running the

Executing _test.sh_ runs the acceptance suite twice: first using JavaFXLibrary as a local Robot Framework library on Jython, and after that using the library in remote mode executing the same tests on python version of Robot Framework.

If you want the suite to run only once, you can define which type of library to use by including **local** or **remote** as an argument. For example command `test.sh remote` will execute the suite only in remote mode.
If you want the suite to run only once, you can define which type of library to use by including **local** or **remote** as an argument. For example command `test.sh remote` will execute the suite only in remote mode.

## Experimental: Headless support
Library supports headless operation utilizing [Monocle](https://wiki.openjdk.java.net/display/OpenJFX/Monocle). The support for this is still at experimental level.

### Main issues with headless function
* Scrolling doesn't work same way as with screen
* "Tick" (amount of scrolling) is much smaller in headless than normally
* Vertical (left/right) scrolling is not working
* Separate app windows' can't be closed (unless app offers that functionality itself)
* Swing applications can't be tested in headless mode.

### Enabling headless mode
Headless mode can be enabled by setting first library initialization to "True".

Locally:
```
*** Settings ***
Library JavaFXLibrary ${True}
```

Remote:
```
*** Settings ***
Library Remote http://127.0.0.1:8270 ${True} WITH NAME JavaFXLibrary
```
1 change: 1 addition & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ services:
- testapp
environment:
- RESOLUTION=1920x1080
- X11VNC_ARGS=-multiptr

javafxcompile:
build:
Expand Down
7 changes: 6 additions & 1 deletion docker/robot-javafx-demo/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,12 @@ RUN apt-get -qq update && apt-get dist-upgrade -y && apt-get install -qq --no-i
python-setuptools \
wget \
openjdk-8-jre \
openjfx \
# Install older version of openjfx, current version is incompatible with openjdk8
# Bug ticket: https://bugs.launchpad.net/ubuntu/+source/openjfx/+bug/1799946
openjfx=8u161-b12-1ubuntu2 \
libopenjfx-java=8u161-b12-1ubuntu2 \
libopenjfx-jni=8u161-b12-1ubuntu2 \
openjfx-source=8u161-b12-1ubuntu2 \
&& apt-get clean && rm -rf /var/lib/apt/lists/*

COPY test.sh /bin/test.sh
Expand Down
19 changes: 10 additions & 9 deletions docs/javafxlibrary.html

Large diffs are not rendered by default.

Loading

0 comments on commit 33e87f9

Please sign in to comment.