Hong-Phuc Bui
2024-10-16 f8613c9ce2bd4b74b11727d2eae204f49151bcba
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import test from "ava";
import {asciiCalendar, domCalendar} from "../../src/lib/calendar-view.js";
 
const cal = {
   month: 1,
   year: 2021,
   weekDays: [1, 2, 3, 4, 5, 6, 0], // Day from Monday to Sonday, EU-Common
   weeks: [
      ['', '', '', '',  1,  2,  3],
      [ 4,  5,  6,  7,  8,  9, 10],
      [11, 12, 13, 14, 15, 16, 17],
      [18, 19, 20, 21, 22, 23, 24],
      [25, 26, 26, 28, 29, 30, 31]
   ]
};
 
const somewhere =  Object.freeze({
   weekDays: ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"],
   months: [undefined,
      "Januar",    "Februar", "Mär",      "April",
      "Mai",       "Juni",    "July",     "August",
      "September", "Oktober", "November", "Dezember"],
   firstDayOfWeek: 1
});
 
test("asciiCalendar", t =>{
   const ascii = asciiCalendar(cal, somewhere);
   const result = `    Januar 2021
 
Mo Di Mi Do Fr Sa So 
            01 02 03 
04 05 06 07 08 09 10 
11 12 13 14 15 16 17 
18 19 20 21 22 23 24 
25 26 26 28 29 30 31 \n`
   t.is(ascii, result);
});
 
 
test('domCalendar',t => {
   const html = domCalendar(cal, somewhere);
   const result = `<table>
    <caption>Januar 2021</caption>
    <thead><tr><td>Mo</td><td>Di</td><td>Mi</td><td>Do</td><td>Fr</td><td>Sa</td><td>So</td></tr>
</thead>
<tr><td></td><td></td><td></td><td></td><td>1</td><td>2</td><td>3</td></tr>
<tr><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td><td>10</td></tr>
<tr><td>11</td><td>12</td><td>13</td><td>14</td><td>15</td><td>16</td><td>17</td></tr>
<tr><td>18</td><td>19</td><td>20</td><td>21</td><td>22</td><td>23</td><td>24</td></tr>
<tr><td>25</td><td>26</td><td>26</td><td>28</td><td>29</td><td>30</td><td>31</td></tr>
</table>`;
   t.is(html, result);
});