@@ -64,8 +64,6 @@ class PlaceholderTest {
6464 editText.fromHtml(initialHtml)
6565
6666 editText.setSelection(0 )
67- val attributes = AztecAttributes ()
68- attributes.setValue(" id" , " 1234" )
6967 ImageWithCaptionAdapter .insertImageWithCaption(placeholderManager, " image.jpg" , " Caption 123" )
7068
7169 Assert .assertEquals(" <placeholder uuid=\" $uuid \" type=\" image_with_caption\" src=\" image.jpg\" caption=\" Caption 123\" /><p>Line 1</p>" , editText.toHtml())
@@ -86,8 +84,6 @@ class PlaceholderTest {
8684 editText.fromHtml(initialHtml)
8785
8886 editText.setSelection(editText.editableText.indexOf(" 1" ))
89- val attributes = AztecAttributes ()
90- attributes.setValue(" id" , " 1234" )
9187 ImageWithCaptionAdapter .insertImageWithCaption(placeholderManager, " image.jpg" , " Caption 123" )
9288
9389 Assert .assertEquals(" <p>Line 123<placeholder uuid=\" uuid123\" type=\" image_with_caption\" src=\" image.jpg\" caption=\" Caption 123\" /></p><p>Line 2</p>" , editText.toHtml())
@@ -108,12 +104,10 @@ class PlaceholderTest {
108104 editText.fromHtml(initialHtml)
109105
110106 editText.setSelection(0 )
111- val attributes = AztecAttributes ()
112- attributes.setValue(" id" , " 1234" )
113107 ImageWithCaptionAdapter .insertImageWithCaption(placeholderManager, " image.jpg" , " Caption 1" )
114108 ImageWithCaptionAdapter .insertImageWithCaption(placeholderManager, " image.jpg" , " Caption 2" )
115109
116- Assert .assertEquals(" <placeholder src= \" image.jpg \" caption= \" Caption 2 - Caption 1\" uuid= \" uuid123 \" type= \" image_with_caption \" /> <p>Line 1</p>" , editText.toHtml())
110+ Assert .assertEquals(" ${placeholderWithCaption( " Caption 2 - Caption 1" )} <p>Line 1</p>" , editText.toHtml())
117111
118112 placeholderManager.removeItem {
119113 it.getValue(" uuid" ) == uuid
@@ -122,4 +116,36 @@ class PlaceholderTest {
122116 Assert .assertEquals(initialHtml, editText.toHtml())
123117 }
124118 }
119+
120+ @Test
121+ @Throws(Exception ::class )
122+ fun insertOrUpdateAPlaceholderWhenInsertingBeforeNewLine () {
123+ runBlocking {
124+ val initialHtml = " <p>Line 1</p>${placeholderWithCaption(" First" )} <p>Line 2</p>"
125+ editText.fromHtml(initialHtml)
126+
127+ editText.setSelection(editText.editableText.indexOf(" 1" ))
128+ ImageWithCaptionAdapter .insertImageWithCaption(placeholderManager, " image.jpg" , " Second" )
129+
130+ Assert .assertEquals(" <p>Line 1</p>${placeholderWithCaption(" Second - First" )} <p>Line 2</p>" , editText.toHtml())
131+ }
132+ }
133+
134+ @Test
135+ @Throws(Exception ::class )
136+ fun insertOrUpdateAPlaceholderWhenInsertingRightBefore () {
137+ runBlocking {
138+ val initialHtml = " <p>Line 1</p>${placeholderWithCaption(" First" )} <p>Line 2</p>"
139+ editText.fromHtml(initialHtml)
140+
141+ editText.setSelection(editText.editableText.indexOf(" 1" ) + 1 )
142+ ImageWithCaptionAdapter .insertImageWithCaption(placeholderManager, " image.jpg" , " Second" )
143+
144+ Assert .assertEquals(" <p>Line 1</p>${placeholderWithCaption(" Second - First" )} <p>Line 2</p>" , editText.toHtml())
145+ }
146+ }
147+
148+ private fun placeholderWithCaption (caption : String ): String {
149+ return " <placeholder src=\" image.jpg\" caption=\" $caption \" uuid=\" uuid123\" type=\" image_with_caption\" />"
150+ }
125151}
0 commit comments