Commit Graph

6216 Commits

Author SHA1 Message Date
Tao Bao 498e284c78 Merge "tests: Refactor the common lines in UpdaterTest." am: faa47854f4 am: 83e341e754
am: f4b2c3645e

Change-Id: Ie2860f2e5502071b8a52802a917795ddf751c744
2018-05-24 19:20:03 -07:00
Tianjie Xu 0ae5022187 Merge "Convert deflate image chunks to raw if the raw data is smaller" am: fc0f04cba7 am: 8e72eb7077
am: 93938c10f1

Change-Id: Ib7029502657788ffa18369091dc8eb38065d4369
2018-05-24 19:15:30 -07:00
Zhomart Mukhamejanov f0e5627cd2 Merge "updater_sample: create UpdateManager" am: 2a0b23bdf6 am: dd885ab568
am: 8706d3336e

Change-Id: Iee35bb02b776a9f5214c43df714d57a068cea162
2018-05-24 18:59:54 -07:00
Tao Bao f4b2c3645e Merge "tests: Refactor the common lines in UpdaterTest." am: faa47854f4
am: 83e341e754

Change-Id: I14a0f04552fdbe0f61e374438107ed845331f5a1
2018-05-24 16:18:45 -07:00
Tianjie Xu 93938c10f1 Merge "Convert deflate image chunks to raw if the raw data is smaller" am: fc0f04cba7
am: 8e72eb7077

Change-Id: Ie2b2b87adcb4f80d2e895e7de4f1b200f721394c
2018-05-24 16:17:57 -07:00
Tao Bao 83e341e754 Merge "tests: Refactor the common lines in UpdaterTest."
am: faa47854f4

Change-Id: Ib674f713c68985ddc826fba83c6bdaaa3c06d623
2018-05-24 16:11:53 -07:00
Tao Bao faa47854f4 Merge "tests: Refactor the common lines in UpdaterTest." 2018-05-24 23:03:05 +00:00
Tianjie Xu 8e72eb7077 Merge "Convert deflate image chunks to raw if the raw data is smaller"
am: fc0f04cba7

Change-Id: I9873d3ef545bb3880a863e76a3782ff119f6c29c
2018-05-24 15:58:51 -07:00
Tianjie Xu fc0f04cba7 Merge "Convert deflate image chunks to raw if the raw data is smaller" 2018-05-24 22:42:54 +00:00
Zhomart Mukhamejanov 8706d3336e Merge "updater_sample: create UpdateManager" am: 2a0b23bdf6
am: dd885ab568

Change-Id: I7a93e763640a3e318348e388cc9adb0dcaf1513e
2018-05-24 14:28:35 -07:00
Tianjie Xu cc61cf6a9f Convert deflate image chunks to raw if the raw data is smaller
The imgpatch will fail on empty deflates because the bspatch won't call
the sink function if the target length is zero.

Instead of compressing an empty string, it's cleaner to not generate such
empty deflate chunks in the patch. Therefore, we can just convert the
chunk type to raw if the target length is smaller than the patch data.

Also adjust some unit tests and add the testdata gzipped_source &
gzipped_target. These two files are ~1K each and are generated by
gzipping two slightly different regular files.

Bug: 79265132
Test: unit tests pass, imgpatch applys successfully on the given src/tgt
Change-Id: I6bfff3251918137f6762a6f9e9551642371a1124
2018-05-24 10:49:54 -07:00
Zhomart Mukhamejanov dd885ab568 Merge "updater_sample: create UpdateManager"
am: 2a0b23bdf6

Change-Id: I2d01925d91b028ff9a86aadf2cc8a478c3e42c78
2018-05-24 10:44:06 -07:00
Zhomart Mukhamejanov 2a0b23bdf6 Merge "updater_sample: create UpdateManager" 2018-05-24 16:10:56 +00:00
Tao Bao bc4a6d59f6 tests: Refactor the common lines in UpdaterTest.
Move the common codes into RunBlockImageUpdate(). Also clean up the
partition updated marker after running each test.

Test: Run recovery_component_test on marlin.
Change-Id: Id4302e4da4c664231b737a1e83d2e164ef58ed97
2018-05-24 00:15:56 -07:00
Zhomart Mukhamejanov 6f26e71263 updater_sample: create UpdateManager
- Add UpdateManager - responsible for the update logic.
    Now ui.MainActivity is responsible for only UI.
- Create sample test for UpdateManager
- Remove MainActivityTest - now MainActivity is really simple.
- Add separate callback for progress update.
- MainActivity: UpdateEngine#bind/unbind on pause/resume.

