From Fedora Project Wiki
No edit summary
Line 4: Line 4:


= Building standalone Integration Tests =
= Building standalone Integration Tests =
This only works for releases > 0.15.


  $ wget <nowiki>http://icedtea.wildebeest.org/download/thermostat/thermostat-<VERSION>.tar.gz</nowiki>
  $ wget <nowiki>http://icedtea.wildebeest.org/download/thermostat/thermostat-<VERSION>.tar.gz</nowiki>
Line 13: Line 11:
  $ java -Dcom.redhat.thermostat.itest.thermostatHome=/usr/share/thermostat \
  $ java -Dcom.redhat.thermostat.itest.thermostatHome=/usr/share/thermostat \
         -Dcom.redhat.thermostat.itest.thermostatUserHome=$(mktemp -d thermostat.XXXXXXXXXX) \
         -Dcom.redhat.thermostat.itest.thermostatUserHome=$(mktemp -d thermostat.XXXXXXXXXX) \
        -Dthermostat.agent.verbose=true
         -cp $(ls integration-tests/standalone/target/thermostat-integration-tests-standalone-*.jar) \
         -cp $(ls integration-tests/standalone/target/thermostat-integration-tests-standalone-*.jar) \
         com.redhat.thermostat.itest.standalone.ItestRunner
         com.redhat.thermostat.itest.standalone.ItestRunner
Line 21: Line 20:


For example if those tests pass, bundles resolve for most (all?) thermostat one-off-commands. For more details have a look at the AllStandaloneTests class in the sources. At least this should give some confidence that packaged thermostat isn't terribly broken.
For example if those tests pass, bundles resolve for most (all?) thermostat one-off-commands. For more details have a look at the AllStandaloneTests class in the sources. At least this should give some confidence that packaged thermostat isn't terribly broken.
= Known Issues =
* Some tests depend on the log level for them to pass: See http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1594
* $THERMOSTAT_HOME is not writable, which makes PluginTest fail: See http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1595

Revision as of 12:02, 24 September 2015

Getting sources

Upstream Thermostat source releases can be downloaded from: http://icedtea.wildebeest.org/download/thermostat/

Building standalone Integration Tests

$ wget http://icedtea.wildebeest.org/download/thermostat/thermostat-<VERSION>.tar.gz
$ tar -xzf thermostat-<VERSION>.tar.gz
$ cd thermostat-<VERSION>
$ mvn clean package
$ java -Dcom.redhat.thermostat.itest.thermostatHome=/usr/share/thermostat \
       -Dcom.redhat.thermostat.itest.thermostatUserHome=$(mktemp -d thermostat.XXXXXXXXXX) \
       -Dthermostat.agent.verbose=true
       -cp $(ls integration-tests/standalone/target/thermostat-integration-tests-standalone-*.jar) \
       com.redhat.thermostat.itest.standalone.ItestRunner

The last step runs very basic integration tests against packaged thermostat. A summary of the test run can be found in the "thermostat-itest-reports" folder, file "summary.txt". Should there have been failed tests, there should be one file per test class with details about the test failures in the "thermostat-itest-reports" folder.

Why run those tests?

For example if those tests pass, bundles resolve for most (all?) thermostat one-off-commands. For more details have a look at the AllStandaloneTests class in the sources. At least this should give some confidence that packaged thermostat isn't terribly broken.