Пример #1
0
    def _parse(self):
        sections = self._find_sections()

        parent = sections.get('parent')
        if parent:
            self.parent = parent_loads(parent.content, parent.line)
        self._old_parent = self.parent

        reqs = sections.get('requirements')
        if reqs:
            self.requirements = BlockVersionTable.loads(
                reqs.content, reqs.line)
        self._old_requirements = self.requirements.copy()

        # self.include_mapping = IncludesMapping.loads(includes)
        deps = sections.get('dependencies')
        if deps:
            self.dependencies = parse_deps_conf(deps.content, deps.line)

        hooks = sections.get('hooks')
        if hooks:
            hooks_deps = parse_deps_conf(hooks.content, hooks.line)
            self.dependencies.extend(hooks_deps)

        mains = sections.get('mains')
        if mains:
            self.mains = parse_mains_conf(mains.content, mains.line)

        tests = sections.get('tests')
        if tests:

            def test_line_parser(line):
                self.tests.append(line)

            parse(tests.content, test_line_parser, tests.line)

        paths = sections.get('paths')
        if paths:

            def path_line_parser(line):
                self.paths.append(line)

            parse(paths.content, path_line_parser, paths.line)

        data = sections.get('data')
        if data:
            self.data = parse_deps_conf(data.content, data.line)

        includes = sections.get('includes')
        if includes:
            self.includes = IncludesMapping.loads(includes.content,
                                                  includes.line)
Пример #2
0
    def _parse(self):
        sections = self._find_sections()

        parent = sections.get('parent')
        if parent:
            self.parent = parent_loads(parent.content, parent.line)
        self._old_parent = self.parent

        reqs = sections.get('requirements')
        if reqs:
            self.requirements = BlockVersionTable.loads(reqs.content, reqs.line)
        self._old_requirements = self.requirements.copy()

        # self.include_mapping = IncludesMapping.loads(includes)
        deps = sections.get('dependencies')
        if deps:
            self.dependencies = parse_deps_conf(deps.content, deps.line)

        hooks = sections.get('hooks')
        if hooks:
            hooks_deps = parse_deps_conf(hooks.content, hooks.line)
            self.dependencies.extend(hooks_deps)

        mains = sections.get('mains')
        if mains:
            self.mains = parse_mains_conf(mains.content, mains.line)

        tests = sections.get('tests')
        if tests:
            def test_line_parser(line):
                self.tests.append(line)
            parse(tests.content, test_line_parser, tests.line)

        paths = sections.get('paths')
        if paths:
            def path_line_parser(line):
                self.paths.append(line)
            parse(paths.content, path_line_parser, paths.line)

        data = sections.get('data')
        if data:
            self.data = parse_deps_conf(data.content, data.line)

        includes = sections.get('includes')
        if includes:
            self.includes = IncludesMapping.loads(includes.content, includes.line)
Пример #3
0
 def test_invalid(self):
     with self.assertRaisesRegexp(ConfigurationFileError,
                                  "Impossible to have two main parents"):
         parent_loads('* testuser0/block2: 0\ntestuser3/block3: 0', 0)
Пример #4
0
 def test_invalid(self):
     with self.assertRaisesRegexp(ConfigurationFileError,
                                  "Impossible to have two main parents"):
         parent_loads('* testuser0/block2: 0\ntestuser3/block3: 0', 0)