Merge "Avoid Calendar's unexpect change in snapToCycleDay()"
This commit is contained in:
@@ -298,8 +298,11 @@ public class NetworkPolicyManager {
|
|||||||
cal.set(Calendar.MINUTE, 0);
|
cal.set(Calendar.MINUTE, 0);
|
||||||
cal.set(Calendar.SECOND, 0);
|
cal.set(Calendar.SECOND, 0);
|
||||||
if (cycleDay > cal.getActualMaximum(Calendar.DAY_OF_MONTH)) {
|
if (cycleDay > cal.getActualMaximum(Calendar.DAY_OF_MONTH)) {
|
||||||
cal.set(Calendar.DAY_OF_MONTH, 1);
|
|
||||||
cal.add(Calendar.MONTH, 1);
|
cal.add(Calendar.MONTH, 1);
|
||||||
|
cal.set(Calendar.DAY_OF_MONTH, 1);
|
||||||
|
cal.set(Calendar.HOUR_OF_DAY, 0);
|
||||||
|
cal.set(Calendar.MINUTE, 0);
|
||||||
|
cal.set(Calendar.SECOND, 0);
|
||||||
cal.add(Calendar.SECOND, -1);
|
cal.add(Calendar.SECOND, -1);
|
||||||
} else {
|
} else {
|
||||||
cal.set(Calendar.DAY_OF_MONTH, cycleDay);
|
cal.set(Calendar.DAY_OF_MONTH, cycleDay);
|
||||||
|
|||||||
@@ -446,6 +446,17 @@ public class NetworkPolicyManagerServiceTest {
|
|||||||
assertTimeEquals(expectedCycle, actualCycle);
|
assertTimeEquals(expectedCycle, actualCycle);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testLastCycleBoundaryJanuaryDST() throws Exception {
|
||||||
|
final long currentTime = parseTime("1989-01-26T21:00:00.000Z");
|
||||||
|
final long expectedCycle = parseTime("1989-01-01T01:59:59.000Z");
|
||||||
|
|
||||||
|
final NetworkPolicy policy = new NetworkPolicy(
|
||||||
|
sTemplateWifi, 32, "America/Argentina/Buenos_Aires", 1024L, 1024L, false);
|
||||||
|
final long actualCycle = computeLastCycleBoundary(currentTime, policy);
|
||||||
|
assertTimeEquals(expectedCycle, actualCycle);
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testNetworkPolicyAppliedCycleLastMonth() throws Exception {
|
public void testNetworkPolicyAppliedCycleLastMonth() throws Exception {
|
||||||
NetworkState[] state = null;
|
NetworkState[] state = null;
|
||||||
|
|||||||
Reference in New Issue
Block a user