mirror of
https://github.com/jackyzha0/quartz.git
synced 2025-12-25 13:54:05 -06:00
40 lines
890 B
Go
40 lines
890 B
Go
package cascadia
|
|
|
|
import (
|
|
"reflect"
|
|
"testing"
|
|
)
|
|
|
|
func TestSerialize(t *testing.T) {
|
|
var testSer []string
|
|
for _, test := range selectorTests {
|
|
testSer = append(testSer, test.selector)
|
|
}
|
|
for _, test := range testsPseudo {
|
|
testSer = append(testSer, test.selector)
|
|
}
|
|
for _, test := range loadValidSelectors(t) {
|
|
if test.Xfail {
|
|
continue
|
|
}
|
|
testSer = append(testSer, test.Selector)
|
|
}
|
|
|
|
for _, test := range testSer {
|
|
s, err := ParseGroupWithPseudoElements(test)
|
|
if err != nil {
|
|
t.Fatalf("error compiling %q: %s", test, err)
|
|
}
|
|
|
|
serialized := s.String()
|
|
s2, err := ParseGroupWithPseudoElements(serialized)
|
|
if err != nil {
|
|
t.Errorf("error compiling %q: %s %T (original : %s)", serialized, err, s, test)
|
|
}
|
|
|
|
if !reflect.DeepEqual(s, s2) {
|
|
t.Errorf("can't retrieve selector from serialized : %s (original : %s, sel : %#v)", serialized, test, s)
|
|
}
|
|
}
|
|
}
|