+++ /dev/null
-/*\r
- * Created on 2005/06/09\r
- *\r
- */\r
-package jp.co.areaweb.tools.core;\r
-\r
-import junit.framework.TestCase;\r
-\r
-/**\r
- * @author y_hayashi\r
- *\r
- */\r
-public class TaxTest extends TestCase {\r
-\r
- /**\r
- * テスト1\r
- * 総額から税引き価格を求める\r
- */\r
- public void test001() throws Exception {\r
- assertEquals(95L, Tax.calcBody(100L));\r
- assertEquals(5L, Tax.calcTax(100L));\r
- assertEquals(5L, Tax.toTax(95L));\r
- assertEquals(100L, Tax.toTotal(95L));\r
- }\r
- \r
- /**\r
- * テスト2\r
- * 端数は四捨五入されること\r
- */\r
- public void test002() throws Exception {\r
- assertEquals(99L, Tax.calcBody(104L)); // 99.04\r
- assertEquals(5L, Tax.calcTax(104L));\r
- assertEquals(100L, Tax.calcBody(105L)); // 100.0\r
- assertEquals(5L, Tax.calcTax(105L));\r
- assertEquals(101L, Tax.calcBody(106L)); // 100.9\r
- assertEquals(5L, Tax.calcTax(106L));\r
- assertEquals(102L, Tax.calcBody(107L)); // 101.9\r
- assertEquals(5L, Tax.calcTax(106L));\r
-\r
- assertEquals(5L, Tax.toTax(99L));\r
- assertEquals(104L, Tax.toTotal(99L));\r
- assertEquals(5L, Tax.toTax(100L));\r
- assertEquals(105L, Tax.toTotal(100L));\r
- assertEquals(5L, Tax.toTax(101L));\r
- assertEquals(106L, Tax.toTotal(101L));\r
- assertEquals(5L, Tax.toTax(102L));\r
- assertEquals(107L, Tax.toTotal(102L));\r
- }\r
-\r
- /**\r
- * テスト3\r
- * 10兆円までは計算できる。\r
- */\r
- public void test003() throws Exception {\r
- try {\r
- assertEquals(9523809523810L, Tax.calcBody(10000000000000L));\r
- assertEquals(476190476190L, Tax.calcTax(10000000000000L));\r
- assertEquals(500000000000L, Tax.toTax(10000000000000L));\r
- assertEquals(10500000000000L, Tax.toTotal(10000000000000L));\r
- }\r
- catch (Exception e) {\r
- fail(); // 例外が発生\r
- }\r
- }\r
-\r
- /**\r
- * テスト4\r
- * 数値が負の場合\r
- */\r
- public void test004() throws Exception {\r
- assertEquals(-95L, Tax.calcBody(-100L));\r
- assertEquals(-5L, Tax.calcTax(-100L));\r
- assertEquals(-5L, Tax.toTax(-95L));\r
- assertEquals(-100L, Tax.toTotal(-95L));\r
- }\r
-}\r