示例#1
0
    def test_returns_all_contents_and_exercises(self):
        topic_root = retrieve_kalite_topic_data()
        contents = retrieve_kalite_content_data()
        exercises = retrieve_kalite_exercise_data()

        topic_list = list(flatten_topic_tree(topic_root, contents, exercises))

        assert len(topic_list) >= len(contents) + len(exercises)
    def test_translate_topics(self):
        topic_data = retrieve_kalite_topic_data()
        translated_topic_data = translate_topics(
            topic_data,
            self.ka_catalog,
        )

        def _test_topic_children(translated_topic, untranslated_topic):
            for field in TOPIC_FIELDS_TO_TRANSLATE:
                untranslated_fieldval = untranslated_topic.get(field)
                translated_fieldval = translated_topic.get(field)

                assert (translated_fieldval ==
                        self.ka_catalog.msgid_mapping.get(
                            untranslated_fieldval,
                            untranslated_fieldval)
                )

                for translated, untranslated in zip(translated_topic.get("children", []),
                                                    untranslated_topic.get("children", [])):
                    _test_topic_children(translated, untranslated)

        _test_topic_children(translated_topic_data, topic_data)
示例#3
0
def generate_node_list():
    return flatten_topic_tree(
        retrieve_kalite_topic_data(),
        retrieve_kalite_content_data(),
        retrieve_kalite_exercise_data(),
    )