1
0
mirror of synced 2026-03-30 08:18:42 +08:00

增加星宿吉凶;增加星宿歌诀;增加支持时辰。

This commit is contained in:
6tail
2020-04-06 18:04:02 +08:00
parent d402749d41
commit 88c37d7497
8 changed files with 530 additions and 21 deletions

View File

@@ -15,9 +15,9 @@ public class LunarTest {
public void test(){
Lunar date = new Lunar(2019,3,27);
Assert.assertEquals("贰零壹玖年叁月廿七",date.toString());
Assert.assertEquals("贰零壹玖年叁月廿七 己亥(猪)年 戊辰(龙)月 戊戌(狗)日 纳音[平地木 大林木 平地木] 星期三 (七殿泰山王诞) 西方白虎 参水猿 彭祖百忌[戊不受田田主不祥 戌不吃犬作怪上床] 喜神方位[巽](东南) 阳贵神方位[艮](东北) 阴贵神方位[坤](西南) 福神方位[坎](正北) 财神方位[坎](正北) 冲[(壬辰)龙] 煞[北]",date.toFullString());
Assert.assertEquals("贰零壹玖年叁月廿七 己亥(猪)年 戊辰(龙)月 戊戌(狗)日 子时 纳音[平地木 大林木 平地木] 星期三 (七殿泰山王诞) 西方白虎 参水猿 彭祖百忌[戊不受田田主不祥 戌不吃犬作怪上床] 喜神方位[巽](东南) 阳贵神方位[艮](东北) 阴贵神方位[坤](西南) 福神方位[坎](正北) 财神方位[坎](正北) 冲[(壬辰)龙] 煞[北]",date.toFullString());
Assert.assertEquals("2019-05-01",date.getSolar().toString());
Assert.assertEquals("2019-05-01 星期三 (劳动节) 金牛座",date.getSolar().toFullString());
Assert.assertEquals("2019-05-01 00:00 星期三 (劳动节) 金牛座",date.getSolar().toFullString());
}
}

View File

@@ -15,9 +15,9 @@ public class SolarTest {
public void test(){
Solar date = new Solar(2019,5,1);
Assert.assertEquals("2019-05-01",date.toString());
Assert.assertEquals("2019-05-01 星期三 (劳动节) 金牛座",date.toFullString());
Assert.assertEquals("2019-05-01 00:00 星期三 (劳动节) 金牛座",date.toFullString());
Assert.assertEquals("贰零壹玖年叁月廿七",date.getLunar().toString());
Assert.assertEquals("贰零壹玖年叁月廿七 己亥(猪)年 戊辰(龙)月 戊戌(狗)日 纳音[平地木 大林木 平地木] 星期三 (七殿泰山王诞) 西方白虎 参水猿 彭祖百忌[戊不受田田主不祥 戌不吃犬作怪上床] 喜神方位[巽](东南) 阳贵神方位[艮](东北) 阴贵神方位[坤](西南) 福神方位[坎](正北) 财神方位[坎](正北) 冲[(壬辰)龙] 煞[北]",date.getLunar().toFullString());
Assert.assertEquals("贰零壹玖年叁月廿七 己亥(猪)年 戊辰(龙)月 戊戌(狗)日 酉时 纳音[平地木 大林木 平地木] 星期三 (七殿泰山王诞) 西方白虎 参水猿 彭祖百忌[戊不受田田主不祥 戌不吃犬作怪上床] 喜神方位[巽](东南) 阳贵神方位[艮](东北) 阴贵神方位[坤](西南) 福神方位[坎](正北) 财神方位[坎](正北) 冲[(壬辰)龙] 煞[北]",date.getLunar().toFullString());
}
}

View File