Test: manually on the device
Test: using JUnit4
Change-Id: I1dba7c4ec74b1afb520be762413cfc261ccfbc08
Signed-off-by: Zhomart Mukhamejanov <zhomart@google.com>
2018-05-23 15:37:43 -07:00
Tao Bao d0c3f62d3e Merge "updater: Use a bool to indicate if allowed to skip a command." am: 3a8b348936 am: 082733b555
am: 09dbf50713

Change-Id: I03a79e3e7be2775866a29a3edeac35780ca6c2f3
2018-05-21 18:49:35 -07:00
Tao Bao 09dbf50713 Merge "updater: Use a bool to indicate if allowed to skip a command." am: 3a8b348936
am: 082733b555

Change-Id: Ia8bd235b2cc4a2a53339e848c34cb89c4af0621f
2018-05-21 18:46:04 -07:00
Tao Bao 082733b555 Merge "updater: Use a bool to indicate if allowed to skip a command."
am: 3a8b348936

Change-Id: I3b7fe231de183723be3f5dd158e3d130e3e797f2
2018-05-21 18:42:33 -07:00
Tao Bao 3a8b348936 Merge "updater: Use a bool to indicate if allowed to skip a command." 2018-05-22 01:34:03 +00:00
Jerry Zhang 118d6ac3a0 Merge "recovery: Add ability to set title lines" am: cba047f944 am: 6283f64568
am: ebc910901c

Change-Id: I51055a2ae70534c0107e6001d6db0e31f2a2932d
2018-05-21 17:14:56 -07:00
Tao Bao 67d0309460 Merge "updater: Clean up the header lines computation." am: a5735e9b5f am: 1e29bb6717
am: b8a04272c8

Change-Id: Ie044e694af47e2c115f1ba1030e331c99202611d
2018-05-21 17:09:11 -07:00
Jerry Zhang ebc910901c Merge "recovery: Add ability to set title lines" am: cba047f944
am: 6283f64568

Change-Id: I9c40c26a28de5d45b4651bd5cd5d36d57ff9d9fb
2018-05-21 17:05:28 -07:00
Tao Bao b8a04272c8 Merge "updater: Clean up the header lines computation." am: a5735e9b5f
am: 1e29bb6717

Change-Id: I48a43bb615d9850375774b6827bc34352b0b7c76
2018-05-21 17:05:04 -07:00
Jerry Zhang 6283f64568 Merge "recovery: Add ability to set title lines"
am: cba047f944

Change-Id: I6795eba1ab0cbc56e04fbed4d0ae3b8fe4925920
2018-05-21 17:00:23 -07:00
Tao Bao 1e29bb6717 Merge "updater: Clean up the header lines computation."
am: a5735e9b5f

Change-Id: Id8270c2dce8ac907ea443f667ede40f3eba8fa2d
2018-05-21 17:00:02 -07:00
Jerry Zhang cba047f944 Merge "recovery: Add ability to set title lines" 2018-05-21 23:52:43 +00:00
Tao Bao a5735e9b5f Merge "updater: Clean up the header lines computation." 2018-05-21 23:47:51 +00:00
Jerry Zhang 0e577ee424 recovery: Add ability to set title lines
Add the ability to change the contents of
the title lines, displayed at the top of
the screen. Once set, the same lines are
displayed for all menus until changed again.

Test: Recovery works
Bug: 78793464
Change-Id: I7ef5594b0d76dbbd2e01ad7508863af1270b2a2a
2018-05-21 16:37:07 -07:00
Tao Bao ba579eec7d [automerger skipped] Merge "Move stuff from recovery into librecovery." am: 901f0c3516 am: dd88112054 -s ours
am: f64feaac0f  -s ours

Change-Id: Iaf063b9ed0b485813ac77edb3d610c5b5392487b
2018-05-21 16:33:36 -07:00
Tao Bao f64feaac0f [automerger skipped] Merge "Move stuff from recovery into librecovery." am: 901f0c3516
am: dd88112054  -s ours

Change-Id: I59e680bbc6dd9a0895b594cd5a4a5f32719ec4b3
2018-05-21 16:24:29 -07:00
Tao Bao dd88112054 Merge "Move stuff from recovery into librecovery."
am: 901f0c3516

Change-Id: Ief503e9d2be627474df385790e5ac55399f08744
2018-05-21 16:21:09 -07:00
Tao Bao 901f0c3516 Merge "Move stuff from recovery into librecovery." 2018-05-21 23:05:45 +00:00
Tao Bao 08fa07c132 Merge "Move stuff from recovery into librecovery." into pi-dev-plus-aosp
am: adbf380258

