Merge lp:~zyga/checkbox/device-profiles into lp:checkbox
- device-profiles
- Merge into trunk
Status: | Work in progress |
---|---|
Proposed branch: | lp:~zyga/checkbox/device-profiles |
Merge into: | lp:checkbox |
Diff against target: |
278 lines (+177/-51) 3 files modified
plainbox/plainbox/impl/integration_tests.py (+106/-44) plainbox/plainbox/test-data/integration-tests/cpu/scaling_test.json (+11/-7) plainbox/plainbox/testing_utils/resource.py (+60/-0) |
To merge this branch: | bzr merge lp:~zyga/checkbox/device-profiles |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Checkbox Developers | Pending | ||
Review via email: mp+149016@code.launchpad.net |
Commit message
Description of the change
This branch (work-in-progress) adds a 'profile' for integration tests. The intent is to run only a subset of integration tests (which basically run checkbox jobs) depending on the class of the current machine.
In practice this still needs to evolve to have a way to specify the right profile (virtualbox, arm, etc)
- 1934. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 1935. By Brendan Donegan
-
Incremented version number.
- 1936. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] automatic merge by tarmac" - 1937. By Brendan Donegan
-
Bumped rev to 0.15.4 (0.15.3 is based on rev1930)
- 1938. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 1939. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 1940. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1941. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1942. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1943. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 1944. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1945. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 1946. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1947. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 1948. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 1949. By Zygmunt Krynicki
-
"[r=brendan-
donegan] [bug=][ author= zkrynicki] automatic merge by tarmac" - 1950. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1951. By Zygmunt Krynicki
-
vagrant: propagate exit code from test-in-vagrant.sh
Signed-off-by: Zygmunt Krynicki <email address hidden>
- 1952. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1953. By Daniel Manrique
-
Removed stray .moved file
- 1954. By Daniel Manrique
-
"[r=jeffmarcom][bug=1131598][author=roadmr] automatic merge by tarmac"
- 1955. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1956. By Jeff Marcom
-
"[r=roadmr][bug=1135832][author=
jeffmarcom] automatic merge by tarmac" - 1957. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 1958. By Daniel Manrique
-
Merged using udev to categorise network devices, by spineau
- 1959. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] Fix test_submission.py now that the udevadm parser detects devices using ID_MODEL_ FROM_DATABASE and ID_VENDOR_ FROM_DATABASE. " - 1960. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1961. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1962. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] Set the "only_changes" parameter default value to False in get_script_env()" - 1963. By Daniel Manrique
-
"[r=zkrynicki]
[bug=][ author= roadmr] automatic merge by tarmac" - 1964. By Zygmunt Krynicki
-
docs: add a warning to the front page
- 1965. By Daniel Manrique
-
Updated sources-list job to use multiple lists and repositories by brendand
- 1966. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1967. By Brendan Donegan
-
New version 0.15.5
- 1968. By Daniel Manrique
-
"[r=roadmr,
zkrynicki] [bug=][ author= roadmr] Added checkbox-specific tests for resource program syntax.
" - 1969. By Daniel Manrique
-
"[r=roadmr,
zkrynicki] [bug=][ author= roadmr] automatic merge by tarmac" - 1970. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] automatic merge by tarmac" - 1971. By Daniel Manrique
-
Merged ignoring of decode errors in udev_resource, by spineau
- 1972. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 1973. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 1974. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1975. By Jeff Lane
-
"[r=zkrynicki][bug=1149213][author=bladernr] automatic merge by tarmac"
- 1976. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 1977. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 1978. By Zygmunt Krynicki
-
"[r=zkrynicki,
brendan- donegan] [bug=][ author= zkrynicki] automatic merge by tarmac" - 1979. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=zkrynicki]
[bug=][ author= roadmr] automatic merge by tarmac" - 1980. By Sylvain Pineau
-
"[r=zkrynicki,
brendan- donegan] [bug=1065064][author= sylvain- pineau] Identify KVM devices as such to avoid reporting them as just CAPTURE devices" - 1981. By Zygmunt Krynicki
-
"[r=sylvain-
pineau, roadmr] [bug=][ author= zkrynicki] automatic merge by tarmac" - 1982. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1983. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1984. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 1985. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1986. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1987. By Zygmunt Krynicki
-
"[r=roadmr,
sylvain- pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 1988. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1989. By Brendan Donegan
-
"[r=zkrynicki][bug=1155325][author=
brendan- donegan] automatic merge by tarmac" - 1990. By Jeff Marcom
-
"[r=zkrynicki]
[bug=][ author= jeffmarcom] automatic merge by tarmac" - 1991. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1992. By Jeff Marcom
-
"[r=roadmr]
[bug=][ author= jeffmarcom] automatic merge by tarmac" - 1993. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1994. By Jeff Marcom
-
"[r=zkrynicki][bug=1155686][author=
jeffmarcom] automatic merge by tarmac" - 1995. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1996. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] XML exporter: Added support for attachments" - 1997. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1998. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 1999. By Zygmunt Krynicki
-
"[r=roadmr][bug=1157264][author=zkrynicki] automatic merge by tarmac"
- 2000. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2001. By Brendan Donegan
-
"[r=zkrynicki][bug=1157615][author=
brendan- donegan] automatic merge by tarmac" - 2002. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] Job Definition: Added support for the environ keys" - 2003. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] Vagrant Settings: Increase the default SSH timeout to 60s" - 2004. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2005. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=sylvain-
pineau] [bug=][ author= roadmr] automatic merge by tarmac" - 2006. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2007. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=zkrynicki,
cgregan] [bug=][ author= roadmr] automatic merge by tarmac" - 2008. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2009. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] Coverage: Exclude tests and vendor module from coverage" - 2010. By Daniel Manrique
-
Bumped changelog version to 0.15.6 and moved entries of changes made after 0.15.5 cutoff
- 2011. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2012. By Zygmunt Krynicki
-
"[r=brendan-
donegan] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2013. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2014. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2015. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2016. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=zkrynicki,
sylvain- pineau] [bug=][ author= roadmr] automatic merge by tarmac" - 2017. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2018. By Zygmunt Krynicki
-
"[r=roadmr,
zkrynicki] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2019. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2020. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2021. By Brendan Donegan
-
Fixed up changelog
- 2022. By Brendan Donegan
-
Bumped revision number
- 2023. By Zygmunt Krynicki
-
jobs: convert package resource programs to be compatible with plainbox
- 2024. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=zkrynicki]
[bug=][ author= roadmr] automatic merge by tarmac" - 2025. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2026. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2027. By Brendan Donegan
-
"[r=roadmr][bug=1164566][author=
brendan- donegan] automatic merge by tarmac" - 2028. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2029. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2030. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=roadmr,
zkrynicki] [bug=][ author= roadmr] automatic merge by tarmac" - 2031. By Jeff Lane
-
"[r=roadmr][bug=1165215][author=bladernr] automatic merge by tarmac"
- 2032. By Jeff Marcom
-
"[r=zkrynicki,
bladernr] [bug=1164028][author= jeffmarcom] automatic merge by tarmac" - 2033. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=zkrynicki]
[bug=][ author= roadmr] exporter: xml: generate output that can be read by checkbox parser." - 2034. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2035. By Daniel Manrique
-
"[r=zkrynicki]
[bug=][ author= roadmr] automatic merge by tarmac" - 2036. By Jeff Lane
-
"[r=zkrynicki][bug=1167214][author=bladernr] automatic merge by tarmac"
- 2037. By Zygmunt Krynicki
-
"[r=roadmr,
zkrynicki] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2038. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2039. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2040. By Brendan Donegan
-
"[r=brendan-
donegan] [bug=][ author= brendan- donegan] automatic merge by tarmac" - 2041. By Jeff Lane
-
"[r=zkrynicki][bug=1157606][author=bladernr] automatic merge by tarmac"
- 2042. By Brendan Donegan
-
Incremented changelog version
- 2043. By Jeff Lane
-
"[r=roadmr]
[bug=][ author= bladernr] automatic merge by tarmac" - 2044. By Daniel Manrique
-
Merged manual PXE and IPMI jobs by Jeff Lane
- 2045. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2046. By Brendan Donegan
-
"[r=zkrynicki][bug=1149288][author=
brendan- donegan] automatic merge by tarmac" - 2047. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] Added the Geeks3D GpuTest wrapper and related jobs
" - 2048. By Sylvain Pineau
-
debian/control: Added python3-mock as a build dependency.
- 2049. By Brendan Donegan
-
"[r=roadmr]
[bug=][ author= checkbox- dev] automatic merge by tarmac" - 2050. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=sylvain-
pineau] [bug=][ author= roadmr] flakes8-suggested fixes for transports code." - 2051. By Sylvain Pineau
-
debian/rules: Clean __pycache__ directory after running scripts unit tests.
- 2052. By Daniel Manrique
-
Corrected name of dependency package in job definition
- 2053. By Daniel Manrique
-
Two minor fixes to mobilebroadband job and create_connection script
- 2054. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2055. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2056. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2057. By Po-Hsu Lin
-
"[r=roadmr]
[bug=][ author= cypressyew] automatic merge by tarmac" - 2058. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2059. By Brendan Donegan
-
"[r=roadmr]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 2060. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2061. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2062. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=zkrynicki]
[bug=][ author= roadmr] A couple of fixes that cropped up during testing of sru, config file, and environment testing." - 2063. By Jeff Lane
-
"[r=roadmr]
[bug=][ author= bladernr] automatic merge by tarmac" - 2064. By Jeff Lane
-
"[r=roadmr][bug=1155619][author=bladernr] automatic merge by tarmac"
- 2065. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=zkrynicki]
[bug=][ author= roadmr] Adds support for specifying http{,s}_proxy in the config file and have the certification transport pick that up." - 2066. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=zkrynicki]
[bug=][ author= roadmr] This just adds a bunch of time calls to the vagrant testing scripts, so that we know where our bottlenecks are, and whether any fixes we make are actually making things faster." - 2067. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=roadmr]
[bug=][ author= roadmr] .desktop file changes: Terminal=false and using sh -c in Exec command so it can use redirection." - 2068. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2069. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] job: Consider any environment variable from the config object, not only those declared in the job's environ." - 2070. By Zygmunt Krynicki
-
"[r=roadmr,
apulido] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2071. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2072. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=zkrynicki]
[bug=][ author= roadmr] job.py: Removed a redundant "if", and added test for config variables from the environment that aren't declared in a job's environ." - 2073. By Daniel Manrique
-
Added submit to hexr checkbox, by brendand
- 2074. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=roadmr]
[bug=][ author= roadmr] A plainbox-finished upstart event is emitted when either the server or the desktop auto-started test-runs finish, and a plainbox-ci-mailer autostart job that responds to that event." - 2075. By Po-Hsu Lin
-
"[r=zkrynicki][bug=1172108][author=
cypressyew] automatic merge by tarmac" - 2076. By Daniel Manrique
-
Fixed changelog - apologies
- 2077. By Daniel Manrique
-
Reverted revno 2073 since it contains extraneous files
- 2078. By Brendan Donegan
-
"[r=roadmr]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 2079. By Brendan Donegan
-
Increment major version, tag rev2074 as 0.15.10 and include changes after that in new version entry in debian/changelog
- 2080. By Daniel Manrique
-
Merged suspend log after-the-fact checking by Jeff Lane
- 2081. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2082. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2083. By Daniel Manrique <Daniel Manrique <email address hidden>>
-
"[r=zkrynicki][bug=1059544][author=roadmr] Replaces alsasrc with autoaudiosrc, should help with a problem on systems with no alsasrc element."
- 2084. By Jeff Lane
-
"[r=zkrynicki][bug=1169488][author=bladernr] automatic merge by tarmac"
- 2085. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2086. By Jeff Marcom
-
"[r=roadmr]
[bug=][ author= jeffmarcom] automatic merge by tarmac" - 2087. By Jeff Lane
-
"[r=zkrynicki][bug=1065983][author=bladernr] automatic merge by tarmac"
- 2088. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2089. By Brendan Donegan
-
"[r=zkrynicki][bug=1173103][author=
brendan- donegan] automatic merge by tarmac" - 2090. By Daniel Manrique
-
"[r=zkrynicki]
[bug=][ author= roadmr] plainbox sru: Better handling of server return data, particularly to output the submission status URL if it's in the response" - 2091. By Brendan Donegan
-
Incremented version in changelog
- 2092. By Zygmunt Krynicki
-
"[r=zkrynicki][bug=1172835][author=roadmr] xml: Set OPTION_
WITH_COMMENTS so they get exported. Actually set the comment when a job has OUTCOME_ NOT_SUPPORTED. " - 2093. By Jeff Lane
-
"[r=roadmr][bug=1078897][author=bladernr] automatic merge by tarmac"
- 2094. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2095. By Jeff Lane
-
"[r=zkrynicki][bug=1072666][author=bladernr] automatic merge by tarmac"
- 2096. By Jeff Lane
-
"[r=roadmr][bug=970857][author=bladernr] automatic merge by tarmac"
- 2097. By Sylvain Pineau
-
"[r=roadmr][bug=1172851][author=
sylvain- pineau] scripts/gpu_test: Raring version" - 2098. By Jeff Lane
-
"[r=roadmr][bug=1111878][author=bladernr] automatic merge by tarmac"
- 2099. By Jeff Lane
-
"[r=zkrynicki][bug=1103647][author=bladernr] automatic merge by tarmac"
- 2100. By Brendan Donegan
-
"[r=zkrynicki][bug=1093718][author=
brendan- donegan] automatic merge by tarmac" - 2101. By Jeff Lane
-
"[r=brendan-
donegan] [bug=1100594][author=bladernr] automatic merge by tarmac" - 2102. By Jeff Lane
-
"[r=zkrynicki][bug=1128017][author=bladernr] automatic merge by tarmac"
- 2103. By Jeff Lane
-
"[r=zkrynicki][bug=1116681][author=bladernr] automatic merge by tarmac"
- 2104. By Sylvain Pineau
-
"[r=zkrynicki][bug=1167733][author=
sylvain- pineau] udev parser: Only filter devices without product AND vendor information" - 2105. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 2106. By Brendan Donegan
-
Incremented version
- 2107. By Sylvain Pineau
-
"[r=sylvain-
pineau, zkrynicki] [bug=][ author= sylvain- pineau] automatic merge by tarmac" - 2108. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] checkbox_ trusted_ launcher: Add the --warmup option" - 2109. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2110. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2111. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] Warm up: Ask the password before running the tests" - 2112. By Shawn Wang
-
"[r=sylvain-
pineau] [bug=][ author= shawn111] automatic merge by tarmac" - 2113. By Sylvain Pineau
-
"[r=sylvain-
pineau] [bug=][ author= sylvain- pineau] doc: typo fixed" - 2114. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2115. By Jeff Lane
-
"[r=zkrynicki][bug=1153894][author=bladernr] automatic merge by tarmac"
- 2116. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2117. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2118. By Alberto Milone
-
"[r=brendan-
donegan, cypressyew] [bug=][ author= albertomilone] automatic merge by tarmac" - 2119. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] secure: checkbox- trusted- mauncher: unpack the env list and suppress the _data['via'] hack " - 2120. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2121. By Brendan Donegan
-
"[r=sylvain-
pineau] [bug=][ author= brendan- donegan] automatic merge by tarmac" - 2122. By Sylvain Pineau
-
"[r=roadmr]
[bug=][ author= sylvain- pineau] docs: dev: Added the checkbox- trusted- launcher documentation." - 2123. By Daniel Manrique
-
"[r=zkrynicki][bug=1176695][author=roadmr] automatic merge by tarmac"
- 2124. By Jeff Lane
-
"[r=roadmr][bug=1180496][author=bladernr] automatic merge by tarmac"
- 2125. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2126. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2127. By Brendan Donegan
-
Incremented version
- 2128. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2129. By Sylvain Pineau
-
"[r=roadmr,
zkrynicki] [bug=][ author= sylvain- pineau] scripts/gpu_test: Call firefox instead of the default browser." - 2130. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2131. By Daniel Manrique
-
"[r=zkrynicki]
[bug=][ author= roadmr] Removes "sudo" from plainbox invocation in .desktop autostart file." - 2132. By Zygmunt Krynicki
-
"[r=zkrynicki,
roadmr] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2133. By Daniel Manrique
-
Merged better parsing of EFI in kernel logs by spineau, and fixed misplaced changelog entry
- 2134. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] contrib: policykit_yes: Allow the polkit action for any kind of sessions" - 2135. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2136. By Zygmunt Krynicki
-
"[r=roadmr,
sylvain- pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2137. By Zygmunt Krynicki
-
"[r=roadmr,
zkrynicki] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2138. By Daniel Manrique
-
"[r=roadmr,
zkrynicki] [bug=1182489][author=roadmr] Fixed the optical_drive resource so it correctly handles systems with no optical drive." - 2139. By Sylvain Pineau
-
"[r=roadmr]
[bug=][ author= sylvain- pineau] Exporter: Added the needed code to recreate job categories (based on local jobs)" - 2140. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2141. By Brendan Donegan
-
"[r=roadmr]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 2142. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2143. By Daniel Manrique
-
"[r=zkrynicki][bug=1183271][author=roadmr] Added some missing plugins to POTFILES.in, so their strings can be translated."
- 2144. By Daniel Manrique
-
"[r=roadmr][bug=1183236][author=roadmr] Reorders one field in the xml exporter's "summary" section to avoid triggering the linked bug."
- 2145. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2146. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2147. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2148. By Sylvain Pineau
-
"[r=roadmr][bug=1185382][author=
sylvain- pineau] secure: checkbox- trusted- launcher. py: Force usage of bash to run commands." - 2149. By Daniel Manrique
-
"[r=sylvain-
pineau] [bug=][ author= roadmr] Updated checkbox debian rules to use setup.py test instead of the old test script" - 2150. By Brendan Donegan
-
Incremented version
- 2151. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2152. By Jeff Lane
-
"[r=roadmr][bug=1186259][author=bladernr] automatic merge by tarmac"
- 2153. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2154. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2155. By Zygmunt Krynicki
-
"[r=zkrynicki,
brendan- donegan] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2156. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2157. By Brendan Donegan
-
"[r=zkrynicki][bug=1185759][author=
brendan- donegan] automatic merge by tarmac" - 2158. By Brendan Donegan
-
"[r=zkrynicki][bug=1180342][author=
brendan- donegan] automatic merge by tarmac" - 2159. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2160. By Brendan Donegan
-
"[r=roadmr][bug=1181952][author=
brendan- donegan] automatic merge by tarmac" - 2161. By Daniel Manrique
-
"[r=bladernr]
[bug=][ author= roadmr] fixes a few inconsistencies in how the sleep_test fallback command for suspend/hibernate stress tests is called." - 2162. By Zygmunt Krynicki
-
"[r=zkrynicki,
sylvain- pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2163. By Sylvain Pineau
-
"[r=zkrynicki][bug=1184197][author=
sylvain- pineau] scripts/ package_ resource: updated version supporting both precise and newer releases" - 2164. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2165. By Sylvain Pineau
-
"[r=sylvain-
pineau] [bug=][ author= sylvain- pineau] scripts/ audio_settings: Guess the right profile to select for HDMI / DisplayPort tests." - 2166. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 2167. By Jeff Lane
-
"[r=roadmr][bug=1188284][author=bladernr] automatic merge by tarmac"
- 2168. By Brendan Donegan
-
"[r=roadmr][bug=1184882][author=
brendan- donegan] automatic merge by tarmac" - 2169. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] checkbox- old/checkbox/ parsers/ pactl.py: Added support for Raring." - 2170. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2171. By Jeff Marcom
-
"[r=roadmr]
[bug=][ author= jeffmarcom] automatic merge by tarmac" - 2172. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2173. By Jeff Lane
-
"[r=roadmr][bug=1188221][author=bladernr] automatic merge by tarmac"
- 2174. By Sylvain Pineau
-
"[r=sylvain-
pineau] [bug=][ author= sylvain- pineau] checkbox- old/checkbox/ scripts: New location for scripts unit tests" - 2175. By Zygmunt Krynicki
-
"[r=sylvain-
pineau, roadmr] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2176. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2177. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2178. By Brendan Donegan
-
"[r=zkrynicki][bug=1177647][author=
brendan- donegan] automatic merge by tarmac" - 2179. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] setup.py: Use setuptools find_packages(), more future proof." - 2180. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] Revert rev. 2170 (Saucy target)" - 2181. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2182. By Sylvain Pineau
-
"[r=zkrynicki]
[bug=][ author= sylvain- pineau] checkbox- old/checkbox/ scripts: New location for scripts unit tests" - 2183. By Brendan Donegan
-
"[r=brendan-
donegan, zkrynicki] [bug=1188601][author= brendan- donegan] automatic merge by tarmac" - 2184. By Zygmunt Krynicki
-
"[r=zkrynicki,
sylvain- pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2185. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2186. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2187. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2188. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2189. By Daniel Manrique
-
"[r=bladernr][bug=1187216][author=roadmr] Added a test that validates that manual (user-verify and user-interact included) jobs contain the verification field in their description, without which the Qt UI tends to skip tests."
- 2190. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2191. By Zygmunt Krynicki
-
"[r=][bug=
][author= zkrynicki] automatic merge by tarmac" - 2192. By Brendan Donegan
-
Incremented version
- 2193. By Zygmunt Krynicki
-
"[r=][bug=
][author= zkrynicki] automatic merge by tarmac" - 2194. By Sylvain Pineau
-
"[r=roadmr][bug=1191011][author=
sylvain- pineau] checkbox- old/checkbox/ scripts/ audio-settings. py: fix the profile backup method" - 2195. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2196. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2197. By Brendan Donegan
-
"[r=roadmr][bug=1192093][author=
brendan- donegan] automatic merge by tarmac" - 2198. By Jeff Marcom
-
"[r=roadmr][bug=1185642][author=
jeffmarcom] automatic merge by tarmac" - 2199. By Brendan Donegan
-
Emergency patch to broken udev_attachment job.
- 2200. By Jeff Marcom
-
scripts/
virtualization: Fixed issue where log file was lost with temp directory after test completion and resolved issue where test would not execute due to unecessary AttributeError exception catching during arg parsing Signed-off-by: Jeff Marcom <email address hidden>
- 2201. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2202. By Brendan Donegan
-
"[r=roadmr]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 2203. By Daniel Manrique
-
"[r=bladernr]
[bug=][ author= roadmr] Refactoring of audio_test for Python3 and Gstreamer 1.0, with new peak detection algorithm." - 2204. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 2205. By Zygmunt Krynicki
-
"[r=brendan-
donegan] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2206. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2207. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 2208. By Brendan Donegan
-
"[r=zkrynicki]
[bug=][ author= brendan- donegan] automatic merge by tarmac" - 2209. By Launchpad Translations on behalf of checkbox-dev
-
Launchpad automatic translations update.
- 2210. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2211. By Zygmunt Krynicki
-
"[r=brendan-
donegan] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2212. By Brendan Donegan
-
Incremented changelog
- 2213. By Zygmunt Krynicki
-
"[r=roadmr,
brendan- donegan] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2214. By Zygmunt Krynicki
-
"[r=roadmr]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2215. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2216. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2217. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2218. By Brendan Donegan
-
"[r=zkrynicki][bug=1196531][author=
brendan- donegan] automatic merge by tarmac" - 2219. By Daniel Manrique
-
"[r=zkrynicki][bug=1097816][author=roadmr] This removes the deprecated gksu privileged execution mechanism, and replaces it with pkexec, along with a policy file so the backend can launch graphical programs and ask for proper authorization.
" - 2220. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2221. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2222. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2223. By Zygmunt Krynicki
-
"[r=sylvain-
pineau] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2224. By Brendan Donegan
-
"[r=bladernr][bug=1184661][author=
brendan- donegan] automatic merge by tarmac" - 2225. By Brendan Donegan
-
"[r=roadmr][bug=1196838][author=
brendan- donegan] automatic merge by tarmac" - 2226. By Daniel Manrique
-
"[r=zkrynicki]
[bug=][ author= roadmr] Syncs the packaging branches. The only differences should be: - changelog differences
- checkbox/debian does not reference checkbox-old.
- checkbox refers to itself (checkbox trunk) in the control Vcs-Bzr field.Also see this merge request for the syncing changes to checkbox-packaging.
https:/
/code.launchpad .net/~roadmr/ checkbox/ packaging- sync-packaging/ +merge/ 172911" - 2227. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2228. By Alberto Milone
-
"[r=brendan-
donegan] [bug=][ author= albertomilone] checkbox- old/scripts/ color_depth_ info:
1) Prevent a UnicodeDecodeError. I can reproduce this with Python 3 in Saucy (the one in Precise works fine)
2) Be more strict in the regex so that we don't catch undesired strings." - 2229. By Zygmunt Krynicki
-
"[r=zkrynicki,
roadmr, brendan- donegan] [bug=][ author= zkrynicki] automatic merge by tarmac" - 2230. By Zygmunt Krynicki
-
"[r=zkrynicki]
[bug=][ author= zkrynicki] automatic merge by tarmac" - 2231. By Zygmunt Krynicki
-
plainbox:
testing_ utils: add ResourceCache [work in progress, needs to become weak]
This class allows to share data among test cases.
It is used by integration tests to run jobs once and observe multiple
properties of each job in a separate test case.Signed-off-by: Zygmunt Krynicki <email address hidden>
- 2232. By Zygmunt Krynicki
-
plainbox:
integration_ tests: add load_scenario_ data() and execute_job() [work in progress, needs docstring updates]
Those functions are going to replace the current implementation of
integration test suite. They grew to be too big to keep in the test
class itselfSigned-off-by: Zygmunt Krynicki <email address hidden>
- 2233. By Zygmunt Krynicki
-
plainbox:
integration_ tests: parametrize integration tests by scenario path, not job name To support testing a single job multiple times (in various configurations)
we need to decouple the test scenario from the job it operates on.Each job can have multiple scenarios that affect it, for example
with and without dependencies, on various OS versions, with various
hardware, etc.[ this patch breaks the tree but is shorter to review ]
Signed-off-by: Zygmunt Krynicki <<email address hidden>
- 2234. By Zygmunt Krynicki
-
plainbox:
integration_ tests: load scenario data and run the job (if needed) during setUp() This allows actual test methods to simply check if some of the
job result (be it return code or the output) matches expectations
encoded in the test scenario, thus making tests easier to read.Signed-off-by: Zygmunt Krynicki <email address hidden>
- 2235. By Zygmunt Krynicki
-
plainbox:
integration_ tests: replace test_job_result() with test_job_result() and test_job_ return_ code() The old test_job_result() was responsible for loading and running
everything. The new methods just observe state that was established
during setUp()Signed-off-by: Zygmunt Krynicki <email address hidden>
Conflicts:
plainbox/plainbox/ impl/integratio n_tests. py - 2236. By Zygmunt Krynicki
-
plainbox:
integration_ tests: skip scenarios that are not intended for the current profile [work in progress]
Profile is currently hard-coded as there is no easy way to pass it from
the test loader. This needs more work.Signed-off-by: Zygmunt Krynicki <email address hidden>
- 2237. By Zygmunt Krynicki
-
plainbox:test-data: update integration testing scenarios to the current format
The real change is anchoring the result in the "result" key and adding
"job_name" as a parameter.Signed-off-by: Zygmunt Krynicki <email address hidden>
Unmerged revisions
- 2237. By Zygmunt Krynicki
-
plainbox:test-data: update integration testing scenarios to the current format
The real change is anchoring the result in the "result" key and adding
"job_name" as a parameter.Signed-off-by: Zygmunt Krynicki <email address hidden>
- 2236. By Zygmunt Krynicki
-
plainbox:
integration_ tests: skip scenarios that are not intended for the current profile [work in progress]
Profile is currently hard-coded as there is no easy way to pass it from
the test loader. This needs more work.Signed-off-by: Zygmunt Krynicki <email address hidden>
- 2235. By Zygmunt Krynicki
-
plainbox:
integration_ tests: replace test_job_result() with test_job_result() and test_job_ return_ code() The old test_job_result() was responsible for loading and running
everything. The new methods just observe state that was established
during setUp()Signed-off-by: Zygmunt Krynicki <email address hidden>
Conflicts:
plainbox/plainbox/ impl/integratio n_tests. py - 2234. By Zygmunt Krynicki
-
plainbox:
integration_ tests: load scenario data and run the job (if needed) during setUp() This allows actual test methods to simply check if some of the
job result (be it return code or the output) matches expectations
encoded in the test scenario, thus making tests easier to read.Signed-off-by: Zygmunt Krynicki <email address hidden>
- 2233. By Zygmunt Krynicki
-
plainbox:
integration_ tests: parametrize integration tests by scenario path, not job name To support testing a single job multiple times (in various configurations)
we need to decouple the test scenario from the job it operates on.Each job can have multiple scenarios that affect it, for example
with and without dependencies, on various OS versions, with various
hardware, etc.[ this patch breaks the tree but is shorter to review ]
Signed-off-by: Zygmunt Krynicki <<email address hidden>
- 2232. By Zygmunt Krynicki
-
plainbox:
integration_ tests: add load_scenario_ data() and execute_job() [work in progress, needs docstring updates]
Those functions are going to replace the current implementation of
integration test suite. They grew to be too big to keep in the test
class itselfSigned-off-by: Zygmunt Krynicki <email address hidden>
- 2231. By Zygmunt Krynicki
-
plainbox:
testing_ utils: add ResourceCache [work in progress, needs to become weak]
This class allows to share data among test cases.
It is used by integration tests to run jobs once and observe multiple
properties of each job in a separate test case.Signed-off-by: Zygmunt Krynicki <email address hidden>
Preview Diff
1 | === modified file 'plainbox/plainbox/impl/integration_tests.py' |
2 | --- plainbox/plainbox/impl/integration_tests.py 2013-04-04 17:12:13 +0000 |
3 | +++ plainbox/plainbox/impl/integration_tests.py 2013-07-05 11:51:23 +0000 |
4 | @@ -38,11 +38,21 @@ |
5 | from plainbox.testing_utils.cwd import TestCwd |
6 | from plainbox.testing_utils.io import TestIO |
7 | from plainbox.testing_utils.testcases import TestCaseWithParameters |
8 | +from plainbox.testing_utils.resource import ResourceCache |
9 | |
10 | |
11 | class IntegrationTests(TestCaseWithParameters): |
12 | - |
13 | - parameter_names = ('job_name',) |
14 | + """ |
15 | + Test cases for checking execution and outcome of checkbox jobs. |
16 | + Each test case is parametrized by the job name and execution "profile". |
17 | + |
18 | + The profile is simply a string that somehow characterizes where this test |
19 | + is applicable. |
20 | + """ |
21 | + |
22 | + cache = ResourceCache() |
23 | + |
24 | + parameter_names = ('scenario_pathname',) |
25 | |
26 | def setUp(self): |
27 | # session data are kept in XDG_CACHE_HOME/plainbox/.session |
28 | @@ -51,24 +61,58 @@ |
29 | self._sandbox = tempfile.mkdtemp() |
30 | self._env = os.environ |
31 | os.environ['XDG_CACHE_HOME'] = self._sandbox |
32 | + # Load the expected results and keep them in memory |
33 | + self.scenario_data = self.cache.get( |
34 | + key=('scenario_data', self.parameters.scenario_pathname), |
35 | + operation=lambda: load_scenario_data( |
36 | + self.parameters.scenario_pathname)) |
37 | + # Skip tests that are not applicable for the current system |
38 | + self.skip_if_incompatible() |
39 | + # Execute the job and remember the results. |
40 | + (self.job_result, self.job_return_code, self.job_stdout, |
41 | + self.job_stderr) = self.cache.get( |
42 | + key=('job-run-artifacts', self.parameters.scenario_pathname), |
43 | + operation=lambda: execute_job(self.scenario_data['job_name'])) |
44 | + |
45 | + def test_job_result(self): |
46 | + # Check that results match expected values |
47 | + self.assertEqual(self.job_result, self.scenario_data.get("result")) |
48 | + |
49 | + def test_job_return_code(self): |
50 | + # Check the return code for correctness |
51 | + self.assertEqual(self.job_return_code, |
52 | + self.scenario_data.get("return_code", 0)) |
53 | + |
54 | + def skip_if_incompatible(self): |
55 | + """ |
56 | + Skip a job if it is incompatible with the current environment |
57 | + """ |
58 | + if self.scenario_data.get('profile') != 'default': |
59 | + self.skipTest("not applicable for current profile") |
60 | |
61 | @classmethod |
62 | - def _gen_job_name_values(cls, package='plainbox', |
63 | - root='test-data/integration-tests/'): |
64 | + def _discover_test_scenarios(cls, package='plainbox', |
65 | + dirname="/test-data/integration-tests/", |
66 | + extension=".json"): |
67 | """ |
68 | - Discover job names for jobs that we have reference data for |
69 | + Discover test scenarios. |
70 | + |
71 | + Generates special absolute pathnames to scenario files. All those paths |
72 | + are really relative to the plainbox package. Those pathnames are |
73 | + suitable for pkg_resources.resource_ functions. |
74 | |
75 | All reference data should be dropped to |
76 | ``plainbox/test-data/integration-tests/`` as a json file |
77 | """ |
78 | - for name in resource_listdir(package, root): |
79 | - resource_name = os.path.join(root, name) |
80 | - if resource_isdir(package, resource_name): |
81 | - for item in cls._gen_job_name_values(package, resource_name): |
82 | + for name in resource_listdir(package, dirname): |
83 | + resource_pathname = os.path.join(dirname, name) |
84 | + if resource_isdir(package, resource_pathname): |
85 | + for item in cls._discover_test_scenarios(package, |
86 | + resource_pathname, |
87 | + extension): |
88 | yield item |
89 | - elif resource_name.endswith('.json'): |
90 | - yield resource_name[ |
91 | - len('test-data/integration-tests/'):-len('.json')] |
92 | + elif resource_pathname.endswith(extension): |
93 | + yield resource_pathname |
94 | |
95 | @classmethod |
96 | def get_parameter_values(cls): |
97 | @@ -77,39 +121,57 @@ |
98 | |
99 | Creates subsequent tuples for each job that has reference data |
100 | """ |
101 | - for job_name in cls._gen_job_name_values(): |
102 | - yield (job_name,) |
103 | - |
104 | - def test_job_result(self): |
105 | - # Create a scratch directory so that we can save results there. The |
106 | - # shared directory is also used for running tests as some test jobs |
107 | - # leave junk around the current directory. |
108 | - with TemporaryDirectory() as scratch_dir: |
109 | - # Save results to results.json in the scratch directory |
110 | - actual_results_path = os.path.join(scratch_dir, 'results.json') |
111 | - # Redirect all standard IO so that the test is silent. |
112 | - # Run the script, having relocated to the scratch directory |
113 | - # Capture SystemExit that is always raised by main() so that |
114 | - # we can observe the return code as well. |
115 | - with TestIO(), TestCwd(scratch_dir),\ |
116 | - self.assertRaises(SystemExit) as call: |
117 | - main(['run', '-i', self.parameters.job_name, |
118 | - '--output-format=json', '-o', actual_results_path]) |
119 | - # Check the return code for correctness |
120 | - self.assertEqual(call.exception.args, (0,)) |
121 | - # Load the actual results and keep them in memory |
122 | - with open(actual_results_path, encoding='UTF-8') as stream: |
123 | - actual_result = json.load(stream) |
124 | - # [ At this time TestIO and TemporaryDirectory are gone ] |
125 | - # Load the expected results and keep them in memory |
126 | - reference_path = resource_filename( |
127 | - "plainbox", "test-data/integration-tests/{}.json".format( |
128 | - self.parameters.job_name)) |
129 | - with open(reference_path, encoding='UTF-8') as stream: |
130 | - expected_result = json.load(stream) |
131 | - # Check that results match expected values |
132 | - self.assertEqual(actual_result, expected_result) |
133 | + for scenario_pathname in cls._discover_test_scenarios(): |
134 | + yield (scenario_pathname,) |
135 | |
136 | def tearDown(self): |
137 | shutil.rmtree(self._sandbox) |
138 | os.environ = self._env |
139 | + |
140 | + |
141 | +def load_scenario_data(scenario_pathname): |
142 | + """ |
143 | + Load and return scenario data. |
144 | + |
145 | + Data is loaded from a .json file located in the plainbox package |
146 | + directory. Individual files are named after the jobs they describe. |
147 | + """ |
148 | + pathname = resource_filename("plainbox", scenario_pathname) |
149 | + with open(pathname, encoding='UTF-8') as stream: |
150 | + return json.load(stream) |
151 | + |
152 | + |
153 | +def execute_job(job_name): |
154 | + """ |
155 | + Execute the specified job. |
156 | + |
157 | + The job is invoked using a high-level interface from box so the test will |
158 | + actually execute the same way as the UI would execute it. It will |
159 | + create/tear-down appropriate session objects as well. |
160 | + |
161 | + Returns (result, return_code) where result is the deserialized JSON saved |
162 | + at the end of the job. |
163 | + """ |
164 | + # Create a scratch directory so that we can save results there. The |
165 | + # shared directory is also used for running tests as some test jobs |
166 | + # leave junk around the current directory. |
167 | + with TemporaryDirectory() as scratch_dir: |
168 | + # Save results to results.json in the scratch directory |
169 | + pathname = os.path.join(scratch_dir, 'results.json') |
170 | + # Redirect all standard IO so that the test is silent. |
171 | + # Run the script, having relocated to the scratch directory |
172 | + with TestIO() as io, TestCwd(scratch_dir): |
173 | + try: |
174 | + main(['run', '-i', job_name, |
175 | + '--output-format=json', '-o', pathname]) |
176 | + except SystemExit as exc: |
177 | + # Capture SystemExit that is always raised by main() so that we |
178 | + # can observe the return code as well. |
179 | + job_return_code = exc.args[0] |
180 | + else: |
181 | + job_return_code = None |
182 | + # Load the actual results and keep them in memory |
183 | + with open(pathname, encoding='UTF-8') as stream: |
184 | + job_result = json.load(stream) |
185 | + # [ At this time TestIO and TemporaryDirectory are gone ] |
186 | + return job_result, job_return_code, io.stdout, io.stderr |
187 | |
188 | === modified file 'plainbox/plainbox/test-data/integration-tests/cpu/scaling_test.json' |
189 | --- plainbox/plainbox/test-data/integration-tests/cpu/scaling_test.json 2013-03-15 15:49:18 +0000 |
190 | +++ plainbox/plainbox/test-data/integration-tests/cpu/scaling_test.json 2013-07-05 11:51:23 +0000 |
191 | @@ -1,10 +1,14 @@ |
192 | { |
193 | - "result_map": { |
194 | - "cpu/scaling_test": { |
195 | - "outcome": "pass" |
196 | - }, |
197 | - "package": { |
198 | - "outcome": "pass" |
199 | + "profile": "default", |
200 | + "job_name": "cpu/scaling_test", |
201 | + "result": { |
202 | + "result_map": { |
203 | + "cpu/scaling_test": { |
204 | + "outcome": "pass" |
205 | + }, |
206 | + "package": { |
207 | + "outcome": "pass" |
208 | + } |
209 | } |
210 | } |
211 | -} |
212 | \ No newline at end of file |
213 | +} |
214 | |
215 | === added file 'plainbox/plainbox/testing_utils/resource.py' |
216 | --- plainbox/plainbox/testing_utils/resource.py 1970-01-01 00:00:00 +0000 |
217 | +++ plainbox/plainbox/testing_utils/resource.py 2013-07-05 11:51:23 +0000 |
218 | @@ -0,0 +1,60 @@ |
219 | +# This file is part of Checkbox. |
220 | +# |
221 | +# Copyright 2013 Canonical Ltd. |
222 | +# Written by: |
223 | +# Zygmunt Krynicki <zygmunt.krynicki@canonical.com> |
224 | +# |
225 | +# Checkbox is free software: you can redistribute it and/or modify |
226 | +# it under the terms of the GNU General Public License as published by |
227 | +# the Free Software Foundation, either version 3 of the License, or |
228 | +# (at your option) any later version. |
229 | +# |
230 | +# Checkbox is distributed in the hope that it will be useful, |
231 | +# but WITHOUT ANY WARRANTY; without even the implied warranty of |
232 | +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
233 | +# GNU General Public License for more details. |
234 | +# |
235 | +# You should have received a copy of the GNU General Public License |
236 | +# along with Checkbox. If not, see <http://www.gnu.org/licenses/>. |
237 | + |
238 | +""" |
239 | +plainbox.testing_utils.resource |
240 | +=============================== |
241 | + |
242 | +Implementation of simple resource sharing cache for unit tests |
243 | +""" |
244 | + |
245 | +import weakref |
246 | + |
247 | + |
248 | +class ResourceCache: |
249 | + """ |
250 | + Mix-in for having cached resources that are shared and reused by all |
251 | + instances. If your test needs to compute something (slowly) and reuse |
252 | + it in various different test_ methods then this will save time. |
253 | + """ |
254 | + |
255 | + def __init__(self): |
256 | + """ |
257 | + Initialize a new ResourceCache object |
258 | + """ |
259 | + # XXX: it would be nice to have something like true cache semantics of |
260 | + # java's SoftReference system. We do the second best thing which is to |
261 | + # use weak references on the values held in the cache. |
262 | + # self.weak_cache = weakref.WeakValueDictionary() |
263 | + self.weak_cache = {} |
264 | + |
265 | + def get(self, key, operation): |
266 | + """ |
267 | + Get a value from the cache, falling back to computing it if needed |
268 | + |
269 | + Gets something from the cache dictionary, referenced by the key. If the |
270 | + value is missing it is computed, by calling the operation, and stored |
271 | + in the cache. |
272 | + """ |
273 | + try: |
274 | + value = self.weak_cache[key] |
275 | + except KeyError: |
276 | + value = operation() |
277 | + self.weak_cache[key] = value |
278 | + return value |