def test_leaves_double_newline_after_numbered_list_unchanged(self): self.maxDiff = None text = ('Before list.\n' '1. First item\n' 'continues here.\n' '1. Second item\n' 'continues here.\n' '\n' 'After list.') expected = ('Before list.\n' '1. First item continues here.\n' '1. Second item continues here.\n' '\n' 'After list.') self.assertEqual(clean_up_newlines(text), expected)
def test_realistic_example(self): self.maxDiff = None text = ('## Try CommonMark\n\n' 'You can try CommonMark here.\n' 'This dingus is powered by\n' '[commonmark.js](https://github.com/jgm/commonmark.js), the\n' 'JavaScript reference implementation.\n' '1. item one\n' '2. item two\n' ' - sublist\n' ' - sublist\n') expected = ('## Try CommonMark\n' 'You can try CommonMark here. This dingus is powered by ' '[commonmark.js](https://github.com/jgm/commonmark.js), the ' 'JavaScript reference implementation.\n' '1. item one\n' '2. item two\n' ' - sublist\n' ' - sublist\n') self.assertEqual(clean_up_newlines(text), expected)
def test_replaces_single_newline_in_two_places_with_spaces(self): text = 'abc\ndef\nghi' self.assertEqual(clean_up_newlines(text), 'abc def ghi')
def test_leaves_whitespace_before_newline_unchanged(self): text = 'abc\t \ndef' self.assertEqual(clean_up_newlines(text), 'abc\t \ndef')
def test_replaces_single_newline_with_space(self): text = 'abc\ndef' self.assertEqual(clean_up_newlines(text), 'abc def')
def test_leaves_newline_unchanged_before_line_starting_with_tab(self): text = 'abc\n\tdef' self.assertEqual(clean_up_newlines(text), 'abc\n\tdef')
def test_removes_whitespace_between_newlines(self): text = 'abc\n\t\r \ndef' self.assertEqual(clean_up_newlines(text), 'abc\n\ndef')
def test_leaves_newline_unchanged_before_numbered_list_item_with_bracket(self): text = 'abc\n123) def' self.assertEqual(clean_up_newlines(text), 'abc\n123) def')
def test_leaves_newline_unchanged_before_star_bullet(self): text = 'abc\n* def' self.assertEqual(clean_up_newlines(text), 'abc\n* def')
def test_leaves_newline_after_heading_at_the_start_of_string_unchanged(self): text = '# Heading\nBody text.' self.assertEqual(clean_up_newlines(text), '# Heading\nBody text.')
def test_leaves_double_newline_unchanged_after_inline_number(self): text = ('a1.bc\n\ndef') self.assertEqual(clean_up_newlines(text), 'a1.bc\n\ndef')
def ignore_test_replaces_bullet_character_with_star(self): text = '• This is a bullet' self.assertEqual(clean_up_newlines(text), '* This is a bullet')
def test_leaves_newline_after_heading_unchanged(self): text = 'previous paragraph.\n\n# Heading\nBody text.' self.assertEqual(clean_up_newlines(text), 'previous paragraph. \n# Heading\nBody text.')
def test_handles_newlines_after_punctuation(self): text = 'abc,\r\n\r\ndef.\r\n\r\nghi)\r\n\r\njkl' self.assertEqual(clean_up_newlines(text), 'abc,\n\ndef.\n\nghi)\n\njkl')
def test_replaces_single_newlines_with_space_also_after_punctuation(self): text = 'abc,\r\ndef.\r\nghi)\r\njkl' self.assertEqual(clean_up_newlines(text), 'abc, def. ghi) jkl')
def test_replaces_newline_with_space_after_numbered_list_item_with_bracket(self): text = 'abc\n123) def\nefg' self.assertEqual(clean_up_newlines(text), 'abc\n123) def efg') text = '123) def\nefg' self.assertEqual(clean_up_newlines(text), '123) def efg')
def test_leaves_double_newline_unchanged(self): text = 'abc\n\ndef' self.assertEqual(clean_up_newlines(text), 'abc\n\ndef')
def test_leaves_newline_unchanged_before_heading(self): text = 'abc\n# def' self.assertEqual(clean_up_newlines(text), 'abc\n# def')
def test_leaves_double_newline_unchanged_after_inline_bullet_character(self): text = ('a*bc\n\ndef') self.assertEqual(clean_up_newlines(text), 'a*bc\n\ndef')
def test_leaves_newline_unchanged_after_line_starting_with_tab(self): text = 'abc\n\tdef\nghi' self.assertEqual(clean_up_newlines(text), 'abc\n\tdef\nghi') text = '\tdef\nghi' self.assertEqual(clean_up_newlines(text), '\tdef\nghi')
def test_replaces_four_newlines_with_double_newline(self): text = 'abc\n\n\n\ndef' self.assertEqual(clean_up_newlines(text), 'abc\n\ndef')
def test_removes_carriage_returns(self): text = 'abc\rdef' self.assertEqual(clean_up_newlines(text), 'abcdef')
def test_leaves_newline_unchanged_after_heading(self): text = 'abc\n# def\nghi' self.assertEqual(clean_up_newlines(text), 'abc\n# def\nghi') text = '# def\nghi' self.assertEqual(clean_up_newlines(text), '# def\nghi')
def test_removes_duplicate_spaces(self): text = 'abc def' self.assertEqual(clean_up_newlines(text), 'abc def')
def test_replaces_newline_with_space_after_star_bullet(self): text = 'abc\n* def\nghi' self.assertEqual(clean_up_newlines(text), 'abc\n* def ghi') text = '* def\nghi' self.assertEqual(clean_up_newlines(text), '* def ghi')
def test_leaves_duplicate_spaces_at_line_start_unchanged(self): text = ' abc' self.assertEqual(clean_up_newlines(text), ' abc')