@@ -0,0 +1,243 @@
package test;
import com.nlf.calendar.Lunar;
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 TimeTest {
private static final Map<String,String> ZHI = new HashMap<String, String>(){
private static final long serialVersionUID = -1L;
{
put("23:00","");
put("00:59","");
put("23:30","");
put("01:00","");
put("02:59","");
put("01:30","");
put("03:00","");
put("04:59","");
put("03:30","");
put("05:00","");
put("06:59","");
put("05:30","");
put("07:00","");
put("08:59","");
put("07:30","");
put("09:00","");
put("10:59","");
put("09:30","");
put("11:00","");
put("12:59","");
put("11:30","");
put("13:00","");
put("14:59","");
put("13:30","");
put("15:00","");
put("16:59","");
put("15:30","");
put("17:00","");
put("18:59","");
put("17:30","");
put("19:00","");
put("20:59","");
put("19:30","");
put("21:00","");
put("22:59","");
put("21:30","");
put(null,null);
put("","");
put("23:01:01","");
put("其他","");
put("21:01:01","");
}
};
private static final Map<String,String> GAN = new HashMap<String, String>(){
private static final long serialVersionUID = -1L;
{
put("23:00","");
put("00:59","");
put("23:30","");
put("01:00","");
put("02:59","");
put("01:30","");
put("03:00","");
put("04:59","");
put("03:30","");
put("05:00","");
put("06:59","");
put("05:30","");
put("07:00","");
put("08:59","");
put("07:30","");
put("09:00","");
put("10:59","");
put("09:30","");
put("11:00","");
put("12:59","");
put("11:30","");
put("13:00","");
put("14:59","");
put("13:30","");
put("15:00","");
put("16:59","");
put("15:30","");
put("17:00","");
put("18:59","");
put("17:30","");
put("19:00","");
put("20:59","");
put("19:30","");
put("21:00","");
put("22:59","");
put("21:30","");
put(null,"");
put("","");
put("23:01:01","");
put("其他","");
put("80:90","");
put("21:01:01","");
}
};
private static final Map<String,String> GAN_ZHI = new HashMap<String, String>(){
private static final long serialVersionUID = -1L;
{
put("23:00","甲子");
put("00:59","甲子");
put("23:30","甲子");
put("01:00","乙丑");
put("02:59","乙丑");
put("01:30","乙丑");
put("03:00","丙寅");
put("04:59","丙寅");
put("03:30","丙寅");
put("05:00","丁卯");
put("06:59","丁卯");
put("05:30","丁卯");
put("07:00","戊辰");
put("08:59","戊辰");
put("07:30","戊辰");
put("09:00","己巳");
put("10:59","己巳");
put("09:30","己巳");
put("11:00","庚午");
put("12:59","庚午");
put("11:30","庚午");
put("13:00","辛未");
put("14:59","辛未");
put("13:30","辛未");
put("15:00","壬申");
put("16:59","壬申");
put("15:30","壬申");
put("17:00","癸酉");
put("18:59","癸酉");
put("17:30","癸酉");
put("19:00","甲戌");
put("20:59","甲戌");
put("19:30","甲戌");
put("21:00","乙亥");
put("22:59","乙亥");
put("21:30","乙亥");
put(null,"甲子");
put("","甲子");
put("23:01:01","甲子");
put("其他","甲子");
put("80:90","甲子");
put("20:21:01","甲戌");
put("21:01:01","乙亥");
put("01:21:01","乙丑");
}
};
@Test
public void testLunarTimeGanZhi(){
for(Map.Entry<String,String> entry:GAN_ZHI.entrySet()){
int hour = 0,minute = 0;
String hm = entry.getKey();
if(null!=hm&&hm.length()>=5){
hour = Integer.parseInt(hm.substring(0,2),10);
minute = Integer.parseInt(hm.substring(3,5),10);
}
Lunar lunar = Lunar.fromYmdHm(2020,1,1,hour,minute);
String ganZhi = entry.getValue();
Assert.assertEquals(hm, ganZhi, lunar.getTimeInGanZhi());
}
}
@Test
public void testLunarTimeGan(){
for(Map.Entry<String,String> entry:GAN.entrySet()){
int hour = 0,minute = 0;
String hm = entry.getKey();
if(null!=hm&&hm.length()>=5){
hour = Integer.parseInt(hm.substring(0,2),10);
minute = Integer.parseInt(hm.substring(3,5),10);
}
Lunar lunar = Lunar.fromYmdHm(2020,1,1,hour,minute);
String gan = entry.getValue();
Assert.assertEquals(hm, gan, lunar.getTimeGan());
}
}
@Test
public void test(){
for(Map.Entry<String,String> entry:ZHI.entrySet()){
String hm = entry.getKey();
String zhi = entry.getValue();
Assert.assertEquals(hm, zhi, LunarUtil.convertTime(hm));
}
}
}