lunar-calendar-fix
Version:
农历(阴历)万年历,是一款支持Node.js和浏览器端使用的全功能农历和公历日历类库。支持农历与公历之间相互转换,含有二十四节气,天干地支纪年纪月纪日,生肖属相,公历节假日及农历传统节假日信息等功能。自带2013-2014节假日安排数据,并可自行配置。带有黄历数据,可自行选择配置。支持1891-2100年。
56 lines (51 loc) • 2.46 kB
JavaScript
// 测试用例
var expect = require('expect.js'),
LunarCalendar = require('../lib/LunarCalendar');
describe('lunar-calendar', function(){
var solarDate = new Date(2014, 1, 1); //公历2014年2月1日
var lunarDate = {
"zodiac": "蛇", //生肖属相
"GanZhiYear": "癸巳", //干支纪年
"GanZhiMonth": "乙丑", //干支纪月
"GanZhiDay": "癸卯", //干支纪日
"worktime": 2, //0无特殊安排,1工作,2放假
"lunarYear": 2014, //农历年
"lunarMonth": 1, //农历月(1-13,有闰月情况,比如当前闰9月,10表示闰9月,11表示10月)
"lunarDay": 2, //农历日
"lunarMonthName": "正月", //农历月中文名
"lunarDayName": "初二", //农历日中文名
"lunarLeapMonth": 9, //农历闰月所在月份,0表示无闰月
"solarFestival": undefined, //公历节假日,undefined或‘劳动节’之类
"lunarFestival": undefined, //农历节假日,undefined或‘除夕’之类
"term": undefined, //二十四节气名,undefined或‘立春’之类
"isBigMonth": false
};
it('.solarToLunar(year,month,day),公历转农历', function(){
var lunar = LunarCalendar.solarToLunar(solarDate.getFullYear(),solarDate.getMonth()+1,solarDate.getDate());
expect(lunar).to.eql(lunarDate);
});
});
describe('lunar-calendar-festvial', function() {
var solarDate = new Date(2020, 4, 27);
var lunarDate = {
"zodiac": "鼠", //生肖属相
"GanZhiYear": "庚子", //干支纪年
"GanZhiMonth": "辛巳", //干支纪月
"GanZhiDay": "庚午", //干支纪日
"worktime": 0, //0无特殊安排,1工作,2放假
"lunarYear": 2020, //农历年
"lunarMonth": 5, //农历月(1-13,有闰月情况,比如当前闰9月,10表示闰9月,11表示10月)
"lunarDay": 5, //农历日
"lunarMonthName": "闰四月", //农历月中文名
"lunarDayName": "初五", //农历日中文名
"lunarLeapMonth": 4, //农历闰月所在月份,0表示无闰月
"solarFestival": undefined, //公历节假日,undefined或‘劳动节’之类
"lunarFestival": undefined, //农历节假日,undefined或‘除夕’之类
"term": undefined, //二十四节气名,undefined或‘立春’之类
"isBigMonth": false
};
it('.solarToLunar(year,month,day),公历转农历 - 闰四月 - 端午节错', function(){
var lunar = LunarCalendar.solarToLunar(solarDate.getFullYear(),solarDate.getMonth()+1,solarDate.getDate());
expect(lunar).to.eql(lunarDate);
});
})