18 Commits

Author SHA1 Message Date
Hans-Christoph Steiner
7f10be18c6 fix index update progress using simplified ProgressListener
The Event class is no longer needed once there is specific ProgressListener
instances for each type of progress update.  The sourceUrl serves as the
unique ID, like with DownloaderService and InstallManagerService.

fixes #633 https://gitlab.com/fdroid/fdroidclient/issues/633
2016-05-11 21:56:00 +02:00
Hans-Christoph Steiner
d73dac73ad delete DownloaderServiceTest stub, it is now crashing
DownloaderServiceTest is just a stub of a test that doesn't really test
anything yet.  It is now causing a NullPointerException, so its a problem:

 java.lang.NullPointerException
 	at org.fdroid.fdroid.net.DownloaderService.notifyDownloadComplete(DownloaderService.java:313)
 	at org.fdroid.fdroid.net.DownloaderService.handleIntent(DownloaderService.java:287)
 	at org.fdroid.fdroid.net.DownloaderService$ServiceHandler.handleMessage(DownloaderService.java:104)
 	at android.os.Handler.dispatchMessage(Handler.java:99)
 	at android.os.Looper.loop(Looper.java:137)
 	at android.os.HandlerThread.run(HandlerThread.java:60)
2016-05-10 15:38:27 +02:00
Hans-Christoph Steiner
83ee0c8f0b clean up cached files in a low priority IntentService
This moves the cache file deletion to a dedicated IntentService that runs
at the lowest possible priority.  The cache cleanup does not need to happen
with any kind of priority, so it shouldn't delay the app start or take any
resources away from foreground processes.

This also changes the logic around the "Cache packages" preference. The
downloader always saves APKs, then if "Cache packages" is disabled, those
APKs are deleted when they are older than an hour.

This also simplifies Utils.deleteFiles() since the endswith arg is no
longer needed.
2016-05-02 20:38:31 +02:00
Daniel Martí
87a4cfb27c Get rid of Log.d calls in src/main
Also, Log.d in tests don't make much sense - replace by Log.i. This way
it's easier to limit all Log.d calls to Utils.java.
2016-04-24 15:06:11 +01:00
Daniel Martí
50b2e6f7a5 PMD: Enable and obey SingularField 2016-04-23 17:27:22 +01:00
Daniel Martí
68db3ae353 PMD: Enable and obey ImmutableField 2016-04-23 17:27:22 +01:00
Daniel Martí
a484c03816 PMD: Re-enable on test files
This used to be the case, which is why only minimal changes were
required to bring it back. This also makes it take the same files that
checkstyle does, which is more consistent.
2016-04-23 01:45:04 +01:00
Daniel Martí
865d537745 Rename Repo's pubkey to signingCertificate
Updates #37.
2016-04-19 22:44:22 +01:00
Daniel Martí
4d8e410176 Rename Apk.version to Apk.versionName
Updates #37.
2016-04-19 22:44:22 +01:00
Daniel Martí
1abbedc4ab Rename Apk.vercode to Apk.versionCode
Updates #37.
2016-04-19 22:44:22 +01:00
Hans-Christoph Steiner
74d1c9521d put up a notification for each completed download
This makes background installs and updates a lot easier
2016-04-13 11:08:54 -04:00
Hans-Christoph Steiner
20c66a825d use IntentService style to download all APKs via a queue
DownloaderService is based on IntentService to provide queued requests that
run in a background thread via the Handler and the HandlerThread.  It began
as the IntentService code, but it could not be a subclass because the
downloading needs to be cancelable.  IntentServices cannot be canceled and
they provide no visibility into their queue.

DownloaderService then announces relevant events via LocalBroadcastManager
and Intents with custom "action" Strings.

https://gitlab.com/fdroid/fdroidclient/issues/601 #601
2016-04-13 10:40:01 -04:00
Hans-Christoph Steiner
22e40bfee1 port all but Provider tests to JUnit4 semantics
Android recently switched from JUnit 3 to 4 for its base testing classes.
It doesn't seem to support the old JUnit3 methods with gradle and AS. So
all the tests need to be ported to JUnit4 to work again.

#607 https://gitlab.com/fdroid/fdroidclient/issues/607
2016-04-11 11:26:21 -04:00
Hans-Christoph Steiner
70864e3479 use custom proguard config for running tests
The new Android Testing Support library stuff causes proguard to freak
out, so make proguard ignore all that stuff when running tests.
2016-04-05 12:44:01 +02:00
Hans-Christoph Steiner
74274d21b4 move SanitizedFileTest into non-Android tests
It can run in plain java, so might as well.
2016-04-04 10:53:12 +02:00
Hans-Christoph Steiner
e021eb5ca7 standardize SDK version test methods
I just took the most common method, using the SDK int value, and applied
that throughout the code to have it consistent.
2016-04-02 22:46:41 +02:00
Hans-Christoph Steiner
4538cf1ed0 suppress PMD JUnit4 warnings until tests are ported to JUnit4
#607 https://gitlab.com/fdroid/fdroidclient/issues/607
2016-03-29 12:30:30 +02:00
Hans-Christoph Steiner
3fcdfe85bb move main project files into standard gradle/Android Studio layout
This makes it a lot easier to setup all the testing stuff.  Mostly,
I'm tired of fighting Android Studio's fragility, so I want to remove
as much non-standardness as possible in the hopes of improving that
situation.

closes #534 https://gitlab.com/fdroid/fdroidclient/issues/534
2016-03-28 12:12:37 +02:00