@@ -108,4 +108,90 @@ class HtmlTagsTest {
108108 val expect = """ <html><head><script>some script</script></head><body><h1 style="background-color: blue; color: red;">This is my title</h1><div style="background-color: blue; color: red;"><p class="contentpara first">This is my first paragraph</p><a style="opacity: 0.9;"><p class="contentpara">Goooogle</p></a></div></body></html>"""
109109 assertEquals(expect, actual)
110110 }
111+
112+ @ Test
113+ def appliedTagAndSeqAppliedTag = {
114+ val actual = div(h1(" AppliedTag" ), Seq (h1(" SeqAppliedTag" ))).toString
115+ val expect = """ <div><h1>AppliedTag</h1><h1>SeqAppliedTag</h1></div>"""
116+ assertEquals(expect, actual)
117+ }
118+
119+ @ Test
120+ def stringAndSeqString = {
121+ val actual = div(" String" , Seq (" SeqString" )).toString
122+ val expect = """ <div>StringSeqString</div>"""
123+ assertEquals(expect, actual)
124+ }
125+
126+ @ Test
127+ def mixingAllTagArgs = {
128+ val actual = div(" String" , Seq (" SeqString" ), h1(" AppliedTag" ), Seq (h1(" SeqAppliedTag" )), Seq (" SeqString" ), h1(" AppliedTag" )).toString
129+ val expect = """ <div>StringSeqString<h1>AppliedTag</h1><h1>SeqAppliedTag</h1>SeqString<h1>AppliedTag</h1></div>"""
130+ assertEquals(expect, actual)
131+ }
132+
133+ @ Test
134+ def appliedAttrAndSeqAppliedAttr = {
135+ val actual = div(cls := " someClass" , Seq (style := " some: style;" )).toString
136+ val expect = """ <div class="someClass" style="some: style;"></div>"""
137+ assertEquals(expect, actual)
138+ }
139+
140+ @ Test
141+ def seqAppliedAttrAndAppliedAttr = {
142+ val actual = div(Seq (cls := " someClass" ), style := " some: style;" ).toString
143+ val expect = """ <div class="someClass" style="some: style;"></div>"""
144+ assertEquals(expect, actual)
145+ }
146+
147+ @ Test
148+ def seqAppliedAttrAndSeqAppliedAttr = {
149+ val actual = div(Seq (cls := " someClass" ), Seq (style := " some: style;" )).toString
150+ val expect = """ <div class="someClass" style="some: style;"></div>"""
151+ assertEquals(expect, actual)
152+ }
153+
154+ @ Test
155+ def mixingAllTagArgsAndAllAttrArgs = {
156+ val actual = div(Seq (cls := " someClass" ), id := " myId" , Seq (style := " some: style;" ))(" String" , Seq (" SeqString" ), h1(" AppliedTag" ), Seq (h1(" SeqAppliedTag" )), Seq (" SeqString" ), h1(" AppliedTag" )).toString
157+ val expect = """ <div class="someClass" id="myId" style="some: style;">StringSeqString<h1>AppliedTag</h1><h1>SeqAppliedTag</h1>SeqString<h1>AppliedTag</h1></div>"""
158+ assertEquals(expect, actual)
159+ }
160+
161+ @ Test
162+ def nilTagArg = {
163+ val nil : TagArg = Nil
164+ val actual = div(nil).toString
165+ val expect = """ <div></div>"""
166+ assertEquals(expect, actual)
167+ }
168+
169+ @ Test
170+ def nilAttrArg = {
171+ val nil : AttrArg = Nil
172+ val actual = div(nil).toString
173+ val expect = """ <div></div>"""
174+ assertEquals(expect, actual)
175+ }
176+
177+ @ Test
178+ def nilAmongTags = {
179+ val actual = div(" name" , Nil , div(" ala" )).toString
180+ val expect = """ <div>name<div>ala</div></div>"""
181+ assertEquals(expect, actual)
182+ }
183+
184+ @ Test
185+ def nilAmongArgs = {
186+ val actual = div(cls := " someClass" , Nil , style := " some: style;" ).toString
187+ val expect = """ <div class="someClass" style="some: style;"></div>"""
188+ assertEquals(expect, actual)
189+ }
190+
191+ @ Test
192+ def nilAmongArgsAndTags = {
193+ val actual = div(cls := " someClass" , Nil , style := " some: style;" )(" name" , Nil , div(" ala" )).toString
194+ val expect = """ <div class="someClass" style="some: style;">name<div>ala</div></div>"""
195+ assertEquals(expect, actual)
196+ }
111197}
0 commit comments