Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a235e076db | ||
|
|
4995e3f9d0 | ||
|
|
554c474e4d | ||
|
|
316e9b7b88 | ||
|
|
b220249cd7 | ||
|
|
147499032b | ||
|
|
954c841944 | ||
|
|
1cff6441f7 | ||
|
|
622294e74b | ||
|
|
12a4bb0efa | ||
|
|
6abe5ae1a2 | ||
|
|
135d39b751 |
@@ -16,7 +16,7 @@ lunar是一款无第三方依赖的公历(阳历)和农历(阴历、老黄历)
|
||||
<dependency>
|
||||
<groupId>cn.6tail</groupId>
|
||||
<artifactId>lunar</artifactId>
|
||||
<version>1.1.10</version>
|
||||
<version>1.1.14</version>
|
||||
</dependency>
|
||||
```
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ lunar is a calendar library for Solar and Chinese Lunar.
|
||||
<dependency>
|
||||
<groupId>cn.6tail</groupId>
|
||||
<artifactId>lunar</artifactId>
|
||||
<version>1.1.10</version>
|
||||
<version>1.1.14</version>
|
||||
</dependency>
|
||||
```
|
||||
|
||||
|
||||
2
pom.xml
2
pom.xml
@@ -7,7 +7,7 @@
|
||||
<groupId>cn.6tail</groupId>
|
||||
<artifactId>lunar</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<version>1.1.10</version>
|
||||
<version>1.1.14</version>
|
||||
<name>${project.groupId}:${project.artifactId}</name>
|
||||
<url>https://github.com/6tail/lunar-java</url>
|
||||
<description>a calendar library for Solar and Chinese Lunar</description>
|
||||
|
||||
@@ -30,11 +30,11 @@ public class EightChar {
|
||||
|
||||
{
|
||||
//阳
|
||||
put("甲", 11);
|
||||
put("丙", 2);
|
||||
put("戊", 2);
|
||||
put("庚", 5);
|
||||
put("壬", 8);
|
||||
put("甲", 1);
|
||||
put("丙", 10);
|
||||
put("戊", 10);
|
||||
put("庚", 7);
|
||||
put("壬", 4);
|
||||
//阴
|
||||
put("乙", 6);
|
||||
put("丁", 9);
|
||||
@@ -524,5 +524,67 @@ public class EightChar {
|
||||
return new Yun(this, gender);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取年柱所在旬
|
||||
* @return 旬
|
||||
*/
|
||||
public String getYearXun(){
|
||||
return lunar.getYearXunExact();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取年柱旬空(空亡)
|
||||
* @return 旬空(空亡)
|
||||
*/
|
||||
public String getYearXunKong(){
|
||||
return lunar.getYearXunKongExact();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取月柱所在旬
|
||||
* @return 旬
|
||||
*/
|
||||
public String getMonthXun(){
|
||||
return lunar.getMonthXunExact();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取月柱旬空(空亡)
|
||||
* @return 旬空(空亡)
|
||||
*/
|
||||
public String getMonthXunKong(){
|
||||
return lunar.getMonthXunKongExact();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取日柱所在旬
|
||||
* @return 旬
|
||||
*/
|
||||
public String getDayXun(){
|
||||
return lunar.getDayXunExact();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取日柱旬空(空亡)
|
||||
* @return 旬空(空亡)
|
||||
*/
|
||||
public String getDayXunKong(){
|
||||
return lunar.getDayXunKongExact();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取时柱所在旬
|
||||
* @return 旬
|
||||
*/
|
||||
public String getTimeXun(){
|
||||
return lunar.getTimeXun();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取时柱旬空(空亡)
|
||||
* @return 旬空(空亡)
|
||||
*/
|
||||
public String getTimeXunKong(){
|
||||
return lunar.getTimeXunKong();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2389,4 +2389,132 @@ public class Lunar{
|
||||
}
|
||||
return new Lunar(y,m,d,hour,minute,second);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取年所在旬(以正月初一作为新年的开始)
|
||||
* @return 旬
|
||||
*/
|
||||
public String getYearXun(){
|
||||
return LunarUtil.getXun(getYearInGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取年所在旬(以立春当天作为新年的开始)
|
||||
* @return 旬
|
||||
*/
|
||||
public String getYearXunByLiChun(){
|
||||
return LunarUtil.getXun(getYearInGanZhiByLiChun());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取年所在旬(以立春交接时刻作为新年的开始)
|
||||
* @return 旬
|
||||
*/
|
||||
public String getYearXunExact(){
|
||||
return LunarUtil.getXun(getYearInGanZhiExact());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取值年空亡(以正月初一作为新年的开始)
|
||||
* @return 空亡(旬空)
|
||||
*/
|
||||
public String getYearXunKong(){
|
||||
return LunarUtil.getXunKong(getYearInGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取值年空亡(以立春当天作为新年的开始)
|
||||
* @return 空亡(旬空)
|
||||
*/
|
||||
public String getYearXunKongByLiChun(){
|
||||
return LunarUtil.getXunKong(getYearInGanZhiByLiChun());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取值年空亡(以立春交接时刻作为新年的开始)
|
||||
* @return 空亡(旬空)
|
||||
*/
|
||||
public String getYearXunKongExact(){
|
||||
return LunarUtil.getXunKong(getYearInGanZhiExact());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取月所在旬(以节交接当天起算)
|
||||
* @return 旬
|
||||
*/
|
||||
public String getMonthXun(){
|
||||
return LunarUtil.getXun(getMonthInGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取月所在旬(以节交接时刻起算)
|
||||
* @return 旬
|
||||
*/
|
||||
public String getMonthXunExact(){
|
||||
return LunarUtil.getXun(getMonthInGanZhiExact());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取值月空亡(以节交接当天起算)
|
||||
* @return 空亡(旬空)
|
||||
*/
|
||||
public String getMonthXunKong(){
|
||||
return LunarUtil.getXunKong(getMonthInGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取值月空亡(以节交接时刻起算)
|
||||
* @return 空亡(旬空)
|
||||
*/
|
||||
public String getMonthXunKongExact(){
|
||||
return LunarUtil.getXunKong(getMonthInGanZhiExact());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取日所在旬(以节交接当天起算)
|
||||
* @return 旬
|
||||
*/
|
||||
public String getDayXun(){
|
||||
return LunarUtil.getXun(getDayInGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取日所在旬(晚子时算第二天)
|
||||
* @return 旬
|
||||
*/
|
||||
public String getDayXunExact(){
|
||||
return LunarUtil.getXun(getDayInGanZhiExact());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取值日空亡
|
||||
* @return 空亡(旬空)
|
||||
*/
|
||||
public String getDayXunKong(){
|
||||
return LunarUtil.getXunKong(getDayInGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取值日空亡(晚子时算第二天)
|
||||
* @return 空亡(旬空)
|
||||
*/
|
||||
public String getDayXunKongExact(){
|
||||
return LunarUtil.getXunKong(getDayInGanZhiExact());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取时辰所在旬
|
||||
* @return 旬
|
||||
*/
|
||||
public String getTimeXun(){
|
||||
return LunarUtil.getXun(getTimeInGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取值时空亡
|
||||
* @return 空亡(旬空)
|
||||
*/
|
||||
public String getTimeXunKong(){
|
||||
return LunarUtil.getXunKong(getTimeInGanZhi());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -324,15 +324,10 @@ public class Solar{
|
||||
l.add(f);
|
||||
}
|
||||
//计算几月第几个星期几对应的节日
|
||||
//第几周
|
||||
int weekInMonth = calendar.get(Calendar.WEEK_OF_MONTH);
|
||||
int weeks = (int)Math.ceil(day/7D);
|
||||
//星期几,0代表星期天
|
||||
int week = getWeek();
|
||||
//星期天很奇葩,会多算一周,需要减掉
|
||||
if(0==week){
|
||||
weekInMonth--;
|
||||
}
|
||||
f = SolarUtil.WEEK_FESTIVAL.get(month+"-"+weekInMonth+"-"+week);
|
||||
f = SolarUtil.WEEK_FESTIVAL.get(month+"-"+weeks+"-"+week);
|
||||
if(null!=f){
|
||||
l.add(f);
|
||||
}
|
||||
|
||||
@@ -100,6 +100,22 @@ public class DaYun {
|
||||
return LunarUtil.JIA_ZI[offset];
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所在旬
|
||||
* @return 旬
|
||||
*/
|
||||
public String getXun(){
|
||||
return LunarUtil.getXun(getGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取旬空(空亡)
|
||||
* @return 旬空(空亡)
|
||||
*/
|
||||
public String getXunKong(){
|
||||
return LunarUtil.getXunKong(getGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取流年
|
||||
*
|
||||
|
||||
@@ -61,6 +61,26 @@ public class LiuNian {
|
||||
return LunarUtil.JIA_ZI[offset];
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所在旬
|
||||
* @return 旬
|
||||
*/
|
||||
public String getXun(){
|
||||
return LunarUtil.getXun(getGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取旬空(空亡)
|
||||
* @return 旬空(空亡)
|
||||
*/
|
||||
public String getXunKong(){
|
||||
return LunarUtil.getXunKong(getGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取流月
|
||||
* @return 流月
|
||||
*/
|
||||
public LiuYue[] getLiuYue() {
|
||||
int n = 12;
|
||||
LiuYue[] l = new LiuYue[n];
|
||||
|
||||
@@ -61,4 +61,20 @@ public class LiuYue {
|
||||
String zhi = LunarUtil.ZHI[(index + LunarUtil.BASE_MONTH_ZHI_INDEX) % 12 + 1];
|
||||
return gan + zhi;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所在旬
|
||||
* @return 旬
|
||||
*/
|
||||
public String getXun(){
|
||||
return LunarUtil.getXun(getGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取旬空(空亡)
|
||||
* @return 旬空(空亡)
|
||||
*/
|
||||
public String getXunKong(){
|
||||
return LunarUtil.getXunKong(getGanZhi());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,4 +71,20 @@ public class XiaoYun {
|
||||
offset %= size;
|
||||
return LunarUtil.JIA_ZI[offset];
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所在旬
|
||||
* @return 旬
|
||||
*/
|
||||
public String getXun(){
|
||||
return LunarUtil.getXun(getGanZhi());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取旬空(空亡)
|
||||
* @return 旬空(空亡)
|
||||
*/
|
||||
public String getXunKong(){
|
||||
return LunarUtil.getXunKong(getGanZhi());
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -31,6 +31,10 @@ public class LunarUtil{
|
||||
public static final int[] LEAP_MONTH_YEAR = {6,14,19,25,33,36,38,41,44,52,55,79,117,136,147,150,155,158,185,193};
|
||||
/** 闰月表 */
|
||||
public static final int[] LUNAR_MONTH = {0x00,0x04,0xad,0x08,0x5a,0x01,0xd5,0x54,0xb4,0x09,0x64,0x05,0x59,0x45,0x95,0x0a,0xa6,0x04,0x55,0x24,0xad,0x08,0x5a,0x62,0xda,0x04,0xb4,0x05,0xb4,0x55,0x52,0x0d,0x94,0x0a,0x4a,0x2a,0x56,0x02,0x6d,0x71,0x6d,0x01,0xda,0x02,0xd2,0x52,0xa9,0x05,0x49,0x0d,0x2a,0x45,0x2b,0x09,0x56,0x01,0xb5,0x20,0x6d,0x01,0x59,0x69,0xd4,0x0a,0xa8,0x05,0xa9,0x56,0xa5,0x04,0x2b,0x09,0x9e,0x38,0xb6,0x08,0xec,0x74,0x6c,0x05,0xd4,0x0a,0xe4,0x6a,0x52,0x05,0x95,0x0a,0x5a,0x42,0x5b,0x04,0xb6,0x04,0xb4,0x22,0x6a,0x05,0x52,0x75,0xc9,0x0a,0x52,0x05,0x35,0x55,0x4d,0x0a,0x5a,0x02,0x5d,0x31,0xb5,0x02,0x6a,0x8a,0x68,0x05,0xa9,0x0a,0x8a,0x6a,0x2a,0x05,0x2d,0x09,0xaa,0x48,0x5a,0x01,0xb5,0x09,0xb0,0x39,0x64,0x05,0x25,0x75,0x95,0x0a,0x96,0x04,0x4d,0x54,0xad,0x04,0xda,0x04,0xd4,0x44,0xb4,0x05,0x54,0x85,0x52,0x0d,0x92,0x0a,0x56,0x6a,0x56,0x02,0x6d,0x02,0x6a,0x41,0xda,0x02,0xb2,0xa1,0xa9,0x05,0x49,0x0d,0x0a,0x6d,0x2a,0x09,0x56,0x01,0xad,0x50,0x6d,0x01,0xd9,0x02,0xd1,0x3a,0xa8,0x05,0x29,0x85,0xa5,0x0c,0x2a,0x09,0x96,0x54,0xb6,0x08,0x6c,0x09,0x64,0x45,0xd4,0x0a,0xa4,0x05,0x51,0x25,0x95,0x0a,0x2a,0x72,0x5b,0x04,0xb6,0x04,0xac,0x52,0x6a,0x05,0xd2,0x0a,0xa2,0x4a,0x4a,0x05,0x55,0x94,0x2d,0x0a,0x5a,0x02,0x75,0x61,0xb5,0x02,0x6a,0x03,0x61,0x45,0xa9,0x0a,0x4a,0x05,0x25,0x25,0x2d,0x09,0x9a,0x68,0xda,0x08,0xb4,0x09,0xa8,0x59,0x54,0x03,0xa5,0x0a,0x91,0x3a,0x96,0x04,0xad,0xb0,0xad,0x04,0xda,0x04,0xf4,0x62,0xb4,0x05,0x54,0x0b,0x44,0x5d,0x52,0x0a,0x95,0x04,0x55,0x22,0x6d,0x02,0x5a,0x71,0xda,0x02,0xaa,0x05,0xb2,0x55,0x49,0x0b,0x4a,0x0a,0x2d,0x39,0x36,0x01,0x6d,0x80,0x6d,0x01,0xd9,0x02,0xe9,0x6a,0xa8,0x05,0x29,0x0b,0x9a,0x4c,0xaa,0x08,0xb6,0x08,0xb4,0x38,0x6c,0x09,0x54,0x75,0xd4,0x0a,0xa4,0x05,0x45,0x55,0x95,0x0a,0x9a,0x04,0x55,0x44,0xb5,0x04,0x6a,0x82,0x6a,0x05,0xd2,0x0a,0x92,0x6a,0x4a,0x05,0x55,0x0a,0x2a,0x4a,0x5a,0x02,0xb5,0x02,0xb2,0x31,0x69,0x03,0x31,0x73,0xa9,0x0a,0x4a,0x05,0x2d,0x55,0x2d,0x09,0x5a,0x01,0xd5,0x48,0xb4,0x09,0x68,0x89,0x54,0x0b,0xa4,0x0a,0xa5,0x6a,0x95,0x04,0xad,0x08,0x6a,0x44,0xda,0x04,0x74,0x05,0xb0,0x25,0x54,0x03};
|
||||
/** 旬 */
|
||||
public static final String[] XUN = {"甲子","甲戌","甲申","甲午","甲辰","甲寅"};
|
||||
/** 旬空 */
|
||||
public static final String[] XUN_KONG = {"戌亥","申酉","午未","辰巳","寅卯","子丑"};
|
||||
/** 天干 */
|
||||
public static final String[] GAN = {"","甲","乙","丙","丁","戊","己","庚","辛","壬","癸"};
|
||||
/** 喜神方位,《喜神方位歌》:甲己在艮乙庚乾,丙辛坤位喜神安. 丁壬只在离宫坐,戊癸原在在巽间。 */
|
||||
@@ -1444,4 +1448,51 @@ public class LunarUtil{
|
||||
}
|
||||
return l;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取干支所在旬下标,0-5
|
||||
* @param ganZhi 干支
|
||||
* @return 旬下标,0-5
|
||||
*/
|
||||
protected static int getXunIndex(String ganZhi){
|
||||
String gan = ganZhi.substring(0,1);
|
||||
String zhi = ganZhi.substring(1);
|
||||
int ganIndex = 0;
|
||||
int zhiIndex = 0;
|
||||
for(int i=0,j=GAN.length;i<j;i++){
|
||||
if(GAN[i].equals(gan)){
|
||||
ganIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
for(int i=0,j=ZHI.length;i<j;i++){
|
||||
if(ZHI[i].equals(zhi)){
|
||||
zhiIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
int diff = ganIndex - zhiIndex;
|
||||
if(diff<0){
|
||||
diff += 12;
|
||||
}
|
||||
return diff/2;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取干支所在旬
|
||||
* @param ganZhi 干支
|
||||
* @return 旬
|
||||
*/
|
||||
public static String getXun(String ganZhi){
|
||||
return XUN[getXunIndex(ganZhi)];
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取干支所在旬对应的旬空(空亡)
|
||||
* @param ganZhi 干支
|
||||
* @return 旬空(空亡)
|
||||
*/
|
||||
public static String getXunKong(String ganZhi){
|
||||
return XUN_KONG[getXunIndex(ganZhi)];
|
||||
}
|
||||
}
|
||||
|
||||
@@ -114,6 +114,7 @@ public class SolarUtil{
|
||||
put("10-13",Collections.nCopies(1,"中国少年先锋队诞辰日"));
|
||||
put("10-25",Collections.nCopies(1,"抗美援朝纪念日"));
|
||||
put("11-12",Collections.nCopies(1,"孙中山诞辰纪念日"));
|
||||
put("11-17",Collections.nCopies(1,"国际大学生节"));
|
||||
put("11-28",Collections.nCopies(1,"恩格斯诞辰纪念日"));
|
||||
put("12-1",Collections.nCopies(1,"世界艾滋病日"));
|
||||
put("12-12",Collections.nCopies(1,"西安事变纪念日"));
|
||||
|
||||
@@ -87,10 +87,90 @@ public class BaZiTest {
|
||||
Solar solar = new Solar(2005, 12, 23, 8, 37, 0);
|
||||
Lunar lunar = solar.getLunar();
|
||||
EightChar eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals("年柱地势", "临官", eightChar.getYearDiShi());
|
||||
Assert.assertEquals("月柱地势", "长生", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals("日柱地势", "死", eightChar.getDayDiShi());
|
||||
Assert.assertEquals("时柱地势", "墓", eightChar.getTimeDiShi());
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "临官", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "长生", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "死", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "墓", eightChar.getTimeDiShi());
|
||||
|
||||
solar = new Solar(2020, 11, 18, 17, 37, 0);
|
||||
lunar = solar.getLunar();
|
||||
eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "病", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "死", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "衰", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "绝", eightChar.getTimeDiShi());
|
||||
|
||||
solar = new Solar(2020, 11, 19, 17, 37, 0);
|
||||
lunar = solar.getLunar();
|
||||
eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "胎", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "绝", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "长生", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "死", eightChar.getTimeDiShi());
|
||||
|
||||
solar = new Solar(2020, 11, 20, 17, 37, 0);
|
||||
lunar = solar.getLunar();
|
||||
eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "绝", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "胎", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "病", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "长生", eightChar.getTimeDiShi());
|
||||
|
||||
solar = new Solar(2020, 11, 21, 17, 37, 0);
|
||||
lunar = solar.getLunar();
|
||||
eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "胎", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "绝", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "冠带", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "死", eightChar.getTimeDiShi());
|
||||
|
||||
solar = new Solar(2020, 11, 22, 17, 37, 0);
|
||||
lunar = solar.getLunar();
|
||||
eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "绝", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "胎", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "帝旺", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "长生", eightChar.getTimeDiShi());
|
||||
|
||||
solar = new Solar(2020, 11, 23, 17, 37, 0);
|
||||
lunar = solar.getLunar();
|
||||
eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "死", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "病", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "沐浴", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "帝旺", eightChar.getTimeDiShi());
|
||||
|
||||
solar = new Solar(2020, 11, 24, 17, 37, 0);
|
||||
lunar = solar.getLunar();
|
||||
eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "长生", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "沐浴", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "衰", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "临官", eightChar.getTimeDiShi());
|
||||
|
||||
solar = new Solar(2020, 11, 25, 17, 37, 0);
|
||||
lunar = solar.getLunar();
|
||||
eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "帝旺", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "临官", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "长生", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "沐浴", eightChar.getTimeDiShi());
|
||||
|
||||
solar = new Solar(2020, 11, 26, 17, 37, 0);
|
||||
lunar = solar.getLunar();
|
||||
eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "临官", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "帝旺", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "病", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "病", eightChar.getTimeDiShi());
|
||||
|
||||
solar = new Solar(2020, 11, 27, 17, 37, 0);
|
||||
lunar = solar.getLunar();
|
||||
eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals(String.format("年柱地势(%s%s)",eightChar.getDayGan(),eightChar.getYearZhi()), "沐浴", eightChar.getYearDiShi());
|
||||
Assert.assertEquals(String.format("月柱地势(%s%s)",eightChar.getDayGan(),eightChar.getMonthZhi()), "长生", eightChar.getMonthDiShi());
|
||||
Assert.assertEquals(String.format("日柱地势(%s%s)",eightChar.getDayGan(),eightChar.getDayZhi()), "养", eightChar.getDayDiShi());
|
||||
Assert.assertEquals(String.format("时柱地势(%s%s)",eightChar.getDayGan(),eightChar.getTimeZhi()), "胎", eightChar.getTimeDiShi());
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
33
src/test/java/test/FestivalTest.java
Normal file
33
src/test/java/test/FestivalTest.java
Normal file
@@ -0,0 +1,33 @@
|
||||
package test;
|
||||
|
||||
import com.nlf.calendar.Solar;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
|
||||
/**
|
||||
* 节日测试
|
||||
*
|
||||
* @author 6tail
|
||||
*/
|
||||
public class FestivalTest {
|
||||
@Test
|
||||
public void test() {
|
||||
Solar solar = Solar.fromYmd(2020, 11, 26);
|
||||
Assert.assertEquals("[感恩节]", solar.getFestivals() + "");
|
||||
|
||||
solar = Solar.fromYmd(2020, 6, 21);
|
||||
Assert.assertEquals("[父亲节]", solar.getFestivals() + "");
|
||||
|
||||
solar = Solar.fromYmd(2021, 5, 9);
|
||||
Assert.assertEquals("[母亲节]", solar.getFestivals() + "");
|
||||
|
||||
solar = Solar.fromYmd(1986, 11, 27);
|
||||
Assert.assertEquals("[感恩节]", solar.getFestivals() + "");
|
||||
|
||||
solar = Solar.fromYmd(1985, 6, 16);
|
||||
Assert.assertEquals("[父亲节]", solar.getFestivals() + "");
|
||||
|
||||
solar = Solar.fromYmd(1984, 5, 13);
|
||||
Assert.assertEquals("[母亲节]", solar.getFestivals() + "");
|
||||
}
|
||||
}
|
||||
@@ -1,27 +1,97 @@
|
||||
package test;
|
||||
|
||||
import com.nlf.calendar.Solar;
|
||||
import com.nlf.calendar.util.HolidayUtil;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public class HolidayTest {
|
||||
|
||||
@Test
|
||||
public void test(){
|
||||
Assert.assertEquals("2020-01-01 元旦节 2020-01-01",HolidayUtil.getHoliday("2020-01-01")+"");
|
||||
public void test2021() {
|
||||
Map<String, String> holidays = new HashMap<String, String>() {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
{
|
||||
put("2021-01-01", "2021-01-01 元旦节 2021-01-01");
|
||||
put("2021-01-02", "2021-01-02 元旦节 2021-01-01");
|
||||
put("2021-01-03", "2021-01-03 元旦节 2021-01-01");
|
||||
|
||||
put("2021-02-11", "2021-02-11 春节 2021-02-12");
|
||||
put("2021-02-12", "2021-02-12 春节 2021-02-12");
|
||||
put("2021-02-13", "2021-02-13 春节 2021-02-12");
|
||||
put("2021-02-14", "2021-02-14 春节 2021-02-12");
|
||||
put("2021-02-15", "2021-02-15 春节 2021-02-12");
|
||||
put("2021-02-16", "2021-02-16 春节 2021-02-12");
|
||||
put("2021-02-17", "2021-02-17 春节 2021-02-12");
|
||||
|
||||
put("2021-02-07", "2021-02-07 春节调休 2021-02-12");
|
||||
put("2021-02-20", "2021-02-20 春节调休 2021-02-12");
|
||||
|
||||
put("2021-04-03", "2021-04-03 清明节 2021-04-04");
|
||||
put("2021-04-04", "2021-04-04 清明节 2021-04-04");
|
||||
put("2021-04-05", "2021-04-05 清明节 2021-04-04");
|
||||
|
||||
put("2021-05-01", "2021-05-01 劳动节 2021-05-01");
|
||||
put("2021-05-02", "2021-05-02 劳动节 2021-05-01");
|
||||
put("2021-05-03", "2021-05-03 劳动节 2021-05-01");
|
||||
put("2021-05-04", "2021-05-04 劳动节 2021-05-01");
|
||||
put("2021-05-05", "2021-05-05 劳动节 2021-05-01");
|
||||
|
||||
put("2021-04-25", "2021-04-25 劳动节调休 2021-05-01");
|
||||
put("2021-05-08", "2021-05-08 劳动节调休 2021-05-01");
|
||||
|
||||
put("2021-06-12", "2021-06-12 端午节 2021-06-14");
|
||||
put("2021-06-13", "2021-06-13 端午节 2021-06-14");
|
||||
put("2021-06-14", "2021-06-14 端午节 2021-06-14");
|
||||
|
||||
put("2021-09-19", "2021-09-19 中秋节 2021-09-21");
|
||||
put("2021-09-20", "2021-09-20 中秋节 2021-09-21");
|
||||
put("2021-09-21", "2021-09-21 中秋节 2021-09-21");
|
||||
|
||||
put("2021-09-18", "2021-09-18 中秋节调休 2021-09-21");
|
||||
|
||||
put("2021-10-01", "2021-10-01 国庆节 2021-10-01");
|
||||
put("2021-10-02", "2021-10-02 国庆节 2021-10-01");
|
||||
put("2021-10-03", "2021-10-03 国庆节 2021-10-01");
|
||||
put("2021-10-04", "2021-10-04 国庆节 2021-10-01");
|
||||
put("2021-10-05", "2021-10-05 国庆节 2021-10-01");
|
||||
put("2021-10-06", "2021-10-06 国庆节 2021-10-01");
|
||||
put("2021-10-07", "2021-10-07 国庆节 2021-10-01");
|
||||
|
||||
put("2021-09-26", "2021-09-26 国庆节调休 2021-10-01");
|
||||
put("2021-10-09", "2021-10-09 国庆节调休 2021-10-01");
|
||||
}
|
||||
};
|
||||
Solar solar = Solar.fromYmd(2021, 1, 1);
|
||||
while (solar.toYmd().compareTo("2022-01-01") < 0) {
|
||||
String ymd = solar.toYmd();
|
||||
String holiday = holidays.get(ymd);
|
||||
Assert.assertEquals(ymd, holiday + "", HolidayUtil.getHoliday(ymd) + "");
|
||||
|
||||
solar = solar.next(1);
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void test() {
|
||||
Assert.assertEquals("2020-01-01 元旦节 2020-01-01", HolidayUtil.getHoliday("2020-01-01") + "");
|
||||
|
||||
// 将2020-01-01修改为春节
|
||||
HolidayUtil.fix("202001011120200101");
|
||||
Assert.assertEquals("2020-01-01 春节 2020-01-01",HolidayUtil.getHoliday("2020-01-01")+"");
|
||||
Assert.assertEquals("2020-01-01 春节 2020-01-01", HolidayUtil.getHoliday("2020-01-01") + "");
|
||||
|
||||
// 追加2099-01-01为元旦节
|
||||
HolidayUtil.fix("209901010120990101");
|
||||
Assert.assertEquals("2099-01-01 元旦节 2099-01-01",HolidayUtil.getHoliday("2099-01-01")+"");
|
||||
Assert.assertEquals("2099-01-01 元旦节 2099-01-01", HolidayUtil.getHoliday("2099-01-01") + "");
|
||||
|
||||
// 将2020-01-01修改为春节,并追加2099-01-01为元旦节
|
||||
HolidayUtil.fix("202001011120200101209901010120990101");
|
||||
Assert.assertEquals("2020-01-01 春节 2020-01-01",HolidayUtil.getHoliday("2020-01-01")+"");
|
||||
Assert.assertEquals("2099-01-01 元旦节 2099-01-01",HolidayUtil.getHoliday("2099-01-01")+"");
|
||||
Assert.assertEquals("2020-01-01 春节 2020-01-01", HolidayUtil.getHoliday("2020-01-01") + "");
|
||||
Assert.assertEquals("2099-01-01 元旦节 2099-01-01", HolidayUtil.getHoliday("2099-01-01") + "");
|
||||
|
||||
// 更改节假日名称
|
||||
String[] names = HolidayUtil.NAMES;
|
||||
@@ -29,12 +99,12 @@ public class HolidayTest {
|
||||
names[1] = "大年初一";
|
||||
|
||||
HolidayUtil.fix(names, null);
|
||||
Assert.assertEquals("2020-01-01 大年初一 2020-01-01",HolidayUtil.getHoliday("2020-01-01")+"");
|
||||
Assert.assertEquals("2099-01-01 元旦 2099-01-01",HolidayUtil.getHoliday("2099-01-01")+"");
|
||||
Assert.assertEquals("2020-01-01 大年初一 2020-01-01", HolidayUtil.getHoliday("2020-01-01") + "");
|
||||
Assert.assertEquals("2099-01-01 元旦 2099-01-01", HolidayUtil.getHoliday("2099-01-01") + "");
|
||||
|
||||
// 追加节假日名称和数据
|
||||
names = new String[12];
|
||||
for(int i=0,j=HolidayUtil.NAMES.length;i<j;i++){
|
||||
for (int i = 0, j = HolidayUtil.NAMES.length; i < j; i++) {
|
||||
names[i] = HolidayUtil.NAMES[i];
|
||||
}
|
||||
names[9] = "我的生日";
|
||||
@@ -42,8 +112,8 @@ public class HolidayTest {
|
||||
names[11] = "她的生日";
|
||||
|
||||
HolidayUtil.fix(names, "20210529912021052920211111:12021111120211201;120211201");
|
||||
Assert.assertEquals("2021-05-29 我的生日 2021-05-29",HolidayUtil.getHoliday("2021-05-29")+"");
|
||||
Assert.assertEquals("2021-11-11 结婚纪念日 2021-11-11",HolidayUtil.getHoliday("2021-11-11")+"");
|
||||
Assert.assertEquals("2021-12-01 她的生日 2021-12-01",HolidayUtil.getHoliday("2021-12-01")+"");
|
||||
Assert.assertEquals("2021-05-29 我的生日 2021-05-29", HolidayUtil.getHoliday("2021-05-29") + "");
|
||||
Assert.assertEquals("2021-11-11 结婚纪念日 2021-11-11", HolidayUtil.getHoliday("2021-11-11") + "");
|
||||
Assert.assertEquals("2021-12-01 她的生日 2021-12-01", HolidayUtil.getHoliday("2021-12-01") + "");
|
||||
}
|
||||
}
|
||||
|
||||
182
src/test/java/test/XunTest.java
Normal file
182
src/test/java/test/XunTest.java
Normal file
@@ -0,0 +1,182 @@
|
||||
package test;
|
||||
|
||||
import com.nlf.calendar.EightChar;
|
||||
import com.nlf.calendar.Lunar;
|
||||
import com.nlf.calendar.Solar;
|
||||
import com.nlf.calendar.util.LunarUtil;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 旬测试
|
||||
*
|
||||
* @author 6tail
|
||||
*/
|
||||
public class XunTest {
|
||||
|
||||
@Test
|
||||
public void testXun(){
|
||||
Map<String,String> xun = new HashMap<String, String>();
|
||||
xun.put("甲子","甲子");
|
||||
xun.put("乙丑","甲子");
|
||||
xun.put("丙寅","甲子");
|
||||
xun.put("丁卯","甲子");
|
||||
xun.put("戊辰","甲子");
|
||||
xun.put("己巳","甲子");
|
||||
xun.put("庚午","甲子");
|
||||
xun.put("辛未","甲子");
|
||||
xun.put("壬申","甲子");
|
||||
xun.put("癸酉","甲子");
|
||||
xun.put("甲戌","甲戌");
|
||||
xun.put("乙亥","甲戌");
|
||||
xun.put("丙子","甲戌");
|
||||
xun.put("丁丑","甲戌");
|
||||
xun.put("戊寅","甲戌");
|
||||
xun.put("己卯","甲戌");
|
||||
xun.put("庚辰","甲戌");
|
||||
xun.put("辛巳","甲戌");
|
||||
xun.put("壬午","甲戌");
|
||||
xun.put("癸未","甲戌");
|
||||
xun.put("甲申","甲申");
|
||||
xun.put("乙酉","甲申");
|
||||
xun.put("丙戌","甲申");
|
||||
xun.put("丁亥","甲申");
|
||||
xun.put("戊子","甲申");
|
||||
xun.put("己丑","甲申");
|
||||
xun.put("庚寅","甲申");
|
||||
xun.put("辛卯","甲申");
|
||||
xun.put("壬辰","甲申");
|
||||
xun.put("癸巳","甲申");
|
||||
xun.put("甲午","甲午");
|
||||
xun.put("乙未","甲午");
|
||||
xun.put("丙申","甲午");
|
||||
xun.put("丁酉","甲午");
|
||||
xun.put("戊戌","甲午");
|
||||
xun.put("己亥","甲午");
|
||||
xun.put("庚子","甲午");
|
||||
xun.put("辛丑","甲午");
|
||||
xun.put("壬寅","甲午");
|
||||
xun.put("癸卯","甲午");
|
||||
xun.put("甲辰","甲辰");
|
||||
xun.put("乙巳","甲辰");
|
||||
xun.put("丙午","甲辰");
|
||||
xun.put("丁未","甲辰");
|
||||
xun.put("戊申","甲辰");
|
||||
xun.put("己酉","甲辰");
|
||||
xun.put("庚戌","甲辰");
|
||||
xun.put("辛亥","甲辰");
|
||||
xun.put("壬子","甲辰");
|
||||
xun.put("癸丑","甲辰");
|
||||
xun.put("甲寅","甲寅");
|
||||
xun.put("乙卯","甲寅");
|
||||
xun.put("丙辰","甲寅");
|
||||
xun.put("丁巳","甲寅");
|
||||
xun.put("戊午","甲寅");
|
||||
xun.put("己未","甲寅");
|
||||
xun.put("庚申","甲寅");
|
||||
xun.put("辛酉","甲寅");
|
||||
xun.put("壬戌","甲寅");
|
||||
xun.put("癸亥","甲寅");
|
||||
|
||||
for(Map.Entry<String,String> entry:xun.entrySet()){
|
||||
Assert.assertEquals(entry.getValue(), LunarUtil.getXun(entry.getKey()));
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testXunKong(){
|
||||
Map<String,String> kong = new HashMap<String, String>();
|
||||
kong.put("甲子","戌亥");
|
||||
kong.put("乙丑","戌亥");
|
||||
kong.put("丙寅","戌亥");
|
||||
kong.put("丁卯","戌亥");
|
||||
kong.put("戊辰","戌亥");
|
||||
kong.put("己巳","戌亥");
|
||||
kong.put("庚午","戌亥");
|
||||
kong.put("辛未","戌亥");
|
||||
kong.put("壬申","戌亥");
|
||||
kong.put("癸酉","戌亥");
|
||||
kong.put("甲戌","申酉");
|
||||
kong.put("乙亥","申酉");
|
||||
kong.put("丙子","申酉");
|
||||
kong.put("丁丑","申酉");
|
||||
kong.put("戊寅","申酉");
|
||||
kong.put("己卯","申酉");
|
||||
kong.put("庚辰","申酉");
|
||||
kong.put("辛巳","申酉");
|
||||
kong.put("壬午","申酉");
|
||||
kong.put("癸未","申酉");
|
||||
kong.put("甲申","午未");
|
||||
kong.put("乙酉","午未");
|
||||
kong.put("丙戌","午未");
|
||||
kong.put("丁亥","午未");
|
||||
kong.put("戊子","午未");
|
||||
kong.put("己丑","午未");
|
||||
kong.put("庚寅","午未");
|
||||
kong.put("辛卯","午未");
|
||||
kong.put("壬辰","午未");
|
||||
kong.put("癸巳","午未");
|
||||
kong.put("甲午","辰巳");
|
||||
kong.put("乙未","辰巳");
|
||||
kong.put("丙申","辰巳");
|
||||
kong.put("丁酉","辰巳");
|
||||
kong.put("戊戌","辰巳");
|
||||
kong.put("己亥","辰巳");
|
||||
kong.put("庚子","辰巳");
|
||||
kong.put("辛丑","辰巳");
|
||||
kong.put("壬寅","辰巳");
|
||||
kong.put("癸卯","辰巳");
|
||||
kong.put("甲辰","寅卯");
|
||||
kong.put("乙巳","寅卯");
|
||||
kong.put("丙午","寅卯");
|
||||
kong.put("丁未","寅卯");
|
||||
kong.put("戊申","寅卯");
|
||||
kong.put("己酉","寅卯");
|
||||
kong.put("庚戌","寅卯");
|
||||
kong.put("辛亥","寅卯");
|
||||
kong.put("壬子","寅卯");
|
||||
kong.put("癸丑","寅卯");
|
||||
kong.put("甲寅","子丑");
|
||||
kong.put("乙卯","子丑");
|
||||
kong.put("丙辰","子丑");
|
||||
kong.put("丁巳","子丑");
|
||||
kong.put("戊午","子丑");
|
||||
kong.put("己未","子丑");
|
||||
kong.put("庚申","子丑");
|
||||
kong.put("辛酉","子丑");
|
||||
kong.put("壬戌","子丑");
|
||||
kong.put("癸亥","子丑");
|
||||
|
||||
for(Map.Entry<String,String> entry:kong.entrySet()){
|
||||
Assert.assertEquals(entry.getValue(), LunarUtil.getXunKong(entry.getKey()));
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testXun1(){
|
||||
Solar solar = new Solar(2020,11,19,0,0,0);
|
||||
Lunar lunar = solar.getLunar();
|
||||
Assert.assertEquals("甲午",lunar.getYearXun());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testXunKong1(){
|
||||
Solar solar = new Solar(2020,11,19,0,0,0);
|
||||
Lunar lunar = solar.getLunar();
|
||||
Assert.assertEquals("辰巳",lunar.getYearXunKong());
|
||||
Assert.assertEquals("午未",lunar.getMonthXunKong());
|
||||
Assert.assertEquals("戌亥",lunar.getDayXunKong());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testBaZiDayXunKong(){
|
||||
Solar solar = new Solar(1990,12,23,8,37,0);
|
||||
Lunar lunar = solar.getLunar();
|
||||
EightChar eightChar = lunar.getEightChar();
|
||||
Assert.assertEquals("子丑",eightChar.getDayXunKong());
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user