Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5b0ed30657 | ||
|
|
e9e23ee38f | ||
|
|
0dddcf841f | ||
|
|
7a71e07ade | ||
|
|
853cb2f3a9 | ||
|
|
13c251080b | ||
|
|
1f708a8d6f | ||
|
|
b926be0022 |
@@ -177,3 +177,15 @@ test('test11', () => {
|
||||
expect(eightChar.getDay()).toBe('庚子');
|
||||
expect(eightChar.getTime()).toBe('戊子');
|
||||
});
|
||||
|
||||
test('test12', () => {
|
||||
expect(Solar.fromYmdHms('1999', '06', '07', '09', '11', '00').getLunar().getEightChar().toString()).toBe('己卯 庚午 庚寅 辛巳');
|
||||
});
|
||||
|
||||
test('流月', () => {
|
||||
const solar = Solar.fromYmdHms(2023, 5, 3, 9, 0, 0);
|
||||
const lunar = solar.getLunar();
|
||||
const eightChar = lunar.getEightChar();
|
||||
const yun = eightChar.getYun(1);
|
||||
expect(yun.getDaYun()[0].getLiuNian()[0].getLiuYue()[0].getGanZhi()).toBe('甲寅');
|
||||
});
|
||||
|
||||
@@ -13,3 +13,8 @@ test('test2()', () => {
|
||||
expect(foto.getGong()).toBe('东');
|
||||
expect(foto.getShou()).toBe('青龙');
|
||||
});
|
||||
|
||||
test('test3()', () => {
|
||||
const foto = Foto.fromLunar(Lunar.fromYmd(2021, 3, 16));
|
||||
expect(foto.getOtherFestivals()).toStrictEqual(['准提菩萨圣诞']);
|
||||
});
|
||||
|
||||
12
__tests__/I18n.test.js
Normal file
12
__tests__/I18n.test.js
Normal file
@@ -0,0 +1,12 @@
|
||||
const {Lunar, I18n} = require('../lunar');
|
||||
|
||||
test('test1', () => {
|
||||
const lunar = Lunar.fromYmd(2023,1,1);
|
||||
console.log(lunar.toFullString());
|
||||
|
||||
I18n.setLanguage('en');
|
||||
console.log(lunar.toFullString());
|
||||
|
||||
I18n.setLanguage('chs');
|
||||
});
|
||||
|
||||
@@ -590,3 +590,53 @@ test('test058', () => {
|
||||
const lunar = Lunar.fromYmd(1582, 9, 19);
|
||||
expect(lunar.getSolar().toString()).toBe('1582-10-15');
|
||||
});
|
||||
|
||||
test('test059', () => {
|
||||
const lunar = Lunar.fromYmd(1518, 1, 1);
|
||||
expect(lunar.getSolar().toString()).toBe('1518-02-10');
|
||||
});
|
||||
|
||||
test('test060', () => {
|
||||
const lunar = Lunar.fromYmd(793, 1, 1);
|
||||
expect(lunar.getSolar().toString()).toBe('0793-02-15');
|
||||
});
|
||||
|
||||
test('test061', () => {
|
||||
const lunar = Lunar.fromYmd(2025, -6, 1);
|
||||
expect(lunar.getSolar().toString()).toBe('2025-07-25');
|
||||
});
|
||||
|
||||
test('test062', () => {
|
||||
const lunar = Lunar.fromYmd(2025, 6, 1);
|
||||
expect(lunar.getSolar().toString()).toBe('2025-06-25');
|
||||
});
|
||||
|
||||
test('test063', () => {
|
||||
const lunar = Lunar.fromYmd(193, 1, 1);
|
||||
expect(lunar.getSolar().toString()).toBe('0193-02-19');
|
||||
});
|
||||
|
||||
test('test064', () => {
|
||||
const lunar = Lunar.fromYmd(288, 1, 1);
|
||||
expect(lunar.getSolar().toString()).toBe('0288-02-19');
|
||||
});
|
||||
|
||||
test('test065', () => {
|
||||
const lunar = Lunar.fromYmd(755, 1, 1);
|
||||
expect(lunar.getSolar().toString()).toBe('0755-02-16');
|
||||
});
|
||||
|
||||
test('test066', () => {
|
||||
const lunar = Lunar.fromYmd(41, 1, 1);
|
||||
expect(lunar.getSolar().toString()).toBe('0041-02-20');
|
||||
});
|
||||
|
||||
test('test067', () => {
|
||||
const lunar = Lunar.fromYmd(57, 1, 1);
|
||||
expect(lunar.getSolar().toString()).toBe('0057-02-23');
|
||||
});
|
||||
|
||||
test('test068', () => {
|
||||
const lunar = Lunar.fromYmd(345, 1, 1);
|
||||
expect(lunar.getSolar().toString()).toBe('0345-02-18');
|
||||
});
|
||||
|
||||
37
__tests__/LunarMonth.test.js
Normal file
37
__tests__/LunarMonth.test.js
Normal file
@@ -0,0 +1,37 @@
|
||||
var {LunarMonth} = require('../lunar');
|
||||
|
||||
test('test1', () => {
|
||||
const month = LunarMonth.fromYm(2023, 1);
|
||||
expect(month.getIndex()).toBe(1);
|
||||
expect(month.getGanZhi()).toBe('甲寅');
|
||||
});
|
||||
|
||||
test('test2', () => {
|
||||
const month = LunarMonth.fromYm(2023, -2);
|
||||
expect(month.getIndex()).toBe(3);
|
||||
expect(month.getGanZhi()).toBe('丙辰');
|
||||
});
|
||||
|
||||
test('test3', () => {
|
||||
const month = LunarMonth.fromYm(2023, 3);
|
||||
expect(month.getIndex()).toBe(4);
|
||||
expect(month.getGanZhi()).toBe('丁巳');
|
||||
});
|
||||
|
||||
test('test4', () => {
|
||||
const month = LunarMonth.fromYm(2024, 1);
|
||||
expect(month.getIndex()).toBe(1);
|
||||
expect(month.getGanZhi()).toBe('丙寅');
|
||||
});
|
||||
|
||||
test('test5', () => {
|
||||
const month = LunarMonth.fromYm(2023, 12);
|
||||
expect(month.getIndex()).toBe(13);
|
||||
expect(month.getGanZhi()).toBe('丙寅');
|
||||
});
|
||||
|
||||
test('test6', () => {
|
||||
const month = LunarMonth.fromYm(2022, 1);
|
||||
expect(month.getIndex()).toBe(1);
|
||||
expect(month.getGanZhi()).toBe('壬寅');
|
||||
});
|
||||
@@ -92,3 +92,18 @@ test('test18', () => {
|
||||
const year = LunarYear.fromYear(2022);
|
||||
expect(year.getJieQiJulianDays()).toStrictEqual([2459555.7478605337, 2459570.499405936, 2459585.217980813, 2459599.9437018055, 2459614.7018054826, 2459629.5297495862, 2459644.446920318, 2459659.4814200983, 2459674.6389274267, 2459689.9334118855, 2459705.3512322665, 2459720.890569021, 2459736.517794922, 2459752.2178259823, 2459767.9429320656, 2459783.6713957503, 2459799.3534378354, 2459814.969435438, 2459830.480632029, 2459845.8774438635, 2459861.140466851, 2459876.2746654437, 2459891.281458942, 2459906.1807667296, 2459920.9903281447, 2459935.741672728, 2459950.461561025, 2459965.187040542, 2459979.9460747372, 2459994.7736723446, 2460009.6916930582]);
|
||||
});
|
||||
|
||||
test('test19', () => {
|
||||
const year = LunarYear.fromYear(2021);
|
||||
expect(year.getDayCount()).toBe(354);
|
||||
});
|
||||
|
||||
test('test20', () => {
|
||||
const year = LunarYear.fromYear(2023);
|
||||
expect(year.getDayCount()).toBe(384);
|
||||
});
|
||||
|
||||
test('test21', () => {
|
||||
const year = LunarYear.fromYear(1517);
|
||||
expect(year.getDayCount()).toBe(384);
|
||||
});
|
||||
|
||||
@@ -92,3 +92,45 @@ test('19', () => {
|
||||
})
|
||||
expect(timeList).toStrictEqual(['2020-07-21 22:00:00', '1960-08-05 22:00:00']);
|
||||
});
|
||||
|
||||
test('20', () => {
|
||||
const solar = Solar.fromYmd(1582, 10, 4);
|
||||
expect(solar.nextDay(1).toYmd()).toBe('1582-10-15');
|
||||
});
|
||||
|
||||
test('21', () => {
|
||||
const solar = Solar.fromYmd(1582, 10, 15);
|
||||
expect(solar.nextDay(-1).toYmd()).toBe('1582-10-04');
|
||||
});
|
||||
|
||||
test('22', () => {
|
||||
const solar = Solar.fromYmd(1582, 10, 15);
|
||||
expect(solar.nextDay(-5).toYmd()).toBe('1582-09-30');
|
||||
});
|
||||
|
||||
test('23', () => {
|
||||
const solarList = Solar.fromBaZi('癸卯', '甲寅', '癸丑', '甲子', 2, 1843);
|
||||
const timeList = [];
|
||||
solarList.forEach(solar => {
|
||||
timeList.push(solar.toYmdHms());
|
||||
})
|
||||
expect(timeList).toStrictEqual(['2023-02-24 23:00:00', '1843-02-08 23:00:00']);
|
||||
});
|
||||
|
||||
test('24', () => {
|
||||
const solarList = Solar.fromBaZi('己亥', '丁丑', '壬寅', '戊申');
|
||||
const timeList = [];
|
||||
solarList.forEach(solar => {
|
||||
timeList.push(solar.toYmdHms());
|
||||
})
|
||||
expect(timeList).toStrictEqual(['1960-01-15 16:00:00', '1900-01-29 16:00:00']);
|
||||
});
|
||||
|
||||
test('25', () => {
|
||||
const solarList = Solar.fromBaZi('己亥', '丙子', '癸酉', '庚申');
|
||||
const timeList = [];
|
||||
solarList.forEach(solar => {
|
||||
timeList.push(solar.toYmdHms());
|
||||
})
|
||||
expect(timeList).toStrictEqual(['1959-12-17 16:00:00']);
|
||||
});
|
||||
|
||||
6
index.js
6
index.js
@@ -1,4 +1,4 @@
|
||||
const {Solar, Lunar, Foto, Tao, NineStar, EightChar, SolarWeek, SolarMonth, SolarSeason, SolarHalfYear, SolarYear, LunarMonth, LunarYear, LunarTime, ShouXingUtil, SolarUtil, LunarUtil, FotoUtil, TaoUtil, HolidayUtil} = require('./lunar.js')
|
||||
const {Solar, Lunar, Foto, Tao, NineStar, EightChar, SolarWeek, SolarMonth, SolarSeason, SolarHalfYear, SolarYear, LunarMonth, LunarYear, LunarTime, ShouXingUtil, SolarUtil, LunarUtil, FotoUtil, TaoUtil, HolidayUtil, NineStarUtil, I18n} = require('./lunar.js')
|
||||
|
||||
module.exports = {
|
||||
Solar: Solar,
|
||||
@@ -20,5 +20,7 @@ module.exports = {
|
||||
LunarUtil: LunarUtil,
|
||||
FotoUtil: FotoUtil,
|
||||
TaoUtil: TaoUtil,
|
||||
HolidayUtil: HolidayUtil
|
||||
HolidayUtil: HolidayUtil,
|
||||
NineStarUtil: NineStarUtil,
|
||||
I18n: I18n
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "lunar-javascript",
|
||||
"version": "1.3.0",
|
||||
"version": "1.6.2",
|
||||
"description": "lunar is a calendar library for Solar and Chinese Lunar.",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
|
||||
Reference in New Issue
Block a user