History log of /external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
42bc23b188cdf856d24494842909ac0e0930b257 19-Sep-2014 Charlie Mooney <charliemooney@chromium.org> Add a manual noise test mode to the Touch FW tests

Elan wants to reproduce our robotic noise test using their robot. After
some brainstorming with them on the best way to do this, we devided that
actually making a mode that does the noise test "manually" would
probably be easiest. Then they can program their robot to simply touch
the pad for a few seconds, raise up, wait a few more seconds, and then
hit the spacebar. It should work just fine I think and is a lot easier
than rewriting the robot wrapper classes to support their robot.

This CL adds a new flag "-f" that allows you to indicate to the test
suite that you do, in fact have a function generator attached even
though the robot may not be connected. So to run the extended noise
test manually you would run:

DISPLAY=:0 python main.py -m NOISE -f

The test will controll the function generator automatically for you, and
then you are manually required to perform the gesture.

BUG=chromium:416062
TEST=manual testing. The new mode works and the regular modes that
existed before seem to still work as expect as well

Change-Id: I12110ca30422f0d3f7455654253675834fc19d9c
Signed-off-by: Charlie Mooney <charliemooney@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/219101
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
b0612e11b87281c1ab8ab95d3c47de2601a9df26 16-Jul-2014 Mindy Huang <mindyh@chromium.org> Added a noise mode to the robot.

In noise mode, the robot does a fine-grain frequency test on the device.
It sweeps from 0Hz to 1MHz in 400Hz intervals, for a total of 2500 tests
in about 4 hours.

BUG=chromium:394075
TEST=Manually with robot on a lumpy

Change-Id: Iaf5901923f42cbd41c0a263a0431b512f6cdbb36
Signed-off-by: Mindy Huang <mindyh@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/208485
Reviewed-by: Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
a8b149d119a2a0cf7d7e403bc3df7cc9f34cdc8c 09-Jul-2014 Mindy Huang <mindyh@google.com> Added noise tests for line drawing and stationary touches to the touch firmware test suite.

The added line test draws diagonal lines with square waves in noise at 5kHz, 500kHz, and 1Mhz.
The added stationary touch test holds the finger still at various points on the touchpad while sending
square waves in noise at 5kHz, 500kHz, and 1MHz.

BUG=chromium:392321
TEST=Tested with robot on a lumpy

Change-Id: I6b331346d11ca2c88510f16a92a27aefaf2d38b1
Signed-off-by: Mindy Huang <mindyh@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/207167
Reviewed-by: Charles Mooney <charliemooney@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
2cbb23bb88733c3e0a40f7d17681ed957b54ce27 13-May-2014 Charlie Mooney <charliemooney@chromium.org> Add a quickstep flag to the touch FW test

It's common to want to check the latency of a system without running the
full (long) FW test on it. This CL adds a nice, simple way to do that
without having to know how the code works and comment out parts you
don't want. Now there is an additional '-q' or '--quickstep' flag you
can pass to the test suite when you run it. If you do it overrides the
list of gestures and only runs the latency test.

BUG=chromium:372895
TEST=I used it both with and without the flag and it seems to do the
job.

Change-Id: Ia05b771c00341447e253d56a13a7c08e967d8401
Signed-off-by: Charlie Mooney <charliemooney@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/199495
Reviewed-by: Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
3ceb6419c90576ba7df8cee03d4b42d38d1b6d00 05-Mar-2014 Charlie Mooney <charliemooney@chromium.org> Adding a drag-latency test to the Touch FW test

A drag latency test has been part of our touch qualification process for
a while now, but has always been run by hand. With Quickstep, this
should be able to be performed automatically as with any other
gesture/validator that we check. The operator will just need to set up
the laser across the pad before running the test.

This CL adds in the robot support for the Quickstep gesture and a new
validator that imports in the latency calculation software from the
touchbot project and computes the drag-latency using the touch data the
firmware collected and pulling the laser data out of the Quickstep sysfs
entries. If there is no Quickstep present, the test will report a
failing dummy value to indicate this, otherwise you would need the
Quickstep device to run the FW test, which is something we don't want to
be a requirement.

BUG=chromium:349174
TEST=Manually ran the test with and without the Quickstep plugged in and
the gesture ran smoothly and the computations worked without crashing

