Use proto in contextualCard object

Test: make RunSettingsRoboTests
Change-Id: Ic7af69047e33e3b10a993dd9820b4c6ceb23666c
This commit is contained in:
Raff Tsai
2018-10-09 03:15:04 +08:00
committed by Fan Zhang
parent a4c42eb024
commit 8cd659af19
3 changed files with 17 additions and 19 deletions

Binary file not shown.

View File

@@ -21,14 +21,12 @@ import static android.provider.SettingsSlicesContract.KEY_WIFI;
import android.annotation.Nullable; import android.annotation.Nullable;
import com.android.settings.homepage.deviceinfo.DataUsageSlice; import com.android.settings.homepage.deviceinfo.DataUsageSlice;
import com.android.settings.intelligence.ContextualCardProto.ContextualCard;
import com.android.settings.intelligence.ContextualCardProto.ContextualCardList;
import com.android.settings.wifi.WifiSlice; import com.android.settings.wifi.WifiSlice;
import com.google.android.settings.intelligence.libs.contextualcards.ContextualCard;
import com.google.android.settings.intelligence.libs.contextualcards.ContextualCardProvider; import com.google.android.settings.intelligence.libs.contextualcards.ContextualCardProvider;
import java.util.ArrayList;
import java.util.List;
/** Provides dynamic card for SettingsIntelligence. */ /** Provides dynamic card for SettingsIntelligence. */
public class SettingsContextualCardProvider extends ContextualCardProvider { public class SettingsContextualCardProvider extends ContextualCardProvider {
@@ -36,21 +34,22 @@ public class SettingsContextualCardProvider extends ContextualCardProvider {
@Override @Override
@Nullable @Nullable
public List<ContextualCard> getContextualCards() { public ContextualCardList getContextualCards() {
final List<ContextualCard> cards = new ArrayList<>();
final ContextualCard wifiCard = final ContextualCard wifiCard =
new ContextualCard.Builder() ContextualCard.newBuilder()
.setSliceUri(WifiSlice.WIFI_URI.toString()) .setSliceUri(WifiSlice.WIFI_URI.toString())
.setName(KEY_WIFI) .setCardName(KEY_WIFI)
.build(); .build();
final ContextualCard dataUsageCard = final ContextualCard dataUsageCard =
new ContextualCard.Builder() ContextualCard.newBuilder()
.setSliceUri(DataUsageSlice.DATA_USAGE_CARD_URI.toString()) .setSliceUri(DataUsageSlice.DATA_USAGE_CARD_URI.toString())
.setName(DataUsageSlice.PATH_DATA_USAGE_CARD) .setCardName(DataUsageSlice.PATH_DATA_USAGE_CARD)
.build(); .build();
final ContextualCardList cards = ContextualCardList.newBuilder()
.addCard(wifiCard)
.addCard(dataUsageCard)
.build();
cards.add(wifiCard);
cards.add(dataUsageCard);
return cards; return cards;
} }
} }

View File

@@ -24,9 +24,9 @@ import android.content.Context;
import android.net.Uri; import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import com.android.settings.intelligence.ContextualCardProto.ContextualCardList;
import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.google.android.settings.intelligence.libs.contextualcards.ContextualCard;
import com.google.android.settings.intelligence.libs.contextualcards.ContextualCardProvider; import com.google.android.settings.intelligence.libs.contextualcards.ContextualCardProvider;
import org.junit.Before; import org.junit.Before;
@@ -34,8 +34,6 @@ import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.robolectric.RuntimeEnvironment; import org.robolectric.RuntimeEnvironment;
import java.util.ArrayList;
@RunWith(SettingsRobolectricTestRunner.class) @RunWith(SettingsRobolectricTestRunner.class)
public class SettingsContextualCardProviderTest { public class SettingsContextualCardProviderTest {
@@ -54,11 +52,12 @@ public class SettingsContextualCardProviderTest {
} }
@Test @Test
public void contentProviderCall_returnCorrectSize() { public void contentProviderCall_returnCorrectSize() throws Exception {
final Bundle returnValue = final Bundle returnValue =
mResolver.call(mUri, ContextualCardProvider.METHOD_GET_CARD_LIST, "", null); mResolver.call(mUri, ContextualCardProvider.METHOD_GET_CARD_LIST, "", null);
final ArrayList<ContextualCard> cards = final ContextualCardList cards =
returnValue.getParcelableArrayList(ContextualCardProvider.BUNDLE_CARD_LIST); ContextualCardList.parseFrom(
assertThat(cards.size()).isEqualTo(2); returnValue.getByteArray(ContextualCardProvider.BUNDLE_CARD_LIST));
assertThat(cards.getCardCount()).isEqualTo(2);
} }
} }