diff --git a/tests/src/com/android/calendar/UtilsTests.java b/tests/src/com/android/calendar/UtilsTests.java
index 2b474d6..9c12872 100644
--- a/tests/src/com/android/calendar/UtilsTests.java
+++ b/tests/src/com/android/calendar/UtilsTests.java
@@ -20,7 +20,6 @@
 import android.database.MatrixCursor;
 import android.provider.CalendarContract.CalendarCache;
 import android.test.mock.MockResources;
-import android.test.suitebuilder.annotation.Smoke;
 import android.text.format.Time;
 import android.util.DisplayMetrics;
 
@@ -173,7 +172,6 @@
         setTimezone(Time.getCurrentTimezone());
     }
 
-    @Smoke
     @SmallTest
     public void testGetWeeksSinceEpochFromJulianDay() {
         for (int i = 0; i < JULIAN_DAYS.length; i++) {
@@ -186,7 +184,6 @@
         }
     }
 
-    @Smoke
     @SmallTest
     public void testGetJulianMondayFromWeeksSinceEpoch() {
         for (int i = 0; i < WEEKS_FOR_JULIAN_MONDAYS.length; i++) {
diff --git a/tests/src/com/android/calendar/WeekNumberTest.java b/tests/src/com/android/calendar/WeekNumberTest.java
index d2aa07f..0b26ff2 100644
--- a/tests/src/com/android/calendar/WeekNumberTest.java
+++ b/tests/src/com/android/calendar/WeekNumberTest.java
@@ -17,7 +17,6 @@
 package com.android.calendar;
 
 import android.test.AndroidTestCase;
-import android.test.suitebuilder.annotation.Smoke;
 import android.text.format.DateUtils;
 import android.text.format.Time;
 import android.util.Log;
@@ -200,7 +199,6 @@
         super.setUp();
     }
 
-    @Smoke
     @SmallTest
     public void testAll() throws Exception {
         int len = tests.length;
