Home | History | Annotate | Download | only in interactions
      1 package com.android.contacts.interactions;
      2 
      3 import android.content.ContentValues;
      4 import android.provider.CallLog.Calls;
      5 import android.test.AndroidTestCase;
      6 import android.test.suitebuilder.annotation.SmallTest;
      7 
      8 import java.util.ArrayList;
      9 import java.util.List;
     10 
     11 /**
     12  * Tests {@link CallLogInteractionsLoader}
     13  */
     14 @SmallTest
     15 public class CallLogInteractionsLoaderTest extends AndroidTestCase {
     16 
     17     public void testCallLogInteractions_pruneDuplicates_containsDuplicates() {
     18         List<ContactInteraction> interactions = new ArrayList<>();
     19         int maxToRetrieve = 5;
     20 
     21         ContentValues interactionOneValues = new ContentValues();
     22         interactionOneValues.put(Calls.DATE, 1L);
     23         interactions.add(new CallLogInteraction(interactionOneValues));
     24 
     25         ContentValues interactionTwoValues = new ContentValues();
     26         interactionTwoValues.put(Calls.DATE, 1L);
     27         interactions.add(new CallLogInteraction(interactionTwoValues));
     28 
     29         interactions = CallLogInteractionsLoader.pruneDuplicateCallLogInteractions(interactions,
     30                 maxToRetrieve);
     31         assertEquals(1, interactions.size());
     32     }
     33 
     34     public void testCallLogInteractions_pruneDuplicates_containsNoDuplicates() {
     35         List<ContactInteraction> interactions = new ArrayList<>();
     36         int maxToRetrieve = 5;
     37 
     38         ContentValues interactionOneValues = new ContentValues();
     39         interactionOneValues.put(Calls.DATE, 1L);
     40         interactions.add(new CallLogInteraction(interactionOneValues));
     41 
     42         ContentValues interactionTwoValues = new ContentValues();
     43         interactionTwoValues.put(Calls.DATE, 5L);
     44         interactions.add(new CallLogInteraction(interactionTwoValues));
     45 
     46         interactions = CallLogInteractionsLoader.pruneDuplicateCallLogInteractions(interactions,
     47                 maxToRetrieve);
     48         assertEquals(2, interactions.size());
     49     }
     50 
     51     public void testCallLogInteractions_maxToRetrieve() {
     52         List<ContactInteraction> interactions = new ArrayList<>();
     53         int maxToRetrieve = 1;
     54 
     55         ContentValues interactionOneValues = new ContentValues();
     56         interactionOneValues.put(Calls.DATE, 1L);
     57         interactions.add(new CallLogInteraction(interactionOneValues));
     58 
     59         ContentValues interactionTwoValues = new ContentValues();
     60         interactionTwoValues.put(Calls.DATE, 5L);
     61         interactions.add(new CallLogInteraction(interactionTwoValues));
     62 
     63         interactions = CallLogInteractionsLoader.pruneDuplicateCallLogInteractions(interactions,
     64                 maxToRetrieve);
     65         assertEquals(1, interactions.size());
     66     }
     67 }
     68