@@ -20,3 +20,54 @@ test('node#replaceWith', (t) => {
2020 } ) ;
2121 t . deepEqual ( out , '#test.test' ) ;
2222} ) ;
23+
24+ test ( 'Node#appendToPropertyAndEscape' , ( t ) => {
25+ let out = parse ( '.fo\\o' , ( selectors ) => {
26+ let className = selectors . first . first ;
27+ t . deepEqual ( className . raws , { value : "fo\\o" } ) ;
28+ className . appendToPropertyAndEscape ( "value" , "bar" , "ba\\r" ) ;
29+ t . deepEqual ( className . raws , { value : "fo\\oba\\r" } ) ;
30+ } ) ;
31+ t . deepEqual ( out , '.fo\\oba\\r' ) ;
32+ } ) ;
33+
34+ test ( 'Node#setPropertyAndEscape with existing raws' , ( t ) => {
35+ let out = parse ( '.fo\\o' , ( selectors ) => {
36+ let className = selectors . first . first ;
37+ t . deepEqual ( className . raws , { value : "fo\\o" } ) ;
38+ className . setPropertyAndEscape ( "value" , "bar" , "ba\\r" ) ;
39+ t . deepEqual ( className . raws , { value : "ba\\r" } ) ;
40+ } ) ;
41+ t . deepEqual ( out , '.ba\\r' ) ;
42+ } ) ;
43+
44+ test ( 'Node#setPropertyAndEscape without existing raws' , ( t ) => {
45+ let out = parse ( '.foo' , ( selectors ) => {
46+ let className = selectors . first . first ;
47+ t . deepEqual ( className . raws , undefined ) ;
48+ className . setPropertyAndEscape ( "value" , "bar" , "ba\\r" ) ;
49+ t . deepEqual ( className . raws , { value : "ba\\r" } ) ;
50+ } ) ;
51+ t . deepEqual ( out , '.ba\\r' ) ;
52+ } ) ;
53+
54+ test ( 'Node#setPropertyWithoutEscape with existing raws' , ( t ) => {
55+ let out = parse ( '.fo\\o' , ( selectors ) => {
56+ let className = selectors . first . first ;
57+ t . deepEqual ( className . raws , { value : "fo\\o" } ) ;
58+ className . setPropertyWithoutEscape ( "value" , "w+t+f" ) ;
59+ t . deepEqual ( className . raws , { } ) ;
60+ } ) ;
61+ t . deepEqual ( out , '.w+t+f' ) ;
62+ } ) ;
63+
64+ test ( 'Node#setPropertyWithoutEscape without existing raws' , ( t ) => {
65+ let out = parse ( '.foo' , ( selectors ) => {
66+ let className = selectors . first . first ;
67+ t . deepEqual ( className . raws , undefined ) ;
68+ className . setPropertyWithoutEscape ( "value" , "w+t+f" ) ;
69+ t . deepEqual ( className . raws , { } ) ;
70+ t . deepEqual ( className . value , "w+t+f" ) ;
71+ } ) ;
72+ t . deepEqual ( out , '.w+t+f' ) ;
73+ } ) ;
0 commit comments