Change-Id: I638da3f837e86d6cf40da3e552c7d56b23e51ee1
Signed-off-by: Charlie Mooney <charliemooney@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/189502
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
a44a9531f8dbd9c61d1f940397a816d628d4b369 29-Nov-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: add hysteresis validator and its related gesture

A new HysteresisValidator is added to check if there exists a
cursor jump initially. This happens when a finger starts moving,
the cursor keeps at the same position initially. While the finger
moves sufficiently far away, the cursor jumps suddenly to catch
up with the finger and then moves smoothly with the finger thereafter.

A new gesture for performing hysteresis test is also added to draw
lines to various directions with distinct speed.

Since this is a regular line-drawing gesture, the robot is ready
to perform it.

BUG=chromium:326658
TEST=All unit tests, including the new one for hysteresis test,
should pass.
$ cd /usr/local/autotest/tests/firmware_TouchMTB
$ python tests/run_all_unittests.py

Change-Id: Ib3dcd5fecb87e946e2e2b3665ddd0823d26f07a3
Reviewed-on: https://chromium-review.googlesource.com/179316
Reviewed-by: Shyh-In Hwang <josephsih@chromium.org>
Commit-Queue: Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
b0773e1ff6a735d964b563d494d7a06d19a873ba 21-Nov-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB hide scores behind a flag in summary

This patch hides the old 0.0-1.0 scores behind a flag. The scores
would be kept for a while until they are completely replaced by
the metrics.

BUG=chromium:316291
TEST= Replay the logs and run the summarizer:
$ tools/machine_replay.sh -b tests/logs/link
$ ./summary.sh -d /tmp
Check the summary in /tmp/summary/summary_xxxx/summary_xxxx.txt
Observe that it does not show the scores.

Now run the summarizer with "-s" flag to show scores.
$ ./summary.sh -d /tmp -s
Check the summary in /tmp/summary/summary_xxxx/summary_xxxx.txt
Observe that it does show the scores this time at the end of the file.

Change-Id: I0a5cb75f07ca497839d81cb8ded00eadf3dd8168
Reviewed-on: https://chromium-review.googlesource.com/177743
Reviewed-by: Charles Mooney <charliemooney@chromium.org>
Tested-by: Shyh-In Hwang <josephsih@chromium.org>
Commit-Queue: Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
c0d30cbdfb45cfb800689451f29fe37345c66f48 21-Nov-2013 Charlie Mooney <charliemooney@chromium.org> Switching the Touch FW test to the new Robot

The touchbotII robot wrapper has been under development for a while now
and seems to be quite functional. As such I would like to switch the
test over to use it now. This patch removed the old robot wrapper and
replaces it with the one for the new robot.

The current state of the robot test with the new robot is that it can do
the same tests that the old robot could. The only way to really iron
out the kinks in it now is to start actually using it, I think. More
tests will be added as this robot is much more flexible than the old
one, but replacing the old functionality was the first milestone here.

BUG=chromium:308162
TEST=I ran the full fw test using the new robot on a Lumpy in the lab
and everything worked.

Change-Id: Ife9bd73850511b4c131fc16d850e1798d686f662
Signed-off-by: Charlie Mooney <charliemooney@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/177481
Reviewed-by: Shyh-In Hwang <josephsih@chromium.org>
Commit-Queue: David James <davidjames@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
e41b3cfce09ec790d909107c9da6726e51b13c89 24-Oct-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: show metrics as default

Metrics statistics are shown without the need to specify any flags.

BUG=chromium:235753
TEST=Replay the logs without specifying "-s" command option.
$ cd /usr/local/autotest/tests/firmware_TouchMTB
$ tools/machine_replay.sh -b tests/logs/lumpy/
$ ./summary.sh -d /tmp -m f
Check out the summary report in /tmp/summary/summaryxxx/summaryxxx.txt,
where xxx is of the form of the date time. It should display the
"Metrics statistics by validator" in the summary report.

All unit tests must pass too.
$ python tests/run_all_unittests.py

Change-Id: I893290d77a27c8a981c65e8f837c2ba5f1e39c46
Reviewed-on: https://chromium-review.googlesource.com/174663
Reviewed-by: Shyh-In Hwang <josephsih@chromium.org>
Commit-Queue: Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
c9cdc9527e1087addd1e21cf58608fd75173df5a 25-Sep-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: show scores and statistics of individual round

