History log of /packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2f288864b621cfb5aee44eda27df463460d33dd3 08-May-2014 Tony Mantler <nicoya@google.com> Fetch email bodies using ContentResolver#openInputStream

This brings us further along the path to storing email bodies
outside of the database.

Change-Id: I96296114ade0d561df724878ed92999306bcd176
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
3c73a04bec2a1d06ce0a3c861a3d88862b80c163 18-Apr-2014 Tony Mantler <nicoya@google.com> Continue purging the unused reply parts

Change-Id: I47b5bbe50ba36e68ad7ba80647f401b992660ba1
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
5057d6dffb994b4d1d02c05e06f679de8ef05ea5 25-Jan-2014 James Lemieux <jplemieux@google.com> Replying to a Message with an encoded email address shows the encoded address in the to field.

b/11658428

As per Yu Ping's advice, we alter the storage of all email addresses (from, to, cc, bcc and
replyto) to be stored in *decoded* format within our database. This makes them both human
readable when inspecting the database manually and alleviates the need to repeatedly decode
them before they are displayed anywhere in our UI layers.

As part of this bugfix, I resurrected several tests related to the LegacyConversions class out of
LegacyConversionsTests and into a new (not Suppressed) test class: LegacyConversionsTest

Change-Id: Ie2e3264646e25c08c4ba74f60b3e1090c052e6c6
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
1fa303478c61e0d703011996e358037eef523176 23-Jan-2014 James Lemieux <jplemieux@google.com> Eliminate redundant methods in Address class

THIS DOES NOT CHANGE ANY EXISTING FUNCTIONALITY.

Address.pack() has been removed and all calls replaced with its synonym Address.toHeader().
Address.unpack() has been renamed to Address.fromHeader() to follow the new naming convention.

In days of yore, pack() and toHeader() used to do different things. Now they are identical and
thus one is superfluous. We have standardized on toHeader() and fromHeader().

Change-Id: Iac91c966eb6c1477f8dba0dd2ae01c84b359e539
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
7037a0bd3d8e925a9115f475f5c0d05ddae2eeee 17-Dec-2013 Jerry Xie <jjx@google.com> Disable, suppress, remove broken and obsolete Email tests

Change-Id: Ia4dcba1c6966f23dd2a15e69324b7345aed8f944
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
17d3a29c9d8f7a27c463239f190bdcc4e0804527 27-Nov-2013 Jerry Xie <jjx@google.com> Get Email units to compile

Change-Id: I171a0e2421c5006d9862ad94f886932146547020
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
6be411edd0ef5a1fb357d90c7fee22de83632be5 05-Jun-2013 Andrew Sapperstein <asapperstein@google.com> Refactoring to support eml viewer in UnifiedEmail.

Moved two files out of Email into UnifiedEmail and
removed their dependencies on EmailContent. As a result,
those classes now return the data directly via a data only
class.

Change-Id: Iaf0618dd6879c9dc2a41943d3d15428904b65768
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
0993190cafebc107bd27a26996b5d63d4a4ede10 06-May-2011 Marc Blank <mblank@google.com> Complete rewrite of account backup/restore code

* Use EmailProvider to backup/restore into a backup database
* Remove all of the old AccountBackupRestore code
* Get rid of the legacy Account class and all of the Preferences
crap that referenced it
* Remove corresponding tests

Change-Id: I2de75aafdacc87246174303961e58547303f641e
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
aeee10e57ef4d931e7708fde218d590453a82aea 28-Apr-2011 Marc Blank <mblank@google.com> Rework of security policy storage

* Replace crazy (and soon to be "full") bit fields stored in an account's
securityFlags with a row in a newly created Policy table (thus, fully
expandable)
* Update code from database version 17 to 18; adds Policy table, a
policyKey row in Account, and a revised trigger that deletes Policy
information for deleted Accounts
* Update old PolicySet unit tests to work against the new Policy class
* Add test for the conversion of securityFlags to Policy
* Tested in a variety of scenarios; appears to be functionally equivalent

Change-Id: I1505ee75230d6a0d3c2b62a46326f39c2c7f9eb5
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
31d9acbf0623872f9d4a2b3210b5970854b654c7 12-Feb-2011 Marc Blank <mblank@google.com> Email split, part huit: Refactor constants, clean emailcommon

* There are three pieces to this CL (sorry):
1) Move and/or rename some constants into emailcommon
2) Move Utility to emailcommon, moving the few UI
related utilities back into Email (FolderProperties
and UiUtilities)
3) Remove all references to resources from emailcommon
* The three pieces relate in that, between them, they allow
the emailcommon static library to compile cleanly

Bug: 3442973

Change-Id: Ic5e3abaa2a1b36999e0b6653c6c2134ea1bd544f
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
a7bc0319a75184ad706bb35c049af107ac3688e6 10-Feb-2011 Marc Blank <mblank@google.com> Email split, part six: EmailContent

* Moved EmailContent to emailcommon

