Merge branch 'ci-rootproject' into 'master'

CI: use root project, test fix

See merge request !130
This commit is contained in:
Hans-Christoph Steiner 2015-09-04 12:37:12 +00:00
commit 9cb8e0f5d5
6 changed files with 14 additions and 20 deletions

View File

@ -25,15 +25,14 @@ before_script:
test:
script:
- cd F-Droid
- echo " == Building via gradle"
- gradle clean assemble
- gradle build
- echo " == Setting up Android 2.3.7 emulator"
- echo no | android create avd --force -n fcl-test -t android-10 -b armeabi
- echo " == Starting Android 2.3.7 emulator"
- emulator -force-32bit -avd fcl-test -no-skin -no-audio -no-window &
- ./tools/wait-for-emulator
- ./F-Droid/tools/wait-for-emulator
- echo " == Running Android tests"
- gradle connectedAndroidTest
- gradle connectedCheck
- echo " == Stopping Android 2.3.7 emulator"
- kill $!

View File

@ -22,7 +22,7 @@ import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
public class RepoXMLHandlerTest extends AndroidTestCase implements ProgressListener {
public class RepoXMLHandlerTest extends AndroidTestCase {
private static final String TAG = "RepoXMLHandlerTest";
private Repo repo;
@ -610,10 +610,10 @@ public class RepoXMLHandlerTest extends AndroidTestCase implements ProgressListe
private void handlerTestSuite(Repo repo, RepoXMLHandler handler, int appCount, int apkCount) {
assertNotNull(handler);
assertFalse(TextUtils.isEmpty(handler.getPubKey()));
assertEquals(repo.pubkey.length(), handler.getPubKey().length());
assertEquals(repo.pubkey, handler.getPubKey());
assertFalse(fakePubkey.equals(handler.getPubKey()));
assertFalse(TextUtils.isEmpty(handler.getSigningCertFromIndexXml()));
assertEquals(repo.pubkey.length(), handler.getSigningCertFromIndexXml().length());
assertEquals(repo.pubkey, handler.getSigningCertFromIndexXml());
assertFalse(fakePubkey.equals(handler.getSigningCertFromIndexXml()));
assertFalse(TextUtils.isEmpty(handler.getName()));
assertEquals(repo.name.length(), handler.getName().length());
@ -637,7 +637,7 @@ public class RepoXMLHandlerTest extends AndroidTestCase implements ProgressListe
try {
parser = SAXParserFactory.newInstance().newSAXParser();
XMLReader reader = parser.getXMLReader();
RepoXMLHandler handler = new RepoXMLHandler(repo, this);
RepoXMLHandler handler = new RepoXMLHandler(repo);
reader.setContentHandler(handler);
String resName = "assets/" + indexFilename;
Log.i(TAG, "test file: " + getClass().getClassLoader().getResource(resName));
@ -661,8 +661,4 @@ public class RepoXMLHandlerTest extends AndroidTestCase implements ProgressListe
return null;
}
@Override
public void onProgress(Event event) {
// Log.i(TAG, "onProgress " + event.toString());
}
}

View File

@ -9,8 +9,8 @@ for Android.
Building with Gradle
--------------------
The only required tools are the [Android
SDK](http://developer.android.com/sdk/index.html) and Gradle.
The only required tools are the [Android SDK](http://developer.android.com/sdk/index.html)
and Gradle.
You should use a relatively new version of Gradle, such as 2.4, or use the
gradle wrapper.
@ -23,7 +23,7 @@ Once you have checked out the version you wish to build, run:
If you would like to build from source, add `-PsourceDeps`:
cd F-Droid
gradle assembleDebug -PsourceDeps
gradle assembleRelease -PsourceDeps
The resulting apk will be in `build/outputs/apk/`.
@ -75,13 +75,12 @@ In order to run the F-Droid test suite, you will need to have either a real devi
connected via `adb`, or an emulator running. Then, execute the following from the
command line:
gradle connectedAndroidTest
gradle connectedCheck
This will build and install F-Droid and the test apk, then execute the entire
test suite on the device or emulator.
See the [Android Gradle user
guide](http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Testing)
See the [Android Gradle user guide](http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Testing)
for more details, including how to use Android Studio to run tests (which
provides more useful feedback than the command line).