The firmware_summary module used to integrate all test data of
the same firmware from different rounds to calculate the statistics.
However, it would be handy to be able to calculate and display
the statistics of individual rounds of the same firmware. As an
example, we may like to examine the consistency of the test results
of the same firmware across different rounds.

We add a new command line option such that when present it treats
every rounds of the same firmware as different ones by appending
a round number to the firmware name.

BUG=chromium:235753
TEST=Replay the lumpy test logs on a chromebook.
$ cd /usr/local/autotest/tests/firmware_TouchMTB
$ tools/machine_replay.sh -b tests/logs/lumpy -s
Show the scores and metrics of individual round with the
command line option "-i"
$ ./summary.sh -d /tmp -m f -i
Look at the summary report. It displays the scores and metrics
of two individual rounds for fw_11.23, and also two individual
rounds for fw_11.27.

Run all unit tests, and there should be no division by 0 errors.
$ python tests/run_all_unittests.py

Change-Id: I80a657ee35e3952fa4d205f4e19724d8718e416c
Reviewed-on: https://chromium-review.googlesource.com/170592
Reviewed-by: Charles Mooney <charliemooney@chromium.org>
Tested-by: Shyh-In Hwang <josephsih@chromium.org>
Commit-Queue: Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
ad3136c03a931b4c1742cdec472780be15f7e1ed 12-Aug-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: replay with a mocked device

It is handy and sometimes essential to be able to replay the test
logs captured from a platform on another platform.

When replaying logs, the board on which the logs were captured could
be different from the board of the chromebook currently used. Hence,
the correct board should be extracted from the log specified in the
replay directory. The following priority is used to find the device
description file used to mock the particular touch device for that
board:
(1) use the device description file in the replay directory
(2) use the device description file found in tests/device directory

However, if "-d/--system_device" command line option is specified, use
the system touch device found on the chromebook instead as before.

BUG=chromium:274204
TEST=Replay the lumpy logs on both lumpy and link. Observe that
their summary reports are exactly the same.
$ cd /usr/local/autotest/tests/firmware_TouchMTB
$ tools/machine_replay.sh -b tests/logs/lumpy -s
$ ./summary.sh -d /tmp -m f

Change-Id: I95a39d0ead821de9379e2f3a26f19e42a9c829b9
Reviewed-on: https://gerrit.chromium.org/gerrit/66345
Reviewed-by: Charlie Mooney <charliemooney@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
7dbae7827dae0767bffe303708e19483b80a007e 17-Jul-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: add the metric for CountTrackingIDValidator

The metrics of some validators will be hidden by default unless
there are failures. Such validators include CountTrackingIDValidator,
CountPacketsValidator, and PinchValidator.

Display the metric for CountTrackingIDValidator if there are failures.
Otherwise, hide the metric unless a flag "-m a" is specified. The
metric shows the percentage of the incorrect test cases over the total
test cases.

The printing format with failures looks like:

Metrics statistics by validator: fw_12 description
------------------------------------------------------------------------------
CountTrackingIDValidator
pct of incorrect cases (%) : 4.76 pct of incorrect cases over total cases
...

The detailed raw metrics values will be printed if a flag "-m f"
is specified. The raw metric value pair represents
(actual tracking IDs, expected tracking IDs). The format looks like:

CountTrackingIDValidator
pct of incorrect cases (%)
** Note: value below represents (actual tracking IDs, expected tracking IDs)
drag_edge_thumb.left_to_right (20130506_032458) : (5, 1)
one_finger_physical_click.bottom_left (20130506_032458): (1, 1)
...

Note that in the drag_edge_thumb gesture above, the expected number
of tracking IDS (or finger IDs) should be 1. However, 5 tracking IDs
are actually observed due to some firmware problems.

For the one_finger_physical_click gesture, exactly 1 tracking ID is
observed, while the number of expected finger IDs is 1.

We also unify the "-m" (i.e., metrics) flag in summary.sh script.
$ ./summary.sh -m p # show the statistics of the primary metrics
$ ./summary.sh -m a # show the statistics of all metrics, where
# all metrics = the primary metrics + the hidden ones
$ ./summary.sh -m f # show the full raw metrics values on file basis

BUG=chromium:235753
TEST=Run the command on a chromebook machine to generate a summary report.
$ cd /usr/local/autotest/tests/firmware_TouchMTB

Replay the logs.
$ tools/machine_replay.sh -b tests/logs/lumpy -s

