Esempio n. 1
0
    def __init__(self, implementation, implementation_version, language, language_version, language_info,
                 session_language, user_code_parser=None, **kwargs):
        # Required by Jupyter - Override
        self.implementation = implementation
        self.implementation_version = implementation_version
        self.language = language
        self.language_version = language_version
        self.language_info = language_info

        # Override
        self.session_language = session_language

        super(SparkKernelBase, self).__init__(**kwargs)

        self.logger = SparkLog(u"{}_jupyter_kernel".format(self.session_language))
        self._fatal_error = None
        self.ipython_display = IpythonDisplay()

        if user_code_parser is None:
            self.user_code_parser = UserCodeParser()
        else:
            self.user_code_parser = user_code_parser

        # Disable warnings for test env in HDI
        requests.packages.urllib3.disable_warnings()

        if not kwargs.get("testing", False):
            self._load_magics_extension()
            self._change_language()
            if conf.use_auto_viz():
                self._register_auto_viz()
def test_scala_code():
    parser = UserCodeParser()
    cell = u"""/* Place the cursor in the cell and press SHIFT + ENTER to run */

val fruits = sc.textFile("wasb:///example/data/fruits.txt")
val yellowThings = sc.textFile("wasb:///example/data/yellowthings.txt")"""

    assert_equals(u"%%spark\n{}".format(cell), parser.get_code_to_run(cell))
def test_other_line_magic():
    parser = UserCodeParser()
    cell = u"""%magic
hi
hi
hi"""

    assert_equals(cell, parser.get_code_to_run(cell))
def test_other_cell_magic():
    parser = UserCodeParser()
    cell = u"""%%magic
hi
hi
hi"""

    assert_equals(u"{}".format(cell), parser.get_code_to_run(cell))
def test_local_double():
    parser = UserCodeParser()
    cell = u"""%%local
hi
hi
hi"""

    assert_equals(u"hi\nhi\nhi", parser.get_code_to_run(cell))
def test_unicode_in_magics():
    parser = UserCodeParser()
    magic_name = KernelMagics.info.__name__
    cell = u"""%{}
my content è🐙
more content""".format(magic_name)

    assert_equals(u"%%{}\nmy content è🐙\nmore content\n ".format(magic_name),
                  parser.get_code_to_run(cell))
def test_our_line_magics_with_content():
    parser = UserCodeParser()
    magic_name = KernelMagics.info.__name__
    cell = u"""%{}
my content
more content""".format(magic_name)

    assert_equals(u"%%{}\nmy content\nmore content\n ".format(magic_name),
                  parser.get_code_to_run(cell))
def test_unicode():
    parser = UserCodeParser()
    cell = u"print 'è🐙🐙🐙🐙'"

    assert_equals(u"%%spark\n{}".format(cell), parser.get_code_to_run(cell))
def test_empty_string():
    parser = UserCodeParser()

    assert_equals(u"", parser.get_code_to_run(u""))
def test_our_line_magics():
    parser = UserCodeParser()
    magic_name = KernelMagics.info.__name__
    cell = u"%{}".format(magic_name)

    assert_equals(u"%%{}\n ".format(magic_name), parser.get_code_to_run(cell))
def test_spark_code():
    parser = UserCodeParser()
    cell = u"my code\nand more"

    assert_equals(u"%%spark\nmy code\nand more", parser.get_code_to_run(cell))