Merge "updater_sample: update tests"

This commit is contained in:
Zhomart Mukhamejanov 2018-05-03 22:52:36 +00:00 committed by Gerrit Code Review
commit 219445a320
3 changed files with 29 additions and 15 deletions

View file

@ -17,7 +17,8 @@
package com.example.android.systemupdatersample.util;
import static com.example.android.systemupdatersample.util.PackageFiles.PAYLOAD_BINARY_FILE_NAME;
import static com.example.android.systemupdatersample.util.PackageFiles.PAYLOAD_PROPERTIES_FILE_NAME;
import static com.example.android.systemupdatersample.util.PackageFiles
.PAYLOAD_PROPERTIES_FILE_NAME;
import static org.junit.Assert.assertArrayEquals;
import static org.junit.Assert.assertEquals;
@ -28,6 +29,8 @@ import android.support.test.filters.SmallTest;
import android.support.test.runner.AndroidJUnit4;
import com.example.android.systemupdatersample.PayloadSpec;
import com.google.common.base.Charsets;
import com.google.common.io.Files;
import org.junit.Before;
import org.junit.Rule;
@ -56,16 +59,16 @@ public class PayloadSpecsTest {
private File mTestDir;
private Context mContext;
private Context mTargetContext;
@Rule
public final ExpectedException thrown = ExpectedException.none();
@Before
public void setUp() {
mContext = InstrumentationRegistry.getTargetContext();
mTargetContext = InstrumentationRegistry.getTargetContext();
mTestDir = mContext.getFilesDir();
mTestDir = mTargetContext.getFilesDir();
}
@Test
@ -87,6 +90,21 @@ public class PayloadSpecsTest {
PayloadSpecs.forNonStreaming(new File("/fake/news.zip"));
}
@Test
public void forStreaming_works() throws Exception {
String url = "http://a.com/b.zip";
long offset = 45;
long size = 200;
File propertiesFile = createMockPropertiesFile();
PayloadSpec spec = PayloadSpecs.forStreaming(url, offset, size, propertiesFile);
assertEquals("same url", url, spec.getUrl());
assertEquals("same offset", offset, spec.getOffset());
assertEquals("same size", size, spec.getSize());
assertArrayEquals("correct properties",
new String[]{"k1=val1", "key2=val2"}, spec.getProperties().toArray(new String[0]));
}
/**
* Creates package zip file that contains payload.bin and payload_properties.txt
*/
@ -114,4 +132,10 @@ public class PayloadSpecsTest {
return testFile;
}
private File createMockPropertiesFile() throws IOException {
File propertiesFile = new File(mTestDir, PackageFiles.PAYLOAD_PROPERTIES_FILE_NAME);
Files.asCharSink(propertiesFile, Charsets.UTF_8).write(PROPERTIES_CONTENTS);
return propertiesFile;
}
}

View file

@ -18,14 +18,11 @@ package com.example.android.systemupdatersample.util;
import static org.junit.Assert.assertArrayEquals;
import android.content.Context;
import android.support.test.InstrumentationRegistry;
import android.support.test.filters.SmallTest;
import android.support.test.runner.AndroidJUnit4;
import com.example.android.systemupdatersample.UpdateConfig;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
@ -41,16 +38,9 @@ import java.util.List;
@SmallTest
public class UpdateConfigsTest {
private Context mContext;
@Rule
public final ExpectedException thrown = ExpectedException.none();
@Before
public void setUp() {
mContext = InstrumentationRegistry.getTargetContext();
}
@Test
public void configsToNames_extractsNames() {
List<UpdateConfig> configs = Arrays.asList(

View file

@ -17,7 +17,7 @@
"""
Given a OTA package file, produces update config JSON file.
Example: tools/gen_update.config.py \\
Example: tools/gen_update_config.py \\
--ab_install_type=STREAMING \\
ota-build-001.zip \\
my-config-001.json \\