Generate the summary report with the metrics statistics.
$ ./summary.sh -d /tmp -m a

Generate the summary report with the full raw metrics values on file basis.
$ ./summary.sh -d /tmp -m f

Also make sure all unit tests pass.
$ python tests/run_all_unittests.py

Change-Id: Ie385bfd54bac0a45211fc2a678ad57d9472e4da2
Reviewed-on: https://gerrit.chromium.org/gerrit/62827
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
Reviewed-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
039967354df47f89616776832ec2a9dd9fea9efb 16-Jul-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: print raw metrics values

In the last patch, the statistics of metrics values are printed
as follows:

Metrics statistics by validator : fw_11.23 description
--------------------------------------------------------------------
Linearity(BothEnds)Validator
max error in x (mm) : 9.34 The max err of all samples
...

If a user would like to know which gesture/file causes the max error
above, it would be helpful to print the raw metrics values as follows:

Raw metrics values
--------------------------------------------------------------------
fw_11.23

Linearity(BothEnds)Validator
max error in x (mm)
drag_edge_thumb.left_to_right (20130710_063117) : 3.06
two_fat_fingers_tracking.left_to_right (20130710_063117) : 9.34
...

In this way, the user could observe that the file with
gesture: "two_fat_fingers_tracking",
variation: "left_to_right",
in the folder: "20130710_063117"
causes the "max error in x".

BUG=chromium:235753
TEST=Run the command on a chromebook machine to generate a summary report.
$ cd /usr/local/autotest/tests/firmware_TouchMTB
Replay the logs
$ tools/machine_replay.sh -b tests/logs/lumpy -s

Generate the summary report with short metrics values grouped by validator.
$ ./summary.sh -d /tmp -m

Generate the summary report with detailed metrics values.
$ ./summary.sh -d /tmp --metrics_details
Observe that the raw detailed metrics values are printed this time.

Change-Id: I4d540f71c1c1e91507b9104eff8ac80c14d6654e
Reviewed-on: https://gerrit.chromium.org/gerrit/62329
Reviewed-by: Charlie Mooney <charliemooney@chromium.org>
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
330dcded15b07bf1869bd5d4cbf2bccbc6a14537 04-Jul-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: printing the statistics of metrics

In this patch, we print the statistics of metrics by validators in
the summary report.

We also handle the metrics names in a more unified way. Before,
the same metric name strings, e.g., 'max error in x (mm)', were used
across different modules. Now with a new class MetricNameProps to
keep information about the metric names, the descriptions, and the
stat_func used to calculate the statistics of metrics, the metric
names could be derived consistently by expanding from a template, say
'max error in {} (mm)', with its variations, e.g., ['x', 'y'], to
derive the names: 'max error in x (mm)' and 'max error in y (mm)'.

We also remove the PhysicalClickValidator temporarily which incurs
divide-by-0 error. This validator is not specified in the spec v2.
However, it might be useful to add it back later to make sure that
a tap does not incur physical click.

The metrics in a summary report looks like:

Metrics statistics by validator : fw1.2 description
--------------------------------------------------------------------------------
DrumrollValidator
circle radius (mm) : 1.37 Anything over 2mm is failure
Linearity(BothEnds)Validator
max error in x (mm) : 9.34 The max err of all samples
max error in y (mm) : 6.33 The max err of all samples
rms error in x (mm) : 2.46 The mean of all rms means of all trials
rms error in y (mm) : 1.03 The mean of all rms means of all trials
Linearity(Middle)Validator
max error in x (mm) : 4.91 The max err of all samples
max error in y (mm) : 6.30 The max err of all samples
rms error in x (mm) : 1.27 The mean of all rms means of all trials
rms error in y (mm) : 0.68 The mean of all rms means of all trials
PhysicalClickValidator
1f-click miss rate (%) : 0.00 Should be close to 0 (0 is perfect)
2f-click miss rate (%) : 0.00 Should be close to 0 (0 is perfect)
3f-click miss rate (%) : 0.00 Should be close to 0 (0 is perfect)
4f-click miss rate (%) : 0.00 Should be close to 0 (0 is perfect)
5f-click miss rate (%) : 0.00 Should be close to 0 (0 is perfect)
RangeValidator
left edge not reached (mm): 0.08 Min unreachable distance
ReportRateValidator
average time interval (ms): 12.19 less than 1/60 sec is required
intervals > 1/60 sec (%) : 4.45 0% is required
max time interval (ms) : 57.96 less than 1/60 sec is required
StationaryFingerValidator
max distance (mm) : 3.85 max distance of any two points from
any run

