Пример #1
0
    def test_child_container_empty(self):
        target_module = importlib.import_module('quick_start.views')
        view_info = TargetInfo(target_module, 'sample_1.json')

        loader = Loader(view_info)

        self.assertTrue(len(loader.children) == 0)
Пример #2
0
    def test_initialization(self):
        exp_app_name = 'Sample App'
        exp_app_target = TargetInfo(
            importlib.import_module("quick_start.views"), 'sample_1')

        app_file = "sample_1_app.jss"
        markup_file = path.join("..\\..\\quick_start", app_file)

        app = Application(TargetInfo(exp_app_target.module, markup_file))

        self.assertEqual(exp_app_name, app.name)
        self.assertEqual(exp_app_target.module, app.views)
        self.assertEqual(
            path.abspath(
                path.join("..\\..\\quick_start\\views\\sample_1.jss")),
            app.target)
Пример #3
0
    def test_load_target_info(self):
        file = "sample_1_app.jss"
        markup_file = path.join("..\\..\\quick_start", file)

        exp_module = TargetInfo(importlib.import_module('quick_start.views', 'sample'), "").module
        act_module = load_file_module(markup_file)

        self.assertEqual(exp_module, act_module)
Пример #4
0
    def test_default_window_size(self):
        target_module = importlib.import_module('quick_start.views')
        view_info = TargetInfo(target_module, 'sample_1.json')

        loader = Loader(view_info)
        size = loader.size

        self.assertEqual(350, size['width'])
        self.assertEqual(350, size['height'])
Пример #5
0
    def test_sections(self):
        target_module = importlib.import_module('quick_start.views')
        view_info = TargetInfo(target_module, 'sample_3.json')

        loader = Loader(view_info)

        self.assertTrue(len(loader.sections) == 2)
        self.assertTrue(S_WINDOW in loader.sections)
        self.assertTrue(S_GRID in loader.sections)
Пример #6
0
    def test_initialization(self):
        target_module = importlib.import_module('quick_start.views')
        view_info = TargetInfo(target_module, 'sample_1.jss')

        loader = Loader(view_info)

        self.assertIsNotNone(loader)
        self.assertIsNotNone(loader.window)

        view = loader.window()

        from tkinter import Tk
        from tkinter import Frame

        self.assertTrue(isinstance(view.frame, Frame))
        self.assertTrue(isinstance(view.master, Tk))
Пример #7
0
    def test_child_container(self):
        test_path = '..\\..\\quick_start\\views'
        expected_file = os.path.join(test_path, 'sample_3a.json')
        test_file = os.path.join(test_path, 'sample_3a.jss')

        if os.path.isfile(test_file):
            print(os.path.abspath(test_file))

            with open(expected_file) as m_file:
                test_markup = json.load(m_file)

        target_module = importlib.import_module('quick_start.views')
        view_info = TargetInfo(target_module, 'sample_3a.jss')

        loader = Loader(view_info)

        self.assertTrue(len(loader.children) == 1)
Пример #8
0
    def test_window_size(self):
        target_module = importlib.import_module('quick_start.views')
        view_info = TargetInfo(target_module, 'sample_2.json')

        loader = Loader(view_info)
        size = loader.size

        self.assertEqual(500, size['width'])
        self.assertEqual(300, size['height'])

        # functional: shows window
        window = loader.window(cnf=size)
        window.master.title(loader.title)

        tk_module = importlib.import_module('tkinter')
        cls_label = getattr(tk_module, 'Label')
        tk_label = cls_label(window.frame, text="Hello,")
        tk_label.grid(row=0, column=0)

        label = tk.Label(window.frame, text="World!")
        label.grid(row=1, column=1)

        window.master.mainloop()
Пример #9
0
 def __run(self):
     view_info = TargetInfo(self.__app_cnf['views'],
                            self.__app_cnf['target'])
     loader = Loader(view_info)
     loader.run()
Пример #10
0
import sys
import importlib

from os import path

from pyle.framework import TargetInfo
from pyle.bootstrap import Application

if __name__ == "__main__":
    module = importlib.import_module('quick_start')
    file = path.join(path.dirname(module.__file__), sys.argv[1])

    app = Application(TargetInfo(module, file))
    app.mainloop()