@@ -239,68 +239,81 @@ def test_render_markup(self):
239
239
'replace this text' }))
240
240
241
241
242
- class RenderTests (MIUTestCase ):
243
- look_for = 'var element = $("#my_id");'
244
- auto_preview_override = True
245
-
246
- def test_widget_render (self ):
247
- widget = MarkItUpWidget ()
248
- self .assertIn (self .look_for ,
249
- widget .render ('name' , 'value' , {'id' : 'my_id' }))
250
-
251
- def test_widget_render_with_custom_id (self ):
252
- widget = MarkItUpWidget (attrs = {'id' : 'my_id' })
253
- self .assertIn (self .look_for ,
254
- widget .render ('name' , 'value' ))
255
-
256
- def test_widget_render_preview_parser_path (self ):
257
- widget = MarkItUpWidget ()
258
- self .assertIn ('mySettings["previewParserPath"] = "/markitup/preview/";' ,
259
- widget .render ('name' , 'value' , {'id' : 'my_id' }))
260
-
261
- def test_templatetag_render (self ):
262
- template = """{% load markitup_tags %}{% markitup_editor "my_id" %}"""
263
- self .assertIn (self .look_for ,
264
- self .render (template ))
265
-
266
- def test_templatetag_render_preview_parser_path (self ):
267
- template = """{% load markitup_tags %}{% markitup_editor "my_id" %}"""
268
- self .assertIn ('mySettings["previewParserPath"] = "/markitup/preview/";' ,
269
- self .render (template ))
270
-
271
- def test_per_widget_auto_preview_override (self ):
272
- widget = MarkItUpWidget (auto_preview = self .auto_preview_override )
273
- self .assertIn (AutoPreviewSettingTests .look_for ,
274
- widget .render ('name' , 'value' , {'id' : 'my_id' }),
275
- reverse = not self .auto_preview_override )
276
-
277
- def test_per_ttag_auto_preview_override (self ):
278
- if self .auto_preview_override :
279
- arg = "auto_preview"
280
- else :
281
- arg = "no_auto_preview"
282
- template = """{%% load markitup_tags %%}{%% markitup_editor "my_id" "%s" %%}""" % (arg ,)
283
- self .assertIn (AutoPreviewSettingTests .look_for ,
284
- self .render (template ),
285
- reverse = not self .auto_preview_override )
286
-
287
-
288
- class AutoPreviewSettingTests (RenderTests ):
289
- look_for = "$('a[title=\" Preview\" ]').trigger('mouseup');"
290
- auto_preview_override = False
242
+ class RenderTestMixin (object ):
243
+ look_for = 'OVERRIDE ME'
244
+ look_for_auto_preview = 'data-auto-preview="1"'
291
245
292
246
def setUp (self ):
293
247
self ._old_auto = settings .MARKITUP_AUTO_PREVIEW
294
- settings .MARKITUP_AUTO_PREVIEW = True
295
248
296
249
def tearDown (self ):
297
250
settings .MARKITUP_AUTO_PREVIEW = self ._old_auto
298
251
252
+ def render_subject (self , auto_preview = None ):
253
+ raise NotImplemented ('OVERRIDE ME' )
254
+
255
+ def test_render (self ):
256
+ self .assertIn (self .look_for , self .render_subject ())
257
+
258
+ def test_render_preview_parser_path (self ):
259
+ self .assertIn ('data-preview-url="/markitup/preview/"' ,
260
+ self .render_subject ())
261
+
262
+ def test_auto_preview_setting (self ):
263
+ settings .MARKITUP_AUTO_PREVIEW = True
264
+ self .assertIn (self .look_for_auto_preview , self .render_subject ())
265
+
266
+ def test_auto_preview_override (self ):
267
+ self .assertIn (self .look_for_auto_preview ,
268
+ self .render_subject (True ))
269
+
270
+ def test_auto_preview_override_setting (self ):
271
+ settings .MARKITUP_AUTO_PREVIEW = True
272
+ self .assertIn (self .look_for_auto_preview ,
273
+ self .render_subject (False ),
274
+ reverse = True )
275
+
276
+
277
+ class RenderTemplateTagTests (RenderTestMixin , MIUTestCase ):
278
+ look_for = 'data-element="#my_id"'
279
+
280
+ def render_subject (self , auto_preview = None ):
281
+ if auto_preview is True :
282
+ params = '"auto_preview"'
283
+ elif auto_preview is False :
284
+ params = '"no_auto_preview"'
285
+ else :
286
+ params = ''
287
+ template = ('{% load markitup_tags %}{% markitup_editor "my_id" '
288
+ + params + ' %}' )
289
+ return self .render (template )
290
+
291
+
292
+ class RenderWidgetTests (RenderTestMixin , MIUTestCase ):
293
+ look_for = 'class="django-markitup-widget"'
294
+
295
+ def render_subject (self , auto_preview = None ):
296
+ widget = MarkItUpWidget (auto_preview = auto_preview )
297
+ return widget .render ('name' , 'value' )
298
+
299
299
300
300
class TemplatetagMediaUrlTests (MIUTestCase ):
301
301
maxDiff = None
302
302
prefix = '/static'
303
303
304
+ @property
305
+ def script_tags (self ):
306
+ return (
307
+ '<script type="text/javascript" '
308
+ 'src="%(prefix)s/markitup/ajax_csrf.js"></script>\n '
309
+ '<script type="text/javascript" '
310
+ 'src="%(prefix)s/markitup/jquery.markitup.js"></script>\n '
311
+ '<script type="text/javascript" '
312
+ 'src="%(prefix)s/markitup/sets/default/set.js"></script>\n '
313
+ '<script type="text/javascript" '
314
+ 'src="%(prefix)s/markitup/django-markitup.js"></script>'
315
+ ) % {'prefix' : self .prefix }
316
+
304
317
def setUp (self ):
305
318
self ._reset_storage ()
306
319
@@ -339,9 +352,7 @@ def _get_expected_media(self):
339
352
out = """<link href="%(prefix)s/markitup/skins/simple/style.css" type="text/css" media="screen" rel="stylesheet" />
340
353
<link href="%(prefix)s/markitup/sets/default/style.css" type="text/css" media="screen" rel="stylesheet" />
341
354
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
342
- <script type="text/javascript" src="%(prefix)s/markitup/ajax_csrf.js"></script>
343
- <script type="text/javascript" src="%(prefix)s/markitup/jquery.markitup.js"></script>
344
- <script type="text/javascript" src="%(prefix)s/markitup/sets/default/set.js"></script>""" % {'prefix' : self .prefix }
355
+ """ % {'prefix' : self .prefix } + self .script_tags
345
356
return out
346
357
347
358
# JQUERY_URL settings and resulting link
@@ -382,12 +393,7 @@ def test_jquery_url(self):
382
393
else :
383
394
self .assertHTMLEqual (
384
395
self ._get_js (),
385
- (
386
- '<script type="text/javascript" src="%(prefix)s/markitup/ajax_csrf.js"></script>\n '
387
- '<script type="text/javascript" src="%(prefix)s/markitup/jquery.markitup.js"></script>\n '
388
- '<script type="text/javascript" src="%(prefix)s/markitup/sets/default/set.js"></script>'
389
- % {'prefix' : self .prefix }
390
- ))
396
+ self .script_tags )
391
397
finally :
392
398
settings .JQUERY_URL = _old_jquery_url
393
399
0 commit comments