Change-Id: Ib3db1bfcfe74554c0e5afd3cfce6d72f26e9aeb9
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
2193962ca2b3157e79f731736afa2a0c972e778a 10-Feb-2011 Marc Blank <mblank@google.com> Email split, part quatre: Move along, nothing to see here

* No code was harmed, er, changed in the making of this CL
* All that's happened is that code that is needed by both Email and
Exchange have been moved into emailcommon
* This required import changes to many files, which explains the
length of the CL

Change-Id: I4e12455ba057a4a8054fdbd0b578c73afa411c8a
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
8a574694606f0e5d781334d0d426fc379c51f3ed 09-Feb-2011 Marc Blank <mblank@google.com> Email split, part trois: AccountService

* Create AccountService.aidl and AccountServiceProxy in emailcommon
* Implement AccountService in email
* Use AccountServiceProxy in Exchange for account reconciliation,
notifications, etc.
* Move sync window constants into emailcommon
* Split attachment provider utilities and constants into emailcommon

Bug: 3442973
Change-Id: I89dce28b799b193243c07774dab65d830ae62775
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
7d51b7a05ba07377e3df0b07c2aaa430a8b5bc42 06-Feb-2011 Andy Stadler <stadler@google.com> Remove all compatibility with pre-2.0 data

* Remove LocalStore (pre-2.0 mail database) and its unit test
* Remove UpgradeAccounts (converted pre-2.0 accounts to Provider)
* Remove FolderMessageList (receiver for pre-1.6 desktop shortcuts)
* Remove "upgrading" paths through LegacyConversions
* Clip out dangling references to everything above

Bug: 3292310
Change-Id: I5654d55a0879b00b05b63055b94651855a8ee3ef
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
e3a17f1438e454518a58fc0841bb615344acf865 15-Dec-2010 Andy Stadler <stadler@google.com> Restrict download/display to "attachment" and "inline"

* Check content-disposition and restrict to these two types
* Add unit test
* Reformatting collectParts (code style cleanup)

Bug: 3242502
Change-Id: I5dcbdda5d4788502113771f4fd1b5fff834a402d
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
75a873be8420e50f0aeb5a77716358ee0ca66b01 09-Dec-2010 Marc Blank <mblank@google.com> Implement prefetch of IMAP/EAS attachments

* Load attachments in the background for IMAP/EAS messages
* Download an attachment from account X if:
1) 25% of total storage free
2) Attachments for X use < 1/N of 25% of total storage, where N is
the number of AccountManager accounts
* Add accountKey to Attachment table for performance

Change-Id: I913aa710f34f48fcc4210ddf77393ab38323fe59
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
fab77f147f85766d2f75d8aece0aaa4ffb3838e8 28-Oct-2010 Marc Blank <mblank@google.com> EmailProvider content caching

* In this CL, we cache individual rows, based on the CONTENT_PROJECTION
defined for the most common queries (Account, HostAuth, Mailbox, and
Message)
* Queries on individual rows (most often Class.restoreClassById()) will
look to the cache first, rather than querying the database
* Queries on smaller projections will build MatrixCursor's from cached
data
* Write-through caching updates the cache with changed columns
* Experiments with live data indicate that > 95% of queries that are
cacheable (single row, no selection) can be retrieved from the cache,
thereby saving a great deal of disk access.
* Timing experiments show that cache hits are > 40x faster than cache
misses
* Unit tests for the various classes exist, with more coming

TODO
----
* More unit tests

Change-Id: I386a948a2f4cc02b6548d07d9b2fefd1e018a262
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
9e2ddca59d048fc9ac55278b193ee36b330a7981 17-Mar-2010 Jim Shuma <jshuma@google.com> Add "vibrate when silent" mode to notifications

* Add "vibrate when silent" choice in UI
* Add storage for it in Email's provider. Existing accounts default to
their current settings (always vibrate / never vibrate).
* Respect new mode when notifications are posted
* Updated existing unit tests

Bug: 2457183
Change-Id: I5c933ac39dbef8b2028255f330e0b084a445421a
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
7d738cb7e89353c51c567e466a135b54337f310d 18-Mar-2010 Andrew Stadler <stadler@android.com> Fix cases of attachments with no name

* Most clients send name= in the content-type, but a few clients
send only filename= in content-disposition.
* There was code to handle both cases, but due to two typos, it didn't
work.
* Most easily reproduced by sending from hotmail/live web client.

Bug: 2366961
Change-Id: I1d9a00b9b5fd1094cfb8566c3248d94286a8ae91
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
fd249f61dd9c5fd1e7e0abffcb09b9e285d82bae 08-Mar-2010 Andrew Stadler <stadler@android.com> More work on account migration

* Split account copy loop to do POP3 accounts first, then IMAP
* After upgrading accounts, upgrade folders
* Upgrade messages in those folders
* Preserve attachments on outgoing messages (e.g. drafts)
* Enable composer and start syncing after upgrade
* Fix latent bug in LocalStore (which was not used in Eclair)
* Add tests for upgrade workers in LegacyConversions

