@@ -19,64 +19,56 @@ describe("svelte-time", () => {
1919 document . body . innerHTML = "" ;
2020 } ) ;
2121
22+ const getElement = ( selector : string ) => {
23+ return document . querySelector ( selector ) as HTMLElement ;
24+ } ;
25+
2226 const DEFAULT_TIME = dayjs ( new Date ( ) . toISOString ( ) ) . format ( "MMM DD, YYYY" ) ;
2327
2428 test ( "SvelteTime.test.svelte" , async ( ) => {
2529 const target = document . body ;
2630
27- instance = new SvelteTime ( {
28- target,
29- } ) ;
31+ instance = new SvelteTime ( { target } ) ;
3032
3133 const date = new Date ( ) ;
3234 const timestamp = date . toISOString ( ) ;
3335
34- const defaultComponent = target . querySelector ( '[data-test="default"]' ) ! ;
36+ const defaultComponent = getElement ( '[data-test="default"]' ) ! ;
3537 expect ( defaultComponent . innerHTML ) . toEqual ( DEFAULT_TIME ) ;
3638 expect ( defaultComponent . innerHTML ) . toEqual ( dayjs ( ) . format ( "MMM DD, YYYY" ) ) ;
3739
38- const timestampString = target . querySelector (
39- '[data-test="timestamp-string"]' ,
40- ) ! ;
40+ const timestampString = getElement ( '[data-test="timestamp-string"]' ) ! ;
4141 expect ( timestampString . innerHTML ) . toEqual ( "Feb 01, 2020" ) ;
4242 expect ( timestampString . getAttribute ( "datetime" ) ) . toEqual ( "2020-02-01" ) ;
4343
44- const timestampDate = target . querySelector ( '[data-test="timestamp-date"]' ) ! ;
44+ const timestampDate = getElement ( '[data-test="timestamp-date"]' ) ! ;
4545 expect ( timestampDate . innerHTML ) . toEqual (
4646 dayjs ( date ) . format ( "dddd @ h:mm a" ) ,
4747 ) ;
4848 expect ( timestampDate . getAttribute ( "datetime" ) ) . toEqual ( date + "" ) ;
4949
50- const timestampNumber = target . querySelector (
51- '[data-test="timestamp-number"]' ,
52- ) ! ;
50+ const timestampNumber = getElement ( '[data-test="timestamp-number"]' ) ! ;
5351 expect ( timestampNumber . innerHTML ) . toEqual (
5452 dayjs ( 1e10 ) . format ( "dddd @ h:mm A · MMMM D, YYYY" ) ,
5553 ) ;
5654 expect ( timestampNumber . getAttribute ( "datetime" ) ) . toEqual ( 1e10 + "" ) ;
5755
58- const relative = target . querySelector ( '[data-test="relative"]' ) ! ;
56+ const relative = getElement ( '[data-test="relative"]' ) ! ;
5957 expect ( relative . innerHTML ) . toEqual ( "a few seconds ago" ) ;
6058 expect ( relative . getAttribute ( "datetime" ) ) . toEqual ( timestamp ) ;
6159
62- const relativeTimestamp = target . querySelector (
63- '[data-test="relative-timestamp"]' ,
64- ) ! ;
60+ const relativeTimestamp = getElement ( '[data-test="relative-timestamp"]' ) ! ;
6561 expect ( / a g o / . test ( relativeTimestamp . innerHTML ) ) . toEqual ( true ) ;
6662 expect ( relativeTimestamp . getAttribute ( "datetime" ) ) . toEqual ( "2021-02-02" ) ;
6763
68- const relativeTimestampNumber = target . querySelector (
64+ const relativeTimestampNumber = getElement (
6965 '[data-test="relative-timestamp-number"]' ,
7066 ) ! ;
7167 expect ( relativeTimestampNumber . innerHTML ) . toEqual ( "54 years ago" ) ;
7268 expect ( relativeTimestampNumber . getAttribute ( "datetime" ) ) . toEqual ( 1e10 + "" ) ;
7369
74- const relativeLive = target . querySelector (
75- '[data-test="relative-live"]' ,
76- ) as HTMLTimeElement ;
77- const actionRelativeLive = target . querySelector (
78- '[data-test="action-relative-live"]' ,
79- ) as HTMLTimeElement ;
70+ const relativeLive = getElement ( '[data-test="relative-live"]' ) ;
71+ const actionRelativeLive = getElement ( '[data-test="action-relative-live"]' ) ;
8072
8173 expect ( relativeLive . title ) . toEqual ( DEFAULT_TIME ) ;
8274 expect ( actionRelativeLive . title ) . toEqual ( DEFAULT_TIME ) ;
@@ -105,47 +97,37 @@ describe("svelte-time", () => {
10597 expect ( relativeLive . getAttribute ( "datetime" ) ) . toEqual ( timestamp ) ;
10698 expect ( actionRelativeLive . getAttribute ( "datetime" ) ) . toEqual ( timestamp ) ;
10799
108- const action = target . querySelector (
109- '[data-test="action"]' ,
110- ) as HTMLTimeElement ;
100+ const action = getElement ( '[data-test="action"]' ) ;
111101 expect ( action . innerText ) . toEqual ( DEFAULT_TIME ) ;
112102 expect ( action . getAttribute ( "datetime" ) ) . toEqual ( timestamp ) ;
113103
114- const actionTimestampFormat = target . querySelector (
104+ const actionTimestampFormat = getElement (
115105 '[data-test="action-timestamp-format"]' ,
116- ) as HTMLTimeElement ;
106+ ) ;
117107 expect ( actionTimestampFormat . innerText ) . toEqual (
118108 dayjs ( "2021-02-02" ) . format ( "dddd @ h:mm A · MMMM D, YYYY" ) ,
119109 ) ;
120110 expect ( actionTimestampFormat . getAttribute ( "datetime" ) ) . toEqual (
121111 "2021-02-02" ,
122112 ) ;
123113
124- const dayjsOnly = target . querySelector ( '[data-test="dayjs"]' ) ! ;
114+ const dayjsOnly = getElement ( '[data-test="dayjs"]' ) ! ;
125115 expect ( dayjsOnly . innerHTML ) . toEqual ( DEFAULT_TIME ) ;
126116
127- const dayjsOnlyRelative = target . querySelector (
128- '[data-test="dayjs-relative"]' ,
129- ) ! ;
117+ const dayjsOnlyRelative = getElement ( '[data-test="dayjs-relative"]' ) ! ;
130118 expect ( dayjsOnlyRelative . innerHTML ) . toEqual ( "a few seconds ago" ) ;
131119 } ) ;
132120
133121 test ( "SvelteTimeLive.test.svelte" , async ( ) => {
134122 const target = document . body ;
135123
136- instance = new SvelteTimeLive ( {
137- target,
138- } ) ;
124+ instance = new SvelteTimeLive ( { target } ) ;
139125
140126 const date = new Date ( ) ;
141127 const timestamp = date . toISOString ( ) ;
142128
143- const relativeLive = target . querySelector (
144- '[data-test="relative-live"]' ,
145- ) as HTMLTimeElement ;
146- const actionRelativeLive = target . querySelector (
147- '[data-test="action-relative-live"]' ,
148- ) as HTMLTimeElement ;
129+ const relativeLive = getElement ( '[data-test="relative-live"]' ) ;
130+ const actionRelativeLive = getElement ( '[data-test="action-relative-live"]' ) ;
149131
150132 expect ( relativeLive . title ) . toEqual ( DEFAULT_TIME ) ;
151133 expect ( actionRelativeLive . title ) . toEqual ( DEFAULT_TIME ) ;
@@ -176,22 +158,14 @@ describe("svelte-time", () => {
176158 test ( "SvelteTimeCustomTitle.test.svelte" , async ( ) => {
177159 const target = document . body ;
178160
179- instance = new SvelteTimeCustomTitle ( {
180- target,
181- } ) ;
182-
183- const relativeLive = target . querySelector (
184- '[data-test="custom-title"]' ,
185- ) as HTMLTimeElement ;
186- const relativeLiveOmit = target . querySelector (
187- '[data-test="custom-title-omit"]' ,
188- ) as HTMLTimeElement ;
189- const actionRelativeLive = target . querySelector (
190- '[data-test="action-custom-title"]' ,
191- ) as HTMLTimeElement ;
192- const actionRelativeOmit = target . querySelector (
161+ instance = new SvelteTimeCustomTitle ( { target } ) ;
162+
163+ const relativeLive = getElement ( '[data-test="custom-title"]' ) ;
164+ const relativeLiveOmit = getElement ( '[data-test="custom-title-omit"]' ) ;
165+ const actionRelativeLive = getElement ( '[data-test="action-custom-title"]' ) ;
166+ const actionRelativeOmit = getElement (
193167 '[data-test="action-custom-title-omit"]' ,
194- ) as HTMLTimeElement ;
168+ ) ;
195169
196170 expect ( relativeLiveOmit . title ) . toEqual ( "" ) ;
197171 expect ( relativeLive . title ) . toEqual ( "Custom title" ) ;
0 commit comments