A developer is mandatory, your name is as good as any?

Tom


On 13-11-2014 22:06, Benjamin Gudehus wrote:
@Tom Thanks for the patch. Will apply it soon.
Is there something like a package maintainer field for Maven? I think
developer is a bit too pompous; I didn't touch the code.

On Thu, Nov 13, 2014 at 10:01 PM, Benjamin Gudehus <hasteb...@gmail.com>
wrote:

Hi Neil!

The TestFX library is still moving the Windows mouse!
TestFX is using Awt's robot. This robot ignores Glass/Monocle and controls
the OS's cursor.
We need to replace it with Glass' robot. I already tested it and it works
fine.
PR will be ready soon. This PR will also replace the Awt screenshot
mechanism with the one
from the Glass robot. I hoped that this will also take screenshots wenn
running in headless mode.
But unfortunately the screenshots were empty. I saw in Monocle's source
code, that it writes
color values into an internal byte stream, so it actually should work.

Also very nice to see, that people are using bleeding edge version of
TestFX. :)
TestFX will also have better Spock/Groovy support in the future.

--Benjamin


On Thu, Nov 13, 2014 at 9:38 PM, <ngalarn...@abinitio.com> wrote:

Hi Benjamin,

We are using Spock for testing, and have modified the setupStage() method
to support optional headless testing with Monocle,
which is working well on Windows (the code is in groovy):

  void setupStage(Closure<javafx.scene.Node> rootNodeFactory)
   {
     if (fx == null && isHeadless)
     {
       // Cribbed from:
https://gist.github.com/hastebrot/cbca1128dd791966e3a6
       PlatformFactory.instance = new MonoclePlatformFactory()
       NativePlatformFactory.platform = new HeadlessPlatform()
     }
     fx = new GuiTest()
     fx.rootNodeFactory = rootNodeFactory
     fx.setupGuiTest()
   }

It works nicely until fx.clickOn is called. The TestFX library is still
moving the Windows mouse!

Any thoughts?


Thanks,

Neil




From:        Benjamin Gudehus <hasteb...@gmail.com>
To:        Tom Eugelink <t...@tbee.org>,
Cc:        "openjfx-dev@openjdk.java.net" <openjfx-dev@openjdk.java.net>
Date:        11/12/2014 03:10 AM
Subject:        Re: Monocle in 8u25
Sent by:        "openjfx-dev" <openjfx-dev-boun...@openjdk.java.net>
------------------------------



That would be nice, Tom.

Example usage:

Since com.sun.glass.ui.PlatformFactory can't find Monocle classes from the
external jars, we need to change

public static void main(String[] appArgs) {
    Application.launch(appClass, appArgs);
}

to

public static void main(String[] appArgs) {
    new ToolkitApplicationLauncher().launch(appClass, appArgs);
}

and start the Application with -Djavafx.monocle.headless=true.

ToolkitApplicationLauncher.jar:
https://gist.github.com/hastebrot/cbca1128dd791966e3a6


On Wed, Nov 12, 2014 at 8:48 AM, Tom Eugelink <t...@tbee.org> wrote:

  I can roll it out under the same name (openjfx-monocle-1.8.0_20) within
the org.jfxtras group. Just say so.

Tom


On 12-11-2014 08:30, Benjamin Gudehus wrote:

    Hi all!

  Files and instructions are available at
https://github.com/TestFX/Monocle
.

  Releases with jars: https://github.com/TestFX/Monocle/releases

  License (taken from OpenJFX respository):
https://github.com/TestFX/Monocle/blob/master/LICENSE

  Would be nice to have this available from Maven.

  --Benjamin

On Wed, Nov 5, 2014 at 8:20 PM, Tom Eugelink <t...@tbee.org> wrote:

This is extremely good news. I have no problem to "drag" that library
along in the JFXtras project (project name seems to be a good match for
this usage ;-) and release it to maven - if that is allowed by the
JavaFX
license.

Tom



On 5-11-2014 16:57, Benjamin Gudehus wrote:

Hi Sean,

I've put the Monocle sources directly in my code directories for
testing purposes. Putting it into a separate Jar is possible and I
thought that pre-compiled jars could be provided via Maven.

I didn't do a complete OpenJFX build, because I was only interested in
the Headless component of Monocle, i.e. I didn't needed the
platform-dependent dynamic libraries.

Rough instructions were given in a previous mail. There were some
request to provide the pre-compoile jars so I will additionally set up
a public repository with detailed instructions when I'm back home.

--Benjamin

On 11/5/14, Sean True <sean.t...@gmail.com> wrote:

Did you build the glass/ui/monocle sources into a separate jar, or
did
you
do a complete OpenJFX build?

If you did a separate build, a recipe would be extremely helpful.

-- Sean

On Tue, Nov 4, 2014 at 6:17 PM, Benjamin Gudehus <
hasteb...@gmail.com>
wrote:

  I managed to run Monocle/Headless on Windows with 8u25. This will
allow
users to run headless tests.

All what is needed is to copy all files from
"com/sun/glass/ui/monocle"
of
"javafx-src.zip" and add the
cursor resource files from
"modules/graphics/src/main/resources/com/sun/glass/ui/monocle" of
the
related hg tag in the OpenJFX repository [1].

Before Application#launch() is called we need to manually set the
Glass
and
Monocle platforms:

accessStaticField(com.sun.glass.ui.PlatformFactory.class,
"instance",
      new com.sun.glass.ui.monocle.MonoclePlatformFactory());

accessStaticField(com.sun.glass.ui.monocle.NativePlatformFactory.class,
"platform",
      new com.sun.glass.ui.monocle.headless.HeadlessPlatform());

The directory structure in 8u40 is a bit different, but there could
be
added version checks. Checking
for the JVM vars "glass.platform" and "monocle.platform" might be
also
added to this code.

[1] http://hg.openjdk.java.net/openjfx/8u-dev/rt/tags


On Tue, Nov 4, 2014 at 8:42 PM, Benjamin Gudehus <
hasteb...@gmail.com>
wrote:

  Hmm. Seems that Class.forName() in com.sun.glass.ui.PlatformFactory
won't
retrieve externally defined PlatformFactorys. So I will try to set
the
PlatformFactory.instance field manually, before the
Application/Tookit/FX-Thread is launched.

On Tue, Nov 4, 2014 at 7:36 PM, Benjamin Gudehus <
hasteb...@gmail.com
wrote:

  Thank you. That makes it clearer. :)
Is it possible to supply the headless part of Monocle in an
external
Jar
for desktop platforms?

As far as I know the only possibility to run TestFX tests with
Hudson/Jenkins is in headless mode.
TestFX's tests itself can only run with the X virtual framebuffer
on
Linux test clients for the Travis CI so far.

So far the only advice I could give TestFX users who like to run

  headless
  tests is to use 1.8.0_20-ea-b05.



NOTICE *from Ab Initio: This email (including any attachments) may
contain information that is subject to confidentiality obligations or is
legally privileged, and sender does not waive confidentiality or privilege.
If received in error, please notify the sender, delete this email, and make
no further use, disclosure, or distribution. *



Reply via email to