From 08b2b65c00d1bc1c7fa023be85637f12657d69b1 Mon Sep 17 00:00:00 2001 From: Nikola Gava Date: Thu, 20 Apr 2023 17:43:19 +0200 Subject: [PATCH] fix escaped css rules --- premailer/data/leftover_test.html | 20 ++++++++++++++++++++ premailer/premailer_from_file_test.go | 10 ++++++++++ premailer/util.go | 2 +- 3 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 premailer/data/leftover_test.html diff --git a/premailer/data/leftover_test.html b/premailer/data/leftover_test.html new file mode 100644 index 0000000..80a5b36 --- /dev/null +++ b/premailer/data/leftover_test.html @@ -0,0 +1,20 @@ + + + + + + + +
Hover me!
+ + + \ No newline at end of file diff --git a/premailer/premailer_from_file_test.go b/premailer/premailer_from_file_test.go index 6008707..a20e55e 100644 --- a/premailer/premailer_from_file_test.go +++ b/premailer/premailer_from_file_test.go @@ -19,6 +19,16 @@ func TestBasicHTMLFromFile(t *testing.T) { assert.Contains(t, resultHTML, "
Green color
") } +func TestLeftoverCssRules(t *testing.T) { + p, err := NewPremailerFromFile("data/leftover_test.html", nil) + assert.Nil(t, err) + resultHTML, err := p.Transform() + assert.Nil(t, err) + + assert.Contains(t, resultHTML, "
Hover me!
") + assert.Contains(t, resultHTML, "") +} + func TestFromFileNotFound(t *testing.T) { p, err := NewPremailerFromFile("data/blablabla.html", nil) assert.NotNil(t, err) diff --git a/premailer/util.go b/premailer/util.go index acbf69b..127823e 100644 --- a/premailer/util.go +++ b/premailer/util.go @@ -10,7 +10,7 @@ func copyRule(selector string, rule *css.CSSRule) *css.CSSRule { for _, s := range rule.Style.Styles { styles = append(styles, css.NewCSSStyleDeclaration(s.Property, s.Value.Text(), s.Important)) } - copiedStyle := css.CSSStyleRule{Selector: css.NewCSSValueString(selector), Styles: styles} + copiedStyle := css.CSSStyleRule{Selector: css.NewCSSValue(selector), Styles: styles} copiedRule := &css.CSSRule{Type: rule.Type, Style: copiedStyle} return copiedRule }