def test_gfm_code_blocks(self):
        # Without a syntax header
        self.assertEqual(
            gfm("```\nprint 'Hello'\n```"),
            "    print 'Hello'"
            )
        # With a syntax header
        self.assertEqual(
            gfm("```python\nprint 'Hello'\n```"),
            "    :::python\n    print 'Hello'"
            )
        # Embedded in some text
        self.assertEqual(gfm(
            "Some code:\n"
            "\n"
            "```python\n"
            "print 'Hello world'\n"
            "for x in range(10):\n"
            "    print x\n"
            "```\n"
            "\n"
            "Works?"),

            "Some code:\n"
            "\n"
            "    :::python\n"
            "    print 'Hello world'\n"
            "    for x in range(10):\n"
            "        print x\n"
            "\n"
            "Works?")

        # Embedded in some text, with \r\n line endings
        self.assertEqual(gfm(
            "Some code:\r\n"
            "\r\n"
            "```python\r\n"
            "print 'Hello world'\r\n"
            "for x in range(10):\r\n"
            "    print x\r\n"
            "```\r\n"
            "\r\n"
            "Works?"),

            "Some code:\r\n"
            "\r\n"
            "    :::python\r\n"
            "    print 'Hello world'\r\n"
            "    for x in range(10):\r\n"
            "        print x\r\n"
            "\r\n"
            "Works?")
Setting node affiliations must include an affiliation.
dataset/ETHPy150Open hasgeek/coaster/tests/test_gfm.py/TestMarkdown.test_gfm_code_blocks--crossover with--dataset/ETHPy150Open ralphm/wokkel/wokkel/test/test_pubsub.py/PubSubServiceTest.test_on_affiliationsSetMissingAffiliation