Change-Id: I6ed490a28a7cdd1da3a1564fa9fb96bf2040a77c
2018-05-21 16:00:20 -07:00
Tao Bao adbf380258 Merge "Move stuff from recovery into librecovery." into pi-dev-plus-aosp 2018-05-21 22:24:06 +00:00
Tao Bao 26efb0ae3a updater: Use a bool to indicate if allowed to skip a command.
This avoids the signedness issue, and makes the code more readable.

Test: mmma bootable/recovery
Test: Run recovery_component_test.
Change-Id: I01c3a0357887cfd7c9d4aba4239ef650cfa18388
2018-05-21 15:05:53 -07:00
Tao Bao ab20706a84 updater: Clean up the header lines computation.
It no longer needs to be conditional, as we've removed the support for
BBOTA v1/v2.

Test: mmma bootable/recovery
Change-Id: I881de8afa38cc5b41b48e6d48d85170699ea5eb4
2018-05-21 14:48:49 -07:00
Zhomart Mukhamejanov 3d9a4ef57b Merge "updater_config: make utils/PayloadSpecs non-static" am: 928f2cbf9b am: 3714929c32
am: 154cdd99d6

Change-Id: If1786eba08d7746601b6870e16bce9141d504b57
2018-05-21 10:46:53 -07:00
Zhomart Mukhamejanov 154cdd99d6 Merge "updater_config: make utils/PayloadSpecs non-static" am: 928f2cbf9b
am: 3714929c32

Change-Id: I970eb576513cbc8f088e9edbdb4a229820b58cbf
2018-05-21 10:37:47 -07:00
Zhomart Mukhamejanov 3714929c32 Merge "updater_config: make utils/PayloadSpecs non-static"
am: 928f2cbf9b

Change-Id: Iec6299559d502989fadd08f6622aef9c320af478
2018-05-21 10:29:15 -07:00
Zhomart Mukhamejanov 928f2cbf9b Merge "updater_config: make utils/PayloadSpecs non-static" 2018-05-21 16:54:04 +00:00
Zhomart Mukhamejanov b0361ffa3e updater_config: make utils/PayloadSpecs non-static
PayloadSpecs has complicated methods, which makes hard
to test other dependent classes.
Making it non-static allows mocking it, which makes
testing other classes easier.

Test: manually
Test: using JUnit4
Change-Id: I818dc59c6bb0e7d131439d0d41f88d5cd9a451b4
Signed-off-by: Zhomart Mukhamejanov <zhomart@google.com>
2018-05-18 10:38:33 -07:00
Jerry Zhang 76610d1681 Merge "recovery: Reset optind to 1 after getopt" am: 38d90316b2 am: 25d31c9f9c
am: 901fb2c811

Change-Id: I8848adc74153293256f780fefaa05c579eda359d
2018-05-17 14:52:48 -07:00
Jerry Zhang 901fb2c811 Merge "recovery: Reset optind to 1 after getopt" am: 38d90316b2
am: 25d31c9f9c

Change-Id: Id2d80584075c3482748e5946d39fe8ef572aea45
2018-05-17 14:48:15 -07:00
Jerry Zhang 25d31c9f9c Merge "recovery: Reset optind to 1 after getopt"
am: 38d90316b2

Change-Id: I06fecd4bc886741901715201b14ff31b6932d05d
2018-05-17 14:44:41 -07:00
Treehugger Robot 38d90316b2 Merge "recovery: Reset optind to 1 after getopt" 2018-05-17 21:38:26 +00:00
Jerry Zhang 49fd5d262c recovery: Reset optind to 1 after getopt
The getopt library exposes optind which is the
next index to be processed. When scanning is
restarted, optind has to be reset to 1.

Test: Recovery works
Bug: 78793464
Change-Id: I1efca3fb985ffbdfe91e43767469733cda6e7d5b
2018-05-17 19:56:42 +00:00
Tao Bao f4ade1caa2 Merge "updater_sample: add switch slot demo" am: 2ddc54f5fd am: 4f26e44969
am: 6feecf0337

Change-Id: I411045c8260782c0612001e09831eef409d29099
2018-05-17 12:50:04 -07:00
Tao Bao 6feecf0337 Merge "updater_sample: add switch slot demo" am: 2ddc54f5fd
am: 4f26e44969

Change-Id: If5faa3401c43c321c5566ee049113d8dd152ed74
2018-05-17 12:44:55 -07:00
Tao Bao 4f26e44969 Merge "updater_sample: add switch slot demo"
am: 2ddc54f5fd

Change-Id: Ie29bdc24f011744e8d13ea0b5c5608d4d3851792
2018-05-17 12:39:53 -07:00
Tao Bao 2ddc54f5fd Merge "updater_sample: add switch slot demo" 2018-05-17 19:21:54 +00:00