def test_leave_midline_carets(self):
     code_node = get_code_node(
         "<html>",
         "  <body>",
         "    <p>Text above</p>",
         "    <code>print 'Hello &gt;&gt;&gt; all!'</code>",
         "  </body>",
         "</html>",
     )
     code = extract_code(code_node)
     self.assertEqual(code, "print 'Hello >>> all!'")
 def test_clean_interactive_ellipses(self):
     code_node = get_code_node(
         "<html>",
         "  <body>",
         "    <p>Text above</p>",
         "    <code>...     pass</code>",
         "  </body>",
         "</html>",
     )
     code = extract_code(code_node)
     self.assertEqual(code, "    pass")
 def test_clean_interactive_carets(self):
     code_node = get_code_node(
         "<html>",
         "  <body>",
         "    <p>Text above</p>",
         "    <code>&gt;&gt;&gt; print 'Hello'</code>",
         "  </body>",
         "</html>",
     )
     code = extract_code(code_node)
     self.assertEqual(code, "print 'Hello'")
 def test_clean_interactive_carets_on_multiple_lines(self):
     code_node = get_code_node(
         "<html>",
         "  <body>",
         "    <p>Text above</p>",
         "    <code>&gt;&gt;&gt; print 'Hello'",
         "&gt;&gt;&gt; print 'Goodbye'</code>",
         "  </body>",
         "</html>",
     )
     code = extract_code(code_node)
     self.assertEqual(code, "print 'Hello'\nprint 'Goodbye'")