BUG=chromium:235753
TEST=Run the command on a chromebook machine to generate a summary report.
$ cd /usr/local/autotest/tests/firmware_TouchMTB
Replay the logs
$ tools/machine_replay.sh -b tests/logs/lumpy -s
Generate the summary report
$ ./summary.sh -m -d /tmp
Observe that the metrics are printed as above.

Also make sure all unit tests pass.
$ python tests/run_all_unittests.py

Change-Id: If7224354ef866cc3468752caa32feb1439b0b8cc
Reviewed-on: https://gerrit.chromium.org/gerrit/61883
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
Reviewed-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
1fd993155b6d1c6996daafd5789101d3342c7bc9 01-Jul-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: do not upload data by default

Since our partners are running our firmware test suite now, we
should disable uploading of any data to google servers by default.
To upload the data later when needed, use the option "-u/--upload"
to specify a test result directory under
"/var/tmp/touch_firmware_test". Refer to the example below for
more details.

BUG=chromium:254992
TEST=Conduct the firmware tests on a chromebook machine.
$ cd /usr/local/autotest/tests/firmware_TouchMTB
$ DISPLAY=:0 OPTIONS="-m complete" python main.py
After all tests have been finished, observe that the data are not
uploaded. Instead, it displays the following messages.

You can upload all data in the latest result directory:
$ DISPLAY=:0 OPTIONS="-u latest" python main.py

You can also upload any test result directory, e.g.,
"20130702_063631-fw_1.23-manual", in "/var/tmp/touch_firmware_test"
$ DISPLAY=:0 OPTIONS="-u 20130702_063631-fw_11.23-manual" python main.py

Change-Id: Ibbcc272b0f9241e8026e8f5c2b9464e9d79d61cb
Reviewed-on: https://gerrit.chromium.org/gerrit/60742
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Reviewed-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
bb6f69b8c90e4896dd82e0266a096674c957f7db 27-Jun-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: capture files for pressure calibration

In this patch, we add a new mode to capture event files for
pressure calibration.

BUG=chromium:221864
TEST=Run the test on a chromebook machine to capture event files.
$ cd /usr/local/autotest/tests/firmware_TouchMTB
$ DISPLAY=:0 OPTIONS="-m calibration" python main.py
Observe that it guides the user to record a few event files with
distinct size of metal fingers.

Change-Id: I6f65a2d3585380a51dd0e4bf6785fe55308c91c8
Reviewed-on: https://gerrit.chromium.org/gerrit/60641
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
Reviewed-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
f16a39fd38ddaec0707d9ea3b1f7c3a2a0bb090f 21-Jun-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: add metrics for Stationary Finger Validator

In this patch, we add the metric for StationaryFingerValidator:
- the maximum distance between any two points of the stationary finger in mm

The result logs are updated due to the change of the validator and
its criteria. Some unit tests are also added/updated accordingly.

BUG=chromium:252669
TEST=Replay logs on a lumpy.
$ cd /usr/local/autotest/tests/firmware_TouchMTB
$ tools/machine_replay.sh -b tests/logs/lumpy/ -s
And then run the summary script to generate a summary report.
$ ./summary.sh -d /tmp -m

Observe the metrics would look like:
ReportRateValidator
fw_11.23: {
'max_distance_mm': (1.3453, 1.3453, 1.3453)
}
fw_11.27: {
'max_distance_mm': (1.7159, 1.7159, 1.7159)}
}

All of the unit tests should pass.
$ python tests/run_all_unittests.py

Change-Id: Ia010ba136434348762ba2ae3351e5ac929dc28ec
Reviewed-on: https://gerrit.chromium.org/gerrit/59723
Reviewed-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
cbb3a8b0181317e66af94d87c73d1069b9180bab 06-Jun-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: add a new command option --show_spec_v2

In this patch, we add a new command line option --show_spec_v2
which shows the test results derived with the validators
described in the touchpad firmware test spec v2.

BUG=chromium:248120
TEST=None. Will be tested with subsequent patches.

