Commit Graph

159 Commits

Author SHA1 Message Date
Daniel Zaoui 3457071db1 Recorder: support stabilization via hotkey 2018-05-16 18:00:39 +03:00
Daniel Zaoui f56ee0dfac Suite: replace the compare method
Instead of using ImageMagick, we now use an internal function.
2018-05-16 18:00:39 +03:00
Daniel Zaoui 53a52a3419 Suite: support exu files comparison 2018-05-16 15:16:24 +03:00
Daniel Zaoui 1f063e3715 Suite: support multiple base directories
It is needed if, for example, rec and exu files are not stored in the
same place while an unique tests file is used.
2018-05-14 11:09:37 +03:00
Daniel Zaoui d049f0cc2c Player: make the screenshot retrieval asynchronous 2018-05-14 11:09:37 +03:00
Daniel Zaoui 637285018f Player: overlay the default theme to disable the text cursor
The text cursor creates noise during the shots, as it is an animation.

In order to solve the issue, the theme is overlayed to hide the cursor.
Most of the entry edc file must be overlayed (and not only the cursor
group) because of the internal way edje_cc compiles the theme (kind of
static link).
2018-05-14 11:09:37 +03:00
Daniel Zaoui f3c1cd693d Player: begin actions feeding after the first canvas is created 2018-05-14 11:09:37 +03:00
Daniel Zaoui 6489ac6142 Player: support screenshots disabling 2018-05-14 11:09:37 +03:00
Daniel Zaoui 7c47c57383 Isolate legacy code
Only the legacy file read function needs to be public. The H file is not
needed anymore.
2018-05-14 11:09:37 +03:00
Daniel Zaoui 1396549299 Remove old recorder and player 2018-05-14 11:09:37 +03:00
Daniel Zaoui 72d998943f Remove unused file (common.c) 2018-05-14 11:09:37 +03:00
Daniel Zaoui 8f9e553d20 Exactness: add the stabilize action to the scenario
This action is needed when the time for the frames to be stable is not
known.
2018-05-14 11:09:37 +03:00
Daniel Zaoui ca185b925a Support of EFL event invocations on named widgets
A new action has been added, permitting the invocation of EFL events on
named widgets.
The name must be set via efl_name_set.
2018-05-14 11:09:37 +03:00
Daniel Zaoui cdb033bcbc Install Exactness.h and create library for unit access 2018-05-14 11:09:37 +03:00
Daniel Zaoui 4373f25dc1 Update ignored files 2018-05-14 11:09:37 +03:00
Daniel Zaoui 2858adbd8d Store delays instead of timestamps in the scenario 2018-05-14 11:09:37 +03:00
Daniel Zaoui 9c3fe1b118 Introduce a remote actions injection mechanism
By executing an application under the player (option
--external-injection), actions can be remotely forwarded.
The communication is done via Eina Debug channel. Therefore, efl_debugd
must be run before the application.
An injection tool has been implemented to show how to communicate with
the application.
2018-05-14 11:09:37 +03:00
Daniel Zaoui 0c30b92bc6 Fix crash when no scenario is present on one side 2018-05-14 11:09:37 +03:00
Daniel Zaoui dc891a41e1 Refactor structures and make them public
The exu doesn't contain the old scenario entries (Variant_st) but the new
(Exactness_Action).
The recorder doesn't create old rec file but only exu.
The player/inspector support rec files by converting them to the new
format internally.
The structures have been tried to be simpler.
2018-05-14 11:09:37 +03:00
Daniel Zaoui ffe0659fbe Inspect: support images displaying from shot entry
A button has been added next to the shot entry. The image itself is set
as the its content.
2018-05-09 21:58:08 +03:00
Daniel Zaoui c3a31c436d Inspect: add --show-only-diffs option
It works only with --compare and in the GUI.
2018-05-09 21:58:08 +03:00
Daniel Zaoui 44cc8381bf Inspect: colorize differences 2018-05-09 21:58:08 +03:00
Daniel Zaoui 56cfef5694 Inspect: add objects information comparison
Genlists management needed to be modified to fit this new feature
2018-05-09 21:58:08 +03:00
Daniel Zaoui fbd75a4356 Add objects information support 2018-05-09 21:58:08 +03:00
Daniel Zaoui 1497fa7336 Recorder: port args to Ecore GetOpt 2018-05-09 21:58:08 +03:00
Daniel Zaoui a74cc726f0 Player: port args to Ecore GetOpt 2018-05-09 21:58:08 +03:00
Daniel Zaoui a62f3906e7 Fix images EET handling by using correct APIs 2018-05-06 22:53:30 +03:00
Daniel Zaoui 8882a38cdb Fix EET description of images 2018-05-06 22:53:30 +03:00
Daniel Zaoui d589c93764 Recorder: support exu 2018-05-06 22:53:30 +03:00
Daniel Zaoui e71334118b Inspect: rename groups names 2018-05-06 22:53:30 +03:00
Daniel Zaoui 5da255c3e8 Inspect: fix timestamps printing 2018-05-06 22:53:30 +03:00
Daniel Zaoui 1086aa6885 Player: support exu as source 2018-05-06 22:53:30 +03:00
Daniel Zaoui 5555a38c1e Support exu file for Exactness
The exu is a EET file for Exactness (Exactness Unit). It currently
contains the scenario and the images shots.
exactness_inspect supports it, as well as the player (only as output).
2018-05-06 22:53:30 +03:00
Daniel Zaoui 3dd58276a2 Add EET for new Exactness data types 2018-05-06 22:53:30 +03:00
Daniel Zaoui bea26c676e Inspect: introduce a scenario visualizer and compare tool
This replaces the existing exactness_helper. A GUI has been added:
- Compare images
- Compare scenarios
2018-05-06 22:53:30 +03:00
Daniel Zaoui db747c49a9 Disable PRELOAD libs compilation 2018-05-06 22:53:30 +03:00
Daniel Zaoui 3bcd6bb4de Replace preload invocation with exactness_play 2018-05-06 22:53:30 +03:00
Daniel Zaoui e4ac42a7b1 Refactor exactness binary
As all the file have been merged, code cleaning is necessary. In
addition, some structures have been removed.
2018-05-06 22:53:30 +03:00
Daniel Zaoui 83e34fec36 Merge all the source files of exactness binary
It will be easier to refactor everything after that
2018-04-21 22:20:23 +03:00
Daniel Zaoui 76a433273e Introduce a new recorder not using LD_PRELOAD 2018-04-21 22:20:23 +03:00
Daniel Zaoui 7a4e7f2e55 Introduce a new player not using LD_PRELOAD
To make Exactness portable, LD_PRELOAD needs to be replaced by other
mechanisms.
2018-04-21 22:20:23 +03:00
Daniel Zaoui 7c10de63e3 Support adding delay to a specific shot in the scenario
It helps when a shot is not stable and need a few ms more to be ok.
2018-01-01 00:18:27 +02:00
Daniel Zaoui c83ed3fabb Fix preload after removal of ecore_main_loop_begin
Since this function doesn't exist anymore, we need to catch the loop
begin in a different way.
2018-01-01 00:18:27 +02:00
Daniel Zaoui 09dc7c8353 Update code after EFL changes 2017-09-19 10:36:04 +03:00
Daniel Zaoui 62298eb8ff Check evas validity before invocations 2016-11-30 07:06:02 +02:00
Daniel Zaoui 8a76345c15 Fix compilation when debug is enabled 2016-11-30 06:42:06 +02:00
Daniel Zaoui 781f294654 Helper: write recording only if needed 2016-11-06 10:19:37 +02:00
Daniel Zaoui ee1e8f77e1 Print command line when verbose is on 2016-11-06 08:43:47 +02:00
Daniel Zaoui dd4c1caade Store and compare objects information at every shot
This feature is aimed to provide a new way to debug applications during
scenarios playing.
When a difference happens between two shots of an application, the
investigation can be tough as the cause may be hidden into a tiny
change, such as an update of the theme.
This feature tries to respond to this problem by storing objects of
the application every time a shot is taken. Then during shots comparison,
objects information are compared and differences are displayed on the
screen.

The feature can be used with the -S option.

For the moment, only hierarchy, order and geometry are checked.
2016-10-26 07:57:24 +03:00
Daniel Zaoui 8e0a638b19 Rename static variable 2016-10-23 06:10:20 +03:00