Bug: 2065528
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
345fb8b737c1632fb2a7e69ac44b8612be6237ed 27-Jan-2010 Andrew Stadler <stadler@android.com> Add utilities for processing account security policies

* Add security sync key & signature columns
* Add utilities for easy read/write of security columns
* Write aggregator for multiple accounts
* Simple API's for exchange security (very preliminary)
* Unit tests of above

Bug: 2387961
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
fc8d943a828cd79ff71c703ced37001bd5482173 21-Jan-2010 Andrew Stadler <stadler@android.com> Add security column to Account

* Upgrade accounts table to add security column
* Read/Write new column
* Backup/Restore new column
* Unit tests for all of the above
* First cut at defining bitfields (non-binding, just putting down ideas)

Bug: 2387961
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
d612717340b2670776a75a1d2e9e3df81fd4c052 21-Jan-2010 Andrew Stadler <stadler@android.com> Backup/Restore accounts - bugfix

* Followup to 5e91cccd
* Workaround for (HTC bug: 2275383) & (Moto bug: 2226582)
* Restores mSyncKey as null instead of empty string, which is how
a new account is initialized. Bug: 2385980
* Cleanup synchronized logic in backup & restore
* Minor cleanups & improved comments
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
5e91cccd4b530eb2aeace5c5bf4f3328a5b5d69d 20-Jan-2010 Andrew Stadler <stadler@android.com> Quick backup/restore of accounts

* Workaround for (HTC bug 2275383) & (Moto bug 2226582)
* Adds checkpoints for backing up and restoring accounts
* Uses legacy Account / prefs to back up accounts - this is because
some of this code will be reused for legacy account migration
* Unit tests of Account & LegacyConversions
* Unit tests of backup & restore
* Not done: testing of EAS/Account Manager interface (this will require
deeper dependency injection, to avoid the embedded calls to the Account
Manager and other system services.)
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
5b0a12c199198870161876996296b1262c17408e 14-Oct-2009 Andrew Stadler <stadler@android.com> Prevent duplication of POP3 attachments

* For each attachment we add, check the DB for an existing attachment
with similar metadata (name, mime type, content id, etc.)
* Skip adding them if already held
* Unit tests

Fixes bug http://b/2084704
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
b6756688b1bf07c50b999c9d30dd6cb224d3812b 07-Oct-2009 Andrew Stadler <stadler@android.com> Handle IMAP empty bodies more safely

Some IMAP servers return NIL if you BODY.PEEK[TEXT] a messsage with
no body, instead of the more canonical {0}CRLF. Instead of messing with the
parser to deal with that, it makes more sense not to try and fetch empty
bodies. So there are three changes:

* Don't fetch parts when size = 0
* Don't append "null" when there is null body text
* Slight change to attachment handling so size is reported >0
* Unit tests on some of the related lower-level protocol stuff

Bug http://b/issue?id=2160387

Change-Id: Ifb8fb0ed5ce7297908e1ae8d5a02dda5975c4a3c
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
eb7752bf695b2a93854e0bb89ddbbc2236bb9aea 06-Oct-2009 Andrew Stadler <stadler@android.com> Fix back-to-back message-id bugs

* MessageCompose now adds message-id to new messages (it was previously
done on its behalf by MimeMessage).
* LegacyConversions.updateMessageFields() now handles missing message-id
without error.
* Unit tests for the LegacyConversions change

These two issues were combining with a failure of comcast's SMTP server
to insert message-id headers, to prevent delivery of a message between
any two comcast accounts using this client.

Bug # http://b/issue?id=2161478
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
c41c47fa07a22f8a7612fb0191f152a36d95b7a5 25-Sep-2009 Andrew Stadler <stadler@android.com> Enable message upload

* Create logic to detect upsyncable messages in Sent
* Note: Drafts is now local only for IMAP - no sync, either way
* Rewrite MessageController.processPendingAppend for Provider world
* Write provider message -> legacy message converter
* Fixed bug in IMAP APPEND (it was not picking the right UID for the
uploaded message.)
* Better handling of server internaldate
* Add constants for new X-Android-Body-Quoted-Part header
* Add EmailContent routines to get each of the 5 parts of the body
* Remove "Load more" from unsynced message lists
* Add toString to MimeHeader for debug support

Bug # 2097471

TODO (next CL): Upload attachments records too

Change-Id: I209182f5adc6b6696919f559e3cbbdd58b3eed3a
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java
3f1ac4da947f426775c9546f2e37206f58ce1a6e 12-Aug-2009 Andrew Stadler <stadler@android.com> Add code to handle IMAP/POP attachments.

IMAP messages up to about 25k will be downloaded properly.

* Move Store->Provider message rewrite code to a separate utility.
* Add code to descend a Store message and write provider attachments.
* Unit test basic IMAP attachment handler

TODO:
* handle large IMAP messages.
* unit test for POP
* unit test for large IMAP messages
/packages/apps/Email/tests/src/com/android/email/LegacyConversionsTests.java