How to use validate_kind_section method in avocado

Best Python code snippet using avocado_python

parser.py

Source:parser.py Github

copy

Full Screen

...156 key, value = kwarg.split('=')157 result[key] = value158 return result159 def _get_resolutions_by_kind(self, kind, paths):160 self.validate_kind_section(kind)161 resolutions = []162 success = ReferenceResolutionResult.SUCCESS163 config = {'uri': self._get_uri_from_section(kind),164 'args': self._get_args_from_section(kind),165 'kwargs': self._get_kwargs_from_section(kind)}166 for path in paths:167 uri = config.get('uri')168 args = config.get('args')169 kwargs = config.get('kwargs')170 if uri == '$testpath':171 uri = path172 if '$testpath' in args:173 args = [item.replace('$testpath', path) for item in args]174 if '$testpath' in kwargs.values():175 kwargs = {k: v.replace('$testpath', path)176 for k, v in kwargs.items()}177 runnable = Runnable(kind, uri, *args, **kwargs)178 resolutions.append(ReferenceResolution(reference=path,179 result=success,180 resolutions=[runnable],181 origin=path))182 return resolutions183 def _get_uri_from_section(self, section):184 return self.config.get(section, 'uri')185 def _parse(self):186 self.config = ConfigParser()187 config_paths = self.config.read(self.filename)188 if not config_paths:189 raise ConfigFileNotFound(self.filename)190 def get_resolutions(self):191 """Return a list of resolutions based on the file definitions."""192 resolutions = []193 for kind in self.config['kinds']:194 files = self.config.get('kinds', kind)195 resolutions.extend(self._get_resolutions_by_kind(kind,196 glob(files)))197 return resolutions198 def validate_kind_section(self, kind):199 """Validates a specific "kind section".200 This method will raise a `settings.SettingsError` if any problem is201 found on the file.202 :param kind: a string with the specific section.203 """204 if kind not in self.config:205 msg = 'Section {} is not defined. Please check your hint file.'206 raise SettingsError(msg.format(kind))207 uri = self._get_uri_from_section(kind)208 if uri is None:209 msg = "uri needs to be defined inside {}".format(kind)...

Full Screen

Full Screen

test_hintfiles.py

Source:test_hintfiles.py Github

copy

Full Screen

...24 self.wrong_hint = HintParser(self.wrong_file.name)25 self.good_hint = HintParser(self.good_file.name)26 def test_wrong_parser(self):27 with self.assertRaises(SettingsError) as context:28 self.wrong_hint.validate_kind_section('tap')29 self.assertTrue('Section tap is not defined' in str(context.exception))30 @skipUnlessPathExists('/bin/true')31 def test_types(self):32 res = self.good_hint.get_resolutions()33 self.assertEqual(len(res), 1)34 self.assertIsInstance(res[0], ReferenceResolution)35 resolutions = res[0].resolutions36 self.assertEqual(len(resolutions), 1)37 self.assertIsInstance(resolutions[0], Runnable)38 @skipUnlessPathExists('/bin/true')39 def test_reference_names(self):40 res = self.good_hint.get_resolutions()[0]41 self.assertEqual(res.reference, '/bin/true')42 self.assertEqual(res.resolutions[0].uri, '/bin/true')...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run avocado automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful