Home | History | Annotate | Download | only in duration
      1 /* GENERATED SOURCE. DO NOT MODIFY. */
      2 //  2016 and later: Unicode, Inc. and others.
      3 // License & terms of use: http://www.unicode.org/copyright.html#License
      4 /*
      5 ******************************************************************************
      6 * Copyright (C) 2007-2010, International Business Machines Corporation and   *
      7 * others. All Rights Reserved.                                               *
      8 ******************************************************************************
      9 */
     10 
     11 // Copyright 2006 Google Inc.  All Rights Reserved.
     12 
     13 package android.icu.dev.test.duration;
     14 
     15 import org.junit.Test;
     16 
     17 import android.icu.dev.test.TestFmwk;
     18 import android.icu.impl.duration.Period;
     19 import android.icu.impl.duration.TimeUnit;
     20 
     21 public class PeriodTest extends TestFmwk {
     22     @Test
     23     public void testIsSet() {
     24         Period p = Period.at(0, TimeUnit.YEAR);
     25         assertTrue(null, p.isSet());
     26         assertTrue(null, p.isSet(TimeUnit.YEAR));
     27         assertFalse(null, p.isSet(TimeUnit.MONTH));
     28         assertEquals(null, 0f, p.getCount(TimeUnit.YEAR), .1f);
     29         p = p.omit(TimeUnit.YEAR);
     30         assertFalse(null, p.isSet(TimeUnit.YEAR));
     31     }
     32 
     33     @Test
     34     public void testMoreLessThan() {
     35         Period p = Period.moreThan(1, TimeUnit.YEAR);
     36         assertTrue(null, p.isMoreThan());
     37         assertFalse(null, p.isLessThan());
     38         p = p.at();
     39         assertFalse(null, p.isMoreThan());
     40         assertFalse(null, p.isLessThan());
     41         p = p.lessThan();
     42         assertFalse(null, p.isMoreThan());
     43         assertTrue(null, p.isLessThan());
     44         p = p.moreThan();
     45         assertTrue(null, p.isMoreThan());
     46         assertFalse(null, p.isLessThan());
     47 
     48         p = Period.lessThan(1, TimeUnit.YEAR);
     49         assertFalse(null, p.isMoreThan());
     50         assertTrue(null, p.isLessThan());
     51 
     52         p = Period.at(1, TimeUnit.YEAR);
     53         assertFalse(null, p.isMoreThan());
     54         assertFalse(null, p.isLessThan());
     55 
     56         assertEquals(null, 1f, p.getCount(TimeUnit.YEAR), .1f);
     57     }
     58 
     59     @Test
     60     public void testFuturePast() {
     61         Period p = Period.at(1, TimeUnit.YEAR).inFuture();
     62         assertTrue(null, p.isInFuture());
     63         p = p.inPast();
     64         assertFalse(null, p.isInFuture());
     65         p = p.inFuture(true);
     66         assertTrue(null, p.isInFuture());
     67         p = p.inFuture(false);
     68         assertFalse(null, p.isInFuture());
     69     }
     70 
     71     @Test
     72     public void testAnd() {
     73         Period p = Period.at(1, TimeUnit.YEAR).and(3, TimeUnit.MONTH)
     74                 .inFuture();
     75         assertTrue(null, p.isSet(TimeUnit.YEAR));
     76         assertTrue(null, p.isSet(TimeUnit.MONTH));
     77         assertEquals(null, 3f, p.getCount(TimeUnit.MONTH), .1f);
     78         p = p.and(2, TimeUnit.MONTH);
     79         assertEquals(null, 2f, p.getCount(TimeUnit.MONTH), .1f);
     80     }
     81 
     82     @Test
     83     public void testInvalidCount() {
     84         try {
     85             Period.at(-1, TimeUnit.YEAR);
     86             fail("at -1");
     87         } catch (IllegalArgumentException e) {
     88             // passed
     89         }
     90         try {
     91             Period.moreThan(-1, TimeUnit.YEAR);
     92             fail("moreThan -1");
     93         } catch (IllegalArgumentException e) {
     94             // passed
     95         }
     96         try {
     97             Period.lessThan(-1, TimeUnit.YEAR);
     98             fail("lessThan -1");
     99         } catch (IllegalArgumentException e) {
    100             // passed
    101         }
    102         Period p = Period.at(1, TimeUnit.YEAR);
    103         try {
    104             p = p.and(-1, TimeUnit.MONTH);
    105             fail("and -1");
    106         } catch (IllegalArgumentException e) {
    107             // passed
    108         }
    109     }
    110 }
    111