Change-Id: I14caf11d2cffe8e5dfae659d2606030e0346ec47
Reviewed-on: https://gerrit.chromium.org/gerrit/58081
Reviewed-by: Charlie Mooney <charliemooney@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
e9c6a255171607e0467d9025b2a2ed92eb03c87a 03-Jun-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: support the option to display summary metrics

Since there are more options available in the firmware_summary
module, in this patch we add the getopt option support. In
particular, we add an extra option to determine if the summary
metrics would be displayed.

BUG=chromium:241092
TEST=None. This would be tested with the next patch.

Change-Id: Iadbdfac6f6773bc3afb3ff3c8c859f441627bb21
Reviewed-on: https://gerrit.chromium.org/gerrit/57310
Reviewed-by: Charlie Mooney <charliemooney@chromium.org>
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
36c17cf405458e22b7476c5abe25d6f82a30a1ea 24-May-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: add an option not to display the html result

When we modify what the content or format that is output by the test
result log, we need to replay the gestures to derive the log of the
new format. In this case, we do not want to display the html test
result on the chrome browser which takes significant time by
telemetry to logout and login to the chrome with a test account.

In this patch, we add a command option not to display the html
test result.

BUG=chromium:241092
TEST=Run the following commands:
$ cd $ cd /usr/local/autotest/tests/firmware_TouchMTB
$ mkdir -p /var/tmp/touch_firmware_test
$ cp -r tests/logs/lumpy/20130506_030025-fw_11.27-robot_sim/ \
/var/tmp/touch_firmware_test
$ OPTIONS="-m robot_sim --skip_html -i 2 --replay
20130506_032659-fw_11.23-robot_sim" python main.py
Observe that the test should not invoke telemetry at the end.

Change-Id: I55280c552769c94e73d3f5fcfafdeffbd9a5e5d3
Reviewed-on: https://gerrit.chromium.org/gerrit/56728
Reviewed-by: Charlie Mooney <charliemooney@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
ecc254fc00e6b3504d4f7d87abad937cf73a267d 07-May-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: refactor firmware_log and firmware_summary modules

Some of the code about test logs was manipulated in firmware_summary
module which made this module become messy. In this patch, we do the
refactoring by moving those code to firmware_log module and create
classes for them. In addition, we also flatten the deep hierarchy of
log dictionaries so that it is much simpler to maintain.

BUG=chromium:238039
TEST=On a chromebook
$ cd /usr/local/autotest/tests/firmware_TouchMTB
Make sure that the following unit test pass.
$ python tests/firmware_summary_unittest.py

Change-Id: Idc5a70ed28745805a4221cc20780c23da0210fb0
Reviewed-on: https://gerrit.chromium.org/gerrit/50320
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
Reviewed-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
8c5e275df682ef5b0ad52574ae1e2e31fc724509 22-Apr-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: Rename the test suite and fix the programs

To finish renaming the test suite, we also need to fix the prompts,
classes, methods, variables, and strings, etc. to reduce confusion.

BUG=chromium:234117
TEST=Install the test suite to a chromebook
(cr) $ ./run_remote_tests.sh --autotest_dir
~/trunk/src/third_party/autotest/files --remote=$MACHINE_IP
firmware_TouchMTB
On the chromebook, conduct the test suite as follows.
$ DISPLAY=:0 python main.py
It should execute normally.

Change-Id: Iaf5d5060bf68e3e0a13913a69227636fba2fbeb6
Reviewed-on: https://gerrit.chromium.org/gerrit/48782
Reviewed-by: Charlie Mooney <charliemooney@chromium.org>
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py
0cbff8bf3666a81b886080f82712943e36dad95f 22-Apr-2013 Joseph Hwang <josephsih@chromium.org> firmware_TouchMTB: Rename the test suite as firmware_TouchMTB

As the test suite is now applicable to both the touchpad
and the touchscreen, it is proper to rename the test name
from firmware_TouchpadMTB to firmware_TouchMTB.

BUG=chromium:234117
TEST=None. Will be combined with next patch.

Change-Id: I92ecc074023c76f7c2f292b7e22ef960d537819f
Reviewed-on: https://gerrit.chromium.org/gerrit/48781
Reviewed-by: Charlie Mooney <charliemooney@chromium.org>
Commit-Queue: Joseph Shyh-In Hwang <josephsih@chromium.org>
Tested-by: Joseph Shyh-In Hwang <josephsih@chromium.org>
/external/autotest/client/site_tests/firmware_TouchMTB/firmware_constants.py