Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fd892335 authored by Thomas Nguyen's avatar Thomas Nguyen Committed by Automerger Merge Worker
Browse files

Merge "Add some extra config data used for validation" into 24D1-dev am: 3d72680f

parents bc3a5d11 3d72680f
Loading
Loading
Loading
Loading
+19 −18
Original line number Diff line number Diff line
@@ -52,7 +52,7 @@ public class SatelliteConfig {
    private Map<Integer, Map<String, Set<Integer>>> mSupportedServicesPerCarrier;
    private List<String> mSatelliteRegionCountryCodes;
    private Boolean mIsSatelliteRegionAllowed;
    private Path mSatS2FilePath;
    private File mSatS2File;
    private SatelliteConfigData.SatelliteConfigProto mConfigData;

    public SatelliteConfig(SatelliteConfigData.SatelliteConfigProto configData) {
@@ -62,13 +62,14 @@ public class SatelliteConfig {
        mSatelliteRegionCountryCodes = List.of(
                mConfigData.deviceSatelliteRegion.countryCodes);
        mIsSatelliteRegionAllowed = mConfigData.deviceSatelliteRegion.isAllowed;
        mSatS2FilePath = null;
        mSatS2File = null;

        Log.d(TAG, "mVersion:" + mVersion + " | "
                + "mSupportedServicesPerCarrier:" + mSupportedServicesPerCarrier + " | "
                + "mSatelliteRegionCountryCodes:" + mSatelliteRegionCountryCodes + " | "
                + "mSatelliteRegionCountryCodes:"
                + String.join(",", mSatelliteRegionCountryCodes) + " | "
                + "mIsSatelliteRegionAllowed:" + mIsSatelliteRegionAllowed + " | "
                + "s2CellFile size:" + mConfigData.deviceSatelliteRegion.s2CellFile.length);
                + " | s2CellFile size:" + mConfigData.deviceSatelliteRegion.s2CellFile.length);
    }

    /**
@@ -181,21 +182,21 @@ public class SatelliteConfig {
     * @return satellite s2_cell_file path
     */
    @Nullable
    public Path getSatelliteS2CellFile(@Nullable Context context) {
    public File getSatelliteS2CellFile(@Nullable Context context) {
        if (context == null) {
            Log.d(TAG, "getSatelliteS2CellFile : context is null");
            return null;
        }

        if (isFileExist(mSatS2FilePath)) {
            Log.d(TAG, "File mSatS2FilePath is already exist");
            return mSatS2FilePath;
        if (isFileExist(mSatS2File)) {
            Log.d(TAG, "File mSatS2File is already exist");
            return mSatS2File;
        }

        if (mConfigData != null && mConfigData.deviceSatelliteRegion != null) {
            mSatS2FilePath = copySatS2FileToPhoneDirectory(context,
                    mConfigData.deviceSatelliteRegion.s2CellFile);
            return mSatS2FilePath;
            mSatS2File = copySatS2FileToPhoneDirectory(
                    context, mConfigData.deviceSatelliteRegion.s2CellFile);
            return mSatS2File;
        }
        Log.d(TAG, "getSatelliteS2CellFile: "
                + "mConfigData is null or mConfigData.deviceSatelliteRegion is null");
@@ -209,7 +210,7 @@ public class SatelliteConfig {
     */
    @Nullable
    @VisibleForTesting(visibility = VisibleForTesting.Visibility.PRIVATE)
    public Path copySatS2FileToPhoneDirectory(@Nullable Context context,
    public File copySatS2FileToPhoneDirectory(@Nullable Context context,
            @Nullable byte[] byteArrayFile) {

        if (context == null || byteArrayFile == null) {
@@ -234,18 +235,18 @@ public class SatelliteConfig {
        } catch (IOException ex) {
            Log.e(TAG, "copySatS2FileToPhoneDirectory: ex=" + ex);
        }
        return targetSatS2FilePath;
        return targetSatS2FilePath.toFile();
    }

    /**
     * @return {@code true} if the SatS2File is already existed and {@code false} otherwise.
     */
    @VisibleForTesting(visibility = VisibleForTesting.Visibility.PRIVATE)
    public boolean isFileExist(Path filePath) {
        if (filePath == null) {
            Log.d(TAG, "isFileExist : filePath is null");
    public boolean isFileExist(@Nullable File file) {
        if (file == null) {
            Log.d(TAG, "isFileExist : file is null");
            return false;
        }
        return Files.exists(filePath);
        return file.exists();
    }
}
+6 −9
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;

import android.testing.AndroidTestingRunner;
@@ -35,11 +36,9 @@ import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;

import java.nio.file.Path;
import java.nio.file.Paths;
import java.io.File;
import java.util.ArrayList;
import java.util.Base64;
import java.util.Collections;
@@ -183,9 +182,6 @@ public class SatelliteConfigParserTest extends TelephonyTest {

    @Test
    public void testGetSatelliteS2CellFile() {
        final String filePath = "/data/user_de/0/com.android.phone/app_satellite/s2_cell_file";
        Path targetSatS2FilePath = Paths.get(filePath);

        SatelliteConfigParser spySatelliteConfigParserNull = spy(
                new SatelliteConfigParser((byte[]) null));
        assertNotNull(spySatelliteConfigParserNull);
@@ -201,10 +197,11 @@ public class SatelliteConfigParserTest extends TelephonyTest {
        assertNotNull(spySatelliteConfigParser.getConfig());
        assertFalse(spySatelliteConfigParser.getConfig().isFileExist(null));

        SatelliteConfig mockedSatelliteConfig = Mockito.mock(SatelliteConfig.class);
        doReturn(targetSatS2FilePath).when(mockedSatelliteConfig).getSatelliteS2CellFile(any());
        SatelliteConfig mockedSatelliteConfig = mock(SatelliteConfig.class);
        File mMockSatS2File = mock(File.class);
        doReturn(mMockSatS2File).when(mockedSatelliteConfig).getSatelliteS2CellFile(any());
        doReturn(mockedSatelliteConfig).when(spySatelliteConfigParser).getConfig();
        assertEquals(targetSatS2FilePath,
        assertEquals(mMockSatS2File,
                spySatelliteConfigParser.getConfig().getSatelliteS2CellFile(mContext));
    }