< prev index next >

test/jdk/java/util/Calendar/Bug4766302.java

Print this page
*** 1,7 ***
  /*
!  * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   *
   * This code is free software; you can redistribute it and/or modify it
   * under the terms of the GNU General Public License version 2 only, as
   * published by the Free Software Foundation.
--- 1,7 ---
  /*
!  * Copyright (c) 2002, 2023, Oracle and/or its affiliates. All rights reserved.
   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   *
   * This code is free software; you can redistribute it and/or modify it
   * under the terms of the GNU General Public License version 2 only, as
   * published by the Free Software Foundation.

*** 22,32 ***
   */
  
  /*
   * @test
   * @bug 4766302
!  * @summary Make sure that computeTime call doesn't reset the isTimeSet value.
   */
  
  import java.util.GregorianCalendar;
  
! @SuppressWarnings("serial")
  public class Bug4766302 {
  
      static class MyCalendar extends GregorianCalendar {
- 
          boolean isTimeStillSet() {
              return isTimeSet;
          }
  
          protected void computeTime() {
              super.computeTime();
          }
      }
  
!     public static void main(String[] args) {
          MyCalendar cal = new MyCalendar();
          cal.computeTime();
!         if (!cal.isTimeStillSet()) {
-             throw new RuntimeException("computeTime() call reset isTimeSet.");
-         }
      }
  }
--- 22,37 ---
   */
  
  /*
   * @test
   * @bug 4766302
!  * @summary Make sure that calling computeTime doesn't reset the isTimeSet value.
+  * @run junit Bug4766302
   */
  
  import java.util.GregorianCalendar;
  
! import org.junit.jupiter.api.Test;
+ 
+ import static org.junit.jupiter.api.Assertions.assertTrue;
+ 
  public class Bug4766302 {
  
+     // Extend GregorianCalendar to check the protected value of isTimeSet
+     @SuppressWarnings("serial")
      static class MyCalendar extends GregorianCalendar {
          boolean isTimeStillSet() {
              return isTimeSet;
          }
  
          protected void computeTime() {
              super.computeTime();
          }
      }
  
!     // Check the value of isTimeStillSet() after calling computeTime()
+     @Test
+     public void validateIsTimeSetTest() {
          MyCalendar cal = new MyCalendar();
          cal.computeTime();
!         assertTrue(cal.isTimeStillSet(), "computeTime() call reset isTimeSet.");
      }
  }
< prev index next >