File tree Expand file tree Collapse file tree 1 file changed +119
-0
lines changed Expand file tree Collapse file tree 1 file changed +119
-0
lines changed Original file line number Diff line number Diff line change @@ -868,6 +868,125 @@ const tests = [
868868 options : { mode : "pure" } ,
869869 error : / i s n o t p u r e / ,
870870 } ,
871+ {
872+ name : "css nesting" ,
873+ input : `
874+ .foo {
875+ &.class {
876+ a_value: some-value;
877+ }
878+
879+ @media screen and (min-width: 900px) {
880+ b_value: some-value;
881+
882+ .bar {
883+ c_value: some-value;
884+ }
885+
886+ &.baz {
887+ c_value: some-value;
888+ }
889+ }
890+ }` ,
891+ expected : `
892+ :local(.foo) {
893+ &:local(.class) {
894+ a_value: some-value;
895+ }
896+
897+ @media screen and (min-width: 900px) {
898+ b_value: some-value;
899+
900+ :local(.bar) {
901+ c_value: some-value;
902+ }
903+
904+ &:local(.baz) {
905+ c_value: some-value;
906+ }
907+ }
908+ }` ,
909+ } ,
910+ {
911+ name : "css nesting #1" ,
912+ options : { mode : "global" } ,
913+ input : `
914+ :local(.foo) {
915+ &:local(.class) {
916+ a_value: some-value;
917+ }
918+
919+ @media screen and (min-width: 900px) {
920+ b_value: some-value;
921+
922+ :local(.bar) {
923+ c_value: some-value;
924+ }
925+
926+ &:local(.baz) {
927+ c_value: some-value;
928+ }
929+ }
930+ }` ,
931+ expected : `
932+ :local(.foo) {
933+ &:local(.class) {
934+ a_value: some-value;
935+ }
936+
937+ @media screen and (min-width: 900px) {
938+ b_value: some-value;
939+
940+ :local(.bar) {
941+ c_value: some-value;
942+ }
943+
944+ &:local(.baz) {
945+ c_value: some-value;
946+ }
947+ }
948+ }` ,
949+ } ,
950+ {
951+ name : "css nesting #2" ,
952+ options : { mode : "pure" } ,
953+ input : `
954+ .foo {
955+ &.class {
956+ a_value: some-value;
957+ }
958+
959+ @media screen and (min-width: 900px) {
960+ b_value: some-value;
961+
962+ .bar {
963+ c_value: some-value;
964+ }
965+
966+ &.baz {
967+ c_value: some-value;
968+ }
969+ }
970+ }` ,
971+ expected : `
972+ :local(.foo) {
973+ &:local(.class) {
974+ a_value: some-value;
975+ }
976+
977+ @media screen and (min-width: 900px) {
978+ b_value: some-value;
979+
980+ :local(.bar) {
981+ c_value: some-value;
982+ }
983+
984+ &:local(.baz) {
985+ c_value: some-value;
986+ }
987+ }
988+ }` ,
989+ } ,
871990 /*
872991 Bug in postcss-selector-parser
873992 {
You can’t perform that action at this time.
0 commit comments