changes.add(new MSentryPermChange(1, update));
assertEquals("Collapsed string should match", "[1]",
MSentryUtil.collapseChangeIDsToString(changes));
assertTrue("List of changes should be consecutive", MSentryUtil.isConsecutive(changes));
changes.add(new MSentryPermChange(2, update));
assertEquals("Collapsed string should match", "[1, 2]",
MSentryUtil.collapseChangeIDsToString(changes));
assertTrue("List of changes should be consecutive", MSentryUtil.isConsecutive(changes));
changes.add(new MSentryPermChange(4, update));
assertEquals("Collapsed string should match", "[1, 2, 4]",
MSentryUtil.collapseChangeIDsToString(changes));
assertFalse("List of changes should not be consecutive", MSentryUtil.isConsecutive(changes));
changes.add(new MSentryPermChange(5, update));
assertEquals("Collapsed string should match", "[1, 2, 4, 5]",
MSentryUtil.collapseChangeIDsToString(changes));
assertFalse("List of changes should not be consecutive", MSentryUtil.isConsecutive(changes));
changes.add(new MSentryPermChange(6, update));
assertEquals("Collapsed string should match", "[1, 2, 4-6]",
MSentryUtil.collapseChangeIDsToString(changes));
assertFalse("List of changes should not be consecutive", MSentryUtil.isConsecutive(changes));
changes.add(new MSentryPermChange(8, update));
assertEquals("Collapsed string should match", "[1, 2, 4-6, 8]",
MSentryUtil.collapseChangeIDsToString(changes));