OSDN Git Service

feat: add messages class
authorhizumiaoba <56146205+hizumiaoba@users.noreply.github.com>
Sun, 12 Dec 2021 14:35:15 +0000 (23:35 +0900)
committerhizumiaoba <56146205+hizumiaoba@users.noreply.github.com>
Sun, 12 Dec 2021 14:35:15 +0000 (23:35 +0900)
src/com/ranfa/languages/List_en_US.properties [new file with mode: 0644]
src/com/ranfa/languages/List_ja_JP.properties [new file with mode: 0644]
src/com/ranfa/main/Messages.java [new file with mode: 0644]
src/test/LanguageTest.java [new file with mode: 0644]

diff --git a/src/com/ranfa/languages/List_en_US.properties b/src/com/ranfa/languages/List_en_US.properties
new file mode 100644 (file)
index 0000000..9be8304
--- /dev/null
@@ -0,0 +1 @@
+MSGCalcStart:Start!
\ No newline at end of file
diff --git a/src/com/ranfa/languages/List_ja_JP.properties b/src/com/ranfa/languages/List_ja_JP.properties
new file mode 100644 (file)
index 0000000..4259858
--- /dev/null
@@ -0,0 +1 @@
+MSGCalcStart:\u958b\u59cb\uff01
\ No newline at end of file
diff --git a/src/com/ranfa/main/Messages.java b/src/com/ranfa/main/Messages.java
new file mode 100644 (file)
index 0000000..0f64b50
--- /dev/null
@@ -0,0 +1,24 @@
+package com.ranfa.main;
+
+import java.util.Locale;
+import java.util.ResourceBundle;
+
+/*
+ * ja_JPはUTF-16BE
+ */
+public enum Messages {
+
+       MSGCalcStart;
+
+       @Override
+       public String toString() {
+               try {
+                       return ResourceBundle.getBundle("com.ranfa.languages.List", Locale.getDefault()).getString(name());
+               } catch(Exception e) {
+                       e.printStackTrace();
+                       System.exit(-1);
+                       return null;
+               }
+       }
+
+}
diff --git a/src/test/LanguageTest.java b/src/test/LanguageTest.java
new file mode 100644 (file)
index 0000000..a3b4422
--- /dev/null
@@ -0,0 +1,42 @@
+package test;
+
+import static org.junit.Assert.assertEquals;
+
+import java.util.Locale;
+
+import org.junit.After;
+import org.junit.Test;
+
+import com.ranfa.main.Messages;
+
+public class LanguageTest {
+
+       // Declare field
+       private Locale defaultLocale = Locale.getDefault();
+       private Locale jp = Locale.JAPAN;
+       private Locale us = Locale.US;
+
+       @Test
+       public void jpTest() {
+               // Set locale
+               Locale.setDefault(jp);
+
+               // asserts
+               assertEquals("開始!", Messages.MSGCalcStart.toString());
+       }
+
+       @Test
+       public void enTest() {
+               //set locale
+               Locale.setDefault(us);
+
+               // asserts
+               assertEquals("Start!", Messages.MSGCalcStart.toString());
+       }
+
+       @After
+       public void revertDefault() {
+               Locale.setDefault(defaultLocale);
+       }
+
+}