@@ -8,40 +8,76 @@ import {
88const TEST_CASES = [
99 {
1010 code : '<template>hi</template>' ,
11- expected : [ `{/* hi */}` ] ,
11+ expected : [ '{t:` hi `}' ] ,
1212 } ,
1313 {
1414 code : '<template>/* hi */</template>' ,
15- expected : [ `{/* ~* hi *~ */}` ] ,
15+ expected : [ '{t:` ~* hi *~ `}' ] ,
1616 } ,
1717 {
1818 code : '<template><div>hi</div></template>' ,
19- expected : [ `{/* <div>hi<~div> */}` ] ,
19+ expected : [ '{t:` <div>hi<~div> `}' ] ,
2020 } ,
2121 {
2222 code : '<template>{{#if true}}hi{{/if}}</template>' ,
23- expected : [ `{/*{{ #if true}}hi{{~if}} */}` ] ,
23+ expected : [ '{t:`{{ #if true}}hi{{~if}} `}' ] ,
2424 } ,
2525 {
2626 code : '<template>////////////////</template>' ,
27- expected : [ `{/* ~~~~~~~~~~~~~~~~ */}` ] ,
27+ expected : [ '{t:` ~~~~~~~~~~~~~~~~ `}' ] ,
2828 } ,
2929 {
3030 code : '<template>💩</template>' ,
31- expected : [ `{/* 💩 */}` ] ,
31+ expected : [ '{t:` 💩 `}' ] ,
3232 } ,
3333 {
3434 code : 'const a = <template>foo</template>; const b = <template>bar</template>;' ,
3535 expected : [
36- ` const a = {/* foo */ }; const b = <template>bar</template>;` ,
37- ` const a = <template>foo</template>; const b = {/* bar */};` ,
36+ ' const a = {t:` foo ` }; const b = <template>bar</template>;' ,
37+ ' const a = <template>foo</template>; const b = {t:` bar `};' ,
3838 ] ,
3939 } ,
4040 {
4141 code : `const a = <template>💩💩💩💩💩💩💩</template>; const b = <template>💩</template>` ,
4242 expected : [
43- `const a = {/*💩💩💩💩💩💩💩 */}; const b = <template>💩</template>` ,
44- `const a = <template>💩💩💩💩💩💩💩</template>; const b = {/*💩 */}` ,
43+ 'const a = {t:`💩💩💩💩💩💩💩 `}; const b = <template>💩</template>' ,
44+ 'const a = <template>💩💩💩💩💩💩💩</template>; const b = {t:`💩 `}' ,
45+ ] ,
46+ } ,
47+ {
48+ code : 'class Thing { <template>hello</template> }' ,
49+ expected : [ 'class Thing { static{t:`hello `} }' ] ,
50+ } ,
51+ {
52+ code : `export default <template> Explicit default export module top level component. Explicit default export module top level component. Explicit default export module top level component. Explicit default export module top level component. Explicit default export module top level component. </template>
53+ /*AMBIGUOUS*/` ,
54+ expected : [
55+ `export default {t:` +
56+ '` Explicit default export module top level component. Explicit default export module top level component. Explicit default export module top level component. Explicit default export module top level component. Explicit default export module top level component. `}' +
57+ `
58+ /*AMBIGUOUS*/` ,
59+ ] ,
60+ } ,
61+ {
62+ code : `class MyComponent
63+ extends Component {
64+ // prettier-ignore
65+ <template>
66+
67+
68+ <h1> Class top level template. Class top level template. Class top level template. Class top level template. Class top level template. </h1>
69+ </template>
70+ }` ,
71+ expected : [
72+ `class MyComponent
73+ extends Component {
74+ // prettier-ignore
75+ static{t:\`
76+
77+
78+ <h1> Class top level template. Class top level template. Class top level template. Class top level template. Class top level template. <~h1>
79+ \`}
80+ }` ,
4581 ] ,
4682 } ,
4783] ;
0 commit comments