Esempio n. 1
0
def test_panel_language_table(language0, rf, member):
    request = rf.get("/language0/")
    request.user = member
    request.permissions = get_matching_permissions(request.user, language0.directory)
    view = LanguageBrowseView(kwargs=dict(language_code=language0.code))
    view.request = request
    view.object = view.get_object()
    lang_panels = panels.gather(LanguageBrowseView)
    assert lang_panels.keys() == ["children"]
    assert lang_panels["children"] == ChildrenPanel
    panel = ChildrenPanel(view)
    assert panel.panel_name == "children"
    assert panel.cache_key == ("panel.%s.%s" % (panel.panel_name, view.cache_key))

    table = {
        "id": view.view_name,
        "fields": panel.table_fields,
        "headings": get_table_headings(panel.table_fields),
        "rows": view.object_children,
    }

    assert panel.table == table
    assert panel.get_context_data() == dict(table=table, can_translate=view.can_translate)
    content = loader.render_to_string(panel.template_name, context=panel.get_context_data())
    assert panel.content == panel.update_times(content)
Esempio n. 2
0
 def panels(self):
     _panels = panels.gather(self.__class__)
     for panel in self.panel_names:
         if panel in _panels:
             yield _panels[panel](self).content
         else:
             logger.warning("Unrecognized panel '%s'", panel)
Esempio n. 3
0
 def panels(self):
     _panels = panels.gather(self.__class__)
     for panel in self.panel_names:
         if panel in _panels:
             yield _panels[panel](self).content
         else:
             logger.warning("Unrecognized panel '%s'", panel)
Esempio n. 4
0
def test_panel_tp_table(tp0, rf, member):
    request = rf.get('/language0/project0/')
    request.user = member
    request.permissions = get_matching_permissions(request.user, tp0.directory)
    view = TPBrowseView(kwargs=dict(language_code=tp0.language.code,
                                    project_code=tp0.project.code))
    view.request = request
    view.object = view.get_object()
    lang_panels = panels.gather(TPBrowseView)
    assert lang_panels.keys() == ["children", "vfolders"]
    assert lang_panels["children"] == ChildrenPanel
    panel = ChildrenPanel(view)
    assert panel.panel_name == "children"
    assert (panel.cache_key == ("panel.%s.%s" %
                                (panel.panel_name, view.cache_key)))
    table = {
        'id': view.view_name,
        'fields': panel.table_fields,
        'headings': get_table_headings(panel.table_fields),
        'rows': view.object_children
    }
    assert panel.table == table
    assert panel.get_context_data() == dict(table=table,
                                            can_translate=view.can_translate)
    content = loader.render_to_string(panel.template_name,
                                      context=panel.get_context_data())
    assert (panel.content == panel.update_times(content))
Esempio n. 5
0
def test_panel_tp_subdir_table(subdir0, rf, member):
    request = rf.get(subdir0.pootle_path)
    request.user = member
    view = TPBrowseView(kwargs=dict(language_code=subdir0.tp.language.code,
                                    project_code=subdir0.tp.project.code,
                                    dir_path=subdir0.tp_path[1:]))
    view.request = request
    view.object = view.get_object()
    lang_panels = panels.gather(TPBrowseView)
    assert lang_panels.keys() == ["children", "vfolders"]
    assert lang_panels["children"] == ChildrenPanel
    panel = ChildrenPanel(view)
    assert panel.panel_name == "children"
    assert (panel.cache_key == ("panel.%s.%s" %
                                (panel.panel_name, view.cache_key)))
    table = {
        'id': view.view_name,
        'fields': panel.table_fields,
        'headings': get_table_headings(panel.table_fields),
        'items': view.items,
        'disabled_items': view.disabled_items
    }
    assert panel.table == table
    assert panel.get_context_data() == dict(table=table)
    assert (panel.content == loader.render_to_string(panel.template_name,
                                                     panel.get_context_data()))
Esempio n. 6
0
def test_panel_projects_table(rf, member, project0):
    request = rf.get('/projects/')
    request.user = member
    request.permissions = get_matching_permissions(
        request.user,
        project0.directory.parent)
    view = ProjectsBrowseView()
    view.request = request
    view.object = view.get_object()
    lang_panels = panels.gather(ProjectsBrowseView)
    assert lang_panels.keys() == ["children"]
    assert lang_panels["children"] == ChildrenPanel
    panel = ChildrenPanel(view)
    assert panel.panel_name == "children"
    assert (
        panel.cache_key
        == ("panel.%s.%s"
            % (panel.panel_name, view.cache_key)))

    table = {
        'id': view.view_name,
        'fields': panel.table_fields,
        'headings': get_table_headings(panel.table_fields),
        'rows': view.object_children}

    assert panel.table == table
    assert panel.get_context_data() == dict(
        table=table, can_translate=view.can_translate)
    content = loader.render_to_string(
        panel.template_name, context=panel.get_context_data())
    assert (
        panel.content
        == panel.update_times(content))
Esempio n. 7
0
def test_panel_project_store_table(project0, store0, rf, member):
    request = rf.get('/projects/project0/store0')
    request.user = member
    view = ProjectBrowseView(kwargs=dict(
        project_code=project0.code, dir_path="", filename=store0.name))
    view.request = request
    view.object = view.get_object()
    lang_panels = panels.gather(ProjectBrowseView)
    assert lang_panels.keys() == ["children"]
    assert lang_panels["children"] == ChildrenPanel
    panel = ChildrenPanel(view)
    assert panel.panel_name == "children"
    assert (panel.cache_key == ("panel.%s.%s" %
                                (panel.panel_name, view.cache_key)))

    table = {
        'id': view.view_name,
        'fields': panel.table_fields,
        'headings': get_table_headings(panel.table_fields),
        'items': view.items,
        'disabled_items': view.disabled_items
    }

    assert panel.table == table
    assert panel.get_context_data() == dict(table=table)
    assert (panel.content == loader.render_to_string(panel.template_name,
                                                     panel.get_context_data()))
Esempio n. 8
0
def test_panel_tp_subdir_table(subdir0, rf, member):
    request = rf.get(subdir0.pootle_path)
    request.user = member
    request.permissions = get_matching_permissions(
        request.user,
        subdir0)
    view = TPBrowseView(
        kwargs=dict(
            language_code=subdir0.tp.language.code,
            project_code=subdir0.tp.project.code,
            dir_path=subdir0.tp_path[1:]))
    view.request = request
    view.object = view.get_object()
    lang_panels = panels.gather(TPBrowseView)
    assert lang_panels.keys() == ["children", "vfolders"]
    assert lang_panels["children"] == ChildrenPanel
    panel = ChildrenPanel(view)
    assert panel.panel_name == "children"
    assert (
        panel.cache_key
        == ("panel.%s.%s"
            % (panel.panel_name, view.cache_key)))
    table = {
        'id': view.view_name,
        'fields': panel.table_fields,
        'headings': get_table_headings(panel.table_fields),
        'rows': view.object_children}
    assert panel.table == table
    assert panel.get_context_data() == dict(
        table=table, can_translate=view.can_translate)
    content = loader.render_to_string(
        panel.template_name, context=panel.get_context_data())
    assert (
        panel.content
        == panel.update_times(content))
Esempio n. 9
0
def test_panel_tp_vfolder_table(tp0, rf, member):
    request = rf.get('/language0/project0/')
    request.user = member
    request.permissions = get_matching_permissions(
        request.user,
        tp0.directory)
    view = TPBrowseView(
        kwargs=dict(
            language_code=tp0.language.code,
            project_code=tp0.project.code))
    view.request = request
    view.object = view.get_object()
    lang_panels = panels.gather(TPBrowseView)
    assert lang_panels.keys() == ["children", "vfolders"]
    assert lang_panels["vfolders"] == VFolderPanel
    panel = VFolderPanel(view)
    assert panel.panel_name == "vfolder"
    assert (
        panel.cache_key
        == ("panel.%s.%s"
            % (panel.panel_name, view.cache_key)))
    table = view.vfolders_data_view.table_data["children"]
    assert panel.table == table
    assert panel.get_context_data() == dict(
        table=table, can_translate=view.can_translate)
    content = loader.render_to_string(
        panel.template_name, context=panel.get_context_data())
    assert (
        panel.content
        == panel.update_times(content))
Esempio n. 10
0
def test_panel_tp_no_vfolders_table(tp0, rf, member, no_vfolders):
    request = rf.get('/language0/project0/')
    request.user = member
    view = TPBrowseView(kwargs=dict(language_code=tp0.language.code,
                                    project_code=tp0.project.code))
    view.request = request
    view.object = view.get_object()
    lang_panels = panels.gather(TPBrowseView)
    assert lang_panels.keys() == ["children", "vfolders"]
    assert lang_panels["vfolders"] == VFolderPanel
    panel = VFolderPanel(view)
    assert panel.panel_name == "vfolder"
    assert panel.table == ""
    view.vfolders_data_view = None
    assert panel.table == ""
Esempio n. 11
0
def test_panel_tp_vfolder_table(tp0, rf, member):
    request = rf.get('/language0/project0/')
    request.user = member
    view = TPBrowseView(kwargs=dict(language_code=tp0.language.code,
                                    project_code=tp0.project.code))
    view.request = request
    view.object = view.get_object()
    lang_panels = panels.gather(TPBrowseView)
    assert lang_panels.keys() == ["children", "vfolders"]
    assert lang_panels["vfolders"] == VFolderPanel
    panel = VFolderPanel(view)
    assert panel.panel_name == "vfolder"
    assert (panel.cache_key == ("panel.%s.%s" %
                                (panel.panel_name, view.cache_key)))
    table = view.vfolders_data_view.table_data["children"]
    assert panel.table == table
    assert panel.get_context_data() == dict(table=table)
    assert (panel.content == loader.render_to_string(panel.template_name,
                                                     panel.get_context_data()))
Esempio n. 12
0
def test_panel_tp_no_vfolders_table(tp0, rf, member, no_vfolders):
    request = rf.get('/language0/project0/')
    request.user = member
    request.permissions = get_matching_permissions(
        request.user,
        tp0.directory)
    view = TPBrowseView(
        kwargs=dict(
            language_code=tp0.language.code,
            project_code=tp0.project.code))
    view.request = request
    view.object = view.get_object()
    lang_panels = panels.gather(TPBrowseView)
    assert lang_panels.keys() == ["children", "vfolders"]
    assert lang_panels["vfolders"] == VFolderPanel
    panel = VFolderPanel(view)
    assert panel.panel_name == "vfolder"
    assert panel.table == ""
    view.vfolders_data_view = None
    assert panel.table == ""