File: ConversionCategoryTest.java

package info (click to toggle)
checker-framework-java 3.2.0%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 22,840 kB
  • sloc: java: 145,910; xml: 839; sh: 518; makefile: 401; perl: 26
file content (69 lines) | stat: -rw-r--r-- 3,017 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
import org.checkerframework.checker.i18nformatter.qual.I18nConversionCategory;
import org.checkerframework.checker.i18nformatter.qual.I18nFormat;

public class ConversionCategoryTest {

    public static void main(String[] args) {
        @I18nFormat({I18nConversionCategory.GENERAL}) String s1 = "{0}";

        @I18nFormat({I18nConversionCategory.DATE}) String s2 = "{0, date}";
        @I18nFormat({I18nConversionCategory.NUMBER}) String s3 = "{0, number}";

        @I18nFormat({I18nConversionCategory.NUMBER, I18nConversionCategory.NUMBER}) String s4 = "{1} {0, date}";
        // :: warning: (i18nformat.missing.arguments)
        s4 = "{0}";

        @I18nFormat({I18nConversionCategory.GENERAL, I18nConversionCategory.NUMBER}) String s5 = "{0} and {1, number}";
        @I18nFormat({I18nConversionCategory.UNUSED, I18nConversionCategory.NUMBER}) String s6 = "{1, number}";
        @I18nFormat({I18nConversionCategory.UNUSED, I18nConversionCategory.DATE}) String s7 = "{1, date}";

        @I18nFormat({
            I18nConversionCategory.UNUSED,
            I18nConversionCategory.UNUSED,
            I18nConversionCategory.NUMBER
        })
        String s8 = "{2}";

        @I18nFormat({
            I18nConversionCategory.GENERAL,
            I18nConversionCategory.DATE,
            I18nConversionCategory.UNUSED,
            I18nConversionCategory.NUMBER
        })
        String s9 = "{3, number} {0} {1, time}";

        @I18nFormat({
            I18nConversionCategory.GENERAL,
            I18nConversionCategory.DATE,
            I18nConversionCategory.DATE,
            I18nConversionCategory.NUMBER,
            I18nConversionCategory.UNUSED,
            I18nConversionCategory.GENERAL
        })
        String s10 = "{0} {1, date} {2, time} {3, number} {5}";

        @I18nFormat({I18nConversionCategory.UNUSED, I18nConversionCategory.DATE}) String s11 = "{1} {1, date}";

        @I18nFormat({I18nConversionCategory.UNUSED, I18nConversionCategory.NUMBER}) String s12 = "{1, number} {1, date}";

        @I18nFormat({I18nConversionCategory.DATE}) String s13 = "{0, date} {0, date}";

        // :: error: (i18nformat.excess.arguments) :: error: (assignment.type.incompatible)
        @I18nFormat({I18nConversionCategory.GENERAL}) String b1 = "{1}";

        // :: error: (assignment.type.incompatible)
        @I18nFormat({I18nConversionCategory.DATE}) String b2 = "{0, number}";

        // :: error: (assignment.type.incompatible)
        @I18nFormat({I18nConversionCategory.GENERAL}) String b3 = "{0, number}";

        // :: error: (assignment.type.incompatible)
        @I18nFormat({I18nConversionCategory.GENERAL}) String b4 = "{0, date}";

        // :: error: (i18nformat.excess.arguments) :: error: (assignment.type.incompatible)
        @I18nFormat({I18nConversionCategory.DATE}) String b5 = "{0, date} {1, date}";

        // :: warning: (i18nformat.missing.arguments)
        @I18nFormat({I18nConversionCategory.DATE, I18nConversionCategory.DATE}) String b6 = "{0, date}";
    }
}