• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package org.robolectric.android.controller;
2 
3 import static com.google.common.truth.Truth.assertThat;
4 
5 import android.app.Application;
6 import android.app.backup.BackupAgent;
7 import android.app.backup.BackupDataInput;
8 import android.app.backup.BackupDataOutput;
9 import android.os.ParcelFileDescriptor;
10 import androidx.test.core.app.ApplicationProvider;
11 import androidx.test.ext.junit.runners.AndroidJUnit4;
12 import java.io.IOException;
13 import org.junit.Test;
14 import org.junit.runner.RunWith;
15 import org.robolectric.Robolectric;
16 
17 @RunWith(AndroidJUnit4.class)
18 public class BackupAgentControllerTest {
19   private final BackupAgentController<MyBackupAgent> backupAgentController = Robolectric.buildBackupAgent(MyBackupAgent.class);
20 
21   @Test
shouldSetBaseContext()22   public void shouldSetBaseContext() throws Exception {
23     MyBackupAgent myBackupAgent = backupAgentController.get();
24     assertThat(myBackupAgent.getBaseContext())
25         .isEqualTo(((Application) ApplicationProvider.getApplicationContext()).getBaseContext());
26   }
27 
28   public static class MyBackupAgent extends BackupAgent {
29     @Override
onBackup(ParcelFileDescriptor parcelFileDescriptor, BackupDataOutput backupDataOutput, ParcelFileDescriptor parcelFileDescriptor1)30     public void onBackup(ParcelFileDescriptor parcelFileDescriptor, BackupDataOutput backupDataOutput, ParcelFileDescriptor parcelFileDescriptor1) throws IOException {
31       // no op
32     }
33 
34     @Override
onRestore(BackupDataInput backupDataInput, int i, ParcelFileDescriptor parcelFileDescriptor)35     public void onRestore(BackupDataInput backupDataInput, int i, ParcelFileDescriptor parcelFileDescriptor) throws IOException {
36       // no op
37     }
38   }
39 }
40