def _setupEnvIfNeeded(self): """ Updates or creates the environment, which includes checking if the configuration file should be parsed and creating the appropriate builder objects """ try: # If the configuration is undefined, try to extract the # target dir from the project file so we can have a hint of # where the cache file should be if self._config is None and self.project_file is not None: target_dir, _ = ConfigParser.simpleParse(self.project_file) self._recoverCache(target_dir) # No configuration defined means we failed to recover it # from the cache if self._config is None: self._config = ConfigParser(self.project_file) # If the builder is still undefined we failed to recover # from cache if self.builder is None: builder_name = self._config.getBuilder() builder_class = hdlcc.builders.getBuilderByName(builder_name) self.builder = builder_class(self._config.getTargetDir()) self._logger.info("Selected builder is '%s'", self.builder.builder_name) assert self.builder is not None except hdlcc.exceptions.SanityCheckError as exc: self._handleUiError("Failed to create builder '%s'" % exc.builder) self.builder = hdlcc.builders.Fallback(self._config.getTargetDir())
def test(): target_dir, builder_name = ConfigParser.simpleParse(it.parser.filename) it.assertEqual(it.parser.getTargetDir(), target_dir) it.assertEqual(it.parser.getBuilder(), builder_name)
def test(): target_dir, builder_name = ConfigParser.simpleParse( it.parser.filename) it.assertEqual(it.parser.getTargetDir(), target_dir) it.assertEqual(it.parser.getBuilder(), builder_name)