コード例 #1
0
        def inter(self):

            try:
                Pinguino.set_board(board)
            except BaseException, msg:
                raise BaseException("Compilation: imposible set board %s\n%s" %
                                    (board.name, str(msg)))
コード例 #2
0
ファイル: test.py プロジェクト: Darriall/pinguino-ide
    def preprocess(self, arch):

        libinstructions = Pinguino.get_regobject_libinstructions(arch)

        for line, expected, include, define, regex in libinstructions:
            got = Pinguino.replace_word(line, libinstructions)
            if got != expected:
                got = Pinguino.replace_word(line, libinstructions)

            self.assertEqual(got, expected,
                             "Preprocess: Failure\ngot: '%s'\nexpected: '%s'"%(got, expected))
コード例 #3
0
    def preprocess(self, arch):

        libinstructions = Pinguino.get_regobject_libinstructions(arch)

        for line, expected, include, define, regex in libinstructions:
            got = Pinguino.replace_word(line, libinstructions)
            if got != expected:
                got = Pinguino.replace_word(line, libinstructions)

            self.assertEqual(
                got, expected,
                "Preprocess: Failure\ngot: '%s'\nexpected: '%s'" %
                (got, expected))
コード例 #4
0
class TestBareMinumumCompilation(unittest.TestCase):

    #----------------------------------------------------------------------
    @classmethod
    def compilation(cls, board):

        code = "void setup(){}; void loop(){}"

        def inter(self):

            try:
                Pinguino.set_board(board)
            except BaseException, msg:
                raise BaseException("Compilation: imposible set board %s\n%s" %
                                    (board.name, str(msg)))

            if board.arch == 8:
                for key in Pinguino.dict_boot.keys():
                    boot = Pinguino.dict_boot[key]
                    Pinguino.set_bootloader(boot)
                    try:
                        Pinguino.compile_string(code)
                    except BaseException, msg:
                        self.fail(
                            "Compilation: impossible compile for %s, %sbits, boot:%s\n%s"
                            % (board.name, board.arch, str(msg), key))

            if board.arch == 32:
                try:
                    Pinguino.compile_string(code)
                except BaseException, msg:
                    #raise BaseException("Compilation: impossible compile for %s, %sbits\n%s" % (board.name, board.arch, str(msg)))
                    self.fail(
                        "Compilation: impossible compile for %s, %sbits\n%s" %
                        (board.name, board.arch, str(msg)))
コード例 #5
0
ファイル: test.py プロジェクト: Darriall/pinguino-ide
    def compilation(cls, board):

        code = "void setup(){}; void loop(){}"

        def inter(self):

            try: Pinguino.set_board(board)
            except BaseException, msg:
                raise BaseException("Compilation: imposible set board %s\n%s" % (board.name, str(msg)))

            if board.arch == 8:
                for key in Pinguino.dict_boot.keys():
                    boot = Pinguino.dict_boot[key]
                    Pinguino.set_bootloader(boot)
                    try: Pinguino.compile_string(code)
                    except BaseException, msg:
                        self.fail("Compilation: impossible compile for %s, %sbits, boot:%s\n%s" % (board.name, board.arch, str(msg), key))
コード例 #6
0
ファイル: tests.py プロジェクト: sherckuith/pinguino-ide
    def test_preprocess(self):

        regobject, libinstructions = Pinguino.get_regobject_libinstructions(8)

        for line, expected, include, define in libinstructions:
            got = Pinguino.replace_word(line+"()", regobject, libinstructions)
            self.assertEqual(got, expected+"()",
                             "Preprocess: Failure\ngot: '%s'\nexpected: '%s'"%(got, expected))


        #Test extra words
        cases = (
            ("pinMode", "pinmode"),
            ("CDC.read", "CDCgets"),
            ("GLCD.init", "Init"),
        )

        for line, expected, in cases:
            got = Pinguino.replace_word(line+"()", regobject, libinstructions)
            expected += "()"
            self.assertEqual(got, expected,
                             "Preprocess: Failure\ngot: '%s'\nexpected: '%s'"%(got, expected))
コード例 #7
0
ファイル: test.py プロジェクト: Darriall/pinguino-ide
    def test_delete_comments(self):

        cases = (

            ("//Pinguino Rules!", ""),
            ("/*Pinguino Rules!*/", ""),
            ("/*Pinguino //Rules!*/", ""),
            ("///*Pinguino Rules!*/", ""),


            ("\n".join([
            "#define LED1 0\n",
            "//#define LED2 1\n",
            "/*\n",
            "1\n",
            "2\n",
            "3\n",
            "*/\n",
            "#include <math.h>\n",
            ]),
            "\n".join([
            "#define LED1 0\n",
            "\n",
            "\n",
            "\n",
            "\n",
            "\n",
            "\n",
            "#include <math.h>\n",
            ]),
            )

        )

        for case in cases:
            got = Pinguino.remove_comments(case[0])
            expected = case[1]
            self.assertMultiLineEqual(got, expected,
                                      "Remove comments: Failure\ngot: '%s'\nexpected: '%s'"%(got, expected))
コード例 #8
0
        #For PyInstaller compatibility
        if app is None:
            from PySide.QtGui import QApplication
            QApplication.instance().exec_()
        else:
            #sys.exit(app.exec_())
            app.exec_()

    else:  #command line

        from qtgui.pinguino_api.pinguino import Pinguino
        from qtgui.pinguino_api.pinguino_config import PinguinoConfig
        from qtgui.pinguino_api.config import Config

        pinguino = Pinguino()
        PinguinoConfig.set_environ_vars()
        PinguinoConfig.check_user_files()
        config = Config()
        PinguinoConfig.update_pinguino_paths(config, Pinguino)
        PinguinoConfig.update_pinguino_extra_options(config, Pinguino)
        PinguinoConfig.update_user_libs(pinguino)

        def printb(text, color):
            print(color + text + bcolors.ENDC)

        #parser = pinguino.build_argparse()

        if parser.version:
            printb("\t" + VERSION, bcolors.Green)
            sys.exit()
コード例 #9
0
ファイル: pinguino.py プロジェクト: Robotonics/pinguino-ide
        #For PyInstaller compatibility
        if app is None:
            from PySide.QtGui import QApplication
            QApplication.instance().exec_()
        else:
            app.exec_()


    else:  #command line

        from qtgui.pinguino_api.pinguino import Pinguino
        from qtgui.pinguino_api.pinguino_config import PinguinoConfig
        from qtgui.ide.methods.config import Config

        pinguino = Pinguino()
        PinguinoConfig.set_environ_vars()
        PinguinoConfig.check_user_files()
        config = Config()
        PinguinoConfig.update_pinguino_paths(config, Pinguino)
        PinguinoConfig.update_pinguino_extra_options(config, Pinguino)
        PinguinoConfig.update_user_libs(pinguino)

        parser = pinguino.build_argparse()

        if parser.version:
            print("\t" + VERSION)
            sys.exit()

        if parser.author:
            print("\tJean-Pierre Mandon")
コード例 #10
0
ファイル: pinguino.py プロジェクト: Darriall/pinguino-ide
        #For PyInstaller compatibility
        if app is None:
            from PySide.QtGui import QApplication
            QApplication.instance().exec_()
        else:
            #sys.exit(app.exec_())
            app.exec_()


    else:  #command line

        from qtgui.pinguino_api.pinguino import Pinguino
        from qtgui.pinguino_api.pinguino_config import PinguinoConfig
        from qtgui.pinguino_api.config import Config

        pinguino = Pinguino()
        PinguinoConfig.set_environ_vars()
        PinguinoConfig.check_user_files()
        config = Config()
        PinguinoConfig.update_pinguino_paths(config, Pinguino)
        PinguinoConfig.update_pinguino_extra_options(config, Pinguino)
        PinguinoConfig.update_user_libs(pinguino)

        def printb(text, color):
            print(color + text + bcolors.ENDC)

        #parser = pinguino.build_argparse()

        if parser.version:
            printb("\t" + VERSION, bcolors.Green)
            sys.exit()
コード例 #11
0
ファイル: test.py プロジェクト: Darriall/pinguino-ide
        def inter(self):

            try: Pinguino.set_board(board)
            except BaseException, msg:
                raise BaseException("Compilation: imposible set board %s\n%s" % (board.name, str(msg)))
コード例 #12
0
ファイル: test.py プロジェクト: Darriall/pinguino-ide
    os.environ["PINGUINO_DATA"] = os.getenv("PINGUINO_HOME")

sys.path.append(os.path.join(os.getenv("PINGUINO_DATA"), "qtgui", "resources"))

from qtgui.pinguino_api.pinguino import Pinguino, AllBoards
from qtgui.pinguino_api.pinguino_config import PinguinoConfig
from qtgui.pinguino_api.config import Config

Pinguino = Pinguino()
PinguinoConfig.set_environ_vars()
PinguinoConfig.check_user_files()
config = Config()
PinguinoConfig.update_pinguino_paths(config, Pinguino)
PinguinoConfig.update_pinguino_extra_options(config, Pinguino)
PinguinoConfig.update_user_libs(Pinguino)
Pinguino.set_os_variables()

########################################################################
class TestPreprocess(unittest.TestCase):

    #----------------------------------------------------------------------
    def test_delete_comments(self):

        cases = (

            ("//Pinguino Rules!", ""),
            ("/*Pinguino Rules!*/", ""),
            ("/*Pinguino //Rules!*/", ""),
            ("///*Pinguino Rules!*/", ""),

コード例 #13
0
os.environ["PINGUINO_SUBVERSION"] = SUBVERSION
os.environ["PINGUINO_HOME"] = os.path.abspath(sys.path[0])

# For PyInstaller compatibility
if os.path.exists(os.path.abspath("pinguino_data")):
    os.environ["PINGUINO_DATA"] = os.path.abspath("pinguino_data")
else:
    os.environ["PINGUINO_DATA"] = os.getenv("PINGUINO_HOME")

sys.path.append(os.path.join(os.getenv("PINGUINO_DATA"), "qtgui", "resources"))

from qtgui.pinguino_api.pinguino import Pinguino, AllBoards
from qtgui.pinguino_api.pinguino_config import PinguinoConfig
from qtgui.pinguino_api.config import Config

Pinguino = Pinguino()
PinguinoConfig.set_environ_vars()
PinguinoConfig.check_user_files()
config = Config()
PinguinoConfig.update_pinguino_paths(config, Pinguino)
PinguinoConfig.update_pinguino_extra_options(config, Pinguino)
PinguinoConfig.update_user_libs(Pinguino)
Pinguino.set_os_variables()


########################################################################
class TestPreprocess(unittest.TestCase):

    #----------------------------------------------------------------------
    def test_delete_comments(self):