Best Python code snippet using localstack_python
test_job.py
Source:test_job.py
...129 job = JobDefinition({130 'name': 'name',131 'plugin': 'plugin'})132 expected = set()133 observed = job.get_resource_dependencies()134 self.assertEqual(expected, observed)135 def test_resource_parsing_typical(self):136 job = JobDefinition({137 'name': 'name',138 'plugin': 'plugin',139 'requires': 'foo.bar == 10'})140 expected = set(['foo'])141 observed = job.get_resource_dependencies()142 self.assertEqual(expected, observed)143 def test_resource_parsing_many(self):144 job = JobDefinition({145 'name': 'name',146 'plugin': 'plugin',147 'requires': (148 "foo.bar == 10\n"149 "froz.bot == 10\n")})150 expected = set(['foo', 'froz'])151 observed = job.get_resource_dependencies()152 self.assertEqual(expected, observed)153 def test_resource_parsing_broken(self):154 job = JobDefinition({155 'name': 'name',156 'plugin': 'plugin',157 'requires': "foo.bar == bar"})158 self.assertRaises(Exception, job.get_resource_dependencies)159 def test_checksum_smoke(self):160 job1 = JobDefinition({161 'name': 'name',162 'plugin': 'plugin'163 })164 identical_to_job1 = JobDefinition({165 'name': 'name',...
context_eval_as_constant.py
Source:context_eval_as_constant.py
...19 20 We should also check that we can actually solve21 each one... maybe limit to WrapAMap?22 """23 dependencies = get_resource_dependencies(context, r)24 # print('This depends on %r' % dependencies)25 not_constants = [_ for _ in dependencies if context.is_new_function(_) ]26 if not_constants:27 # print('Not constant because of these deps: %s' % not_constants)28 return False29 else:30 return True31@contract(r=CResource, returns=ValueWithUnits)32def eval_constant_resource(context, r):33 assert can_resource_be_constant(context, r)34 def find_connection_to(s2, dp2):35 for c in context.connections:36 if c.s2 == s2 and c.dp2 == dp2:37 return c38 assert False39 @contract(functions=dict)40 def run_ndp(ndp, functions):41 rnames = ndp.get_rnames()42 f = []43 for fn in ndp.get_fnames():44 vu = functions[fn]45 f.append(vu.value)46 f = tuple(f)47 if len(ndp.get_fnames()) == 1:48 f = f[0]49 dp = ndp.get_dp()50 if isinstance(dp, Constant):51 res = ValueWithUnits(dp.c, dp.R)52 elif isinstance(dp, WrapAMap):53 amap = dp.amap54 if len(rnames) == 1:55 res = ValueWithUnits(amap(f), dp.get_res_space())56 else:57 res_R = ndp.get_rtypes(rnames)58 r = amap(f)59 assert isinstance(res_R, PosetProduct) and len(res_R) == len(rnames)60 assert isinstance(r, tuple) and len(r) == len(rnames)61 res = [ValueWithUnits(value=value, unit=unit)62 for value, unit in zip(r, res_R.subs)]63 else:64 raise NotImplementedError(type(dp))65 if len(rnames) == 1:66 resources = {rnames[0]: res}67 else:68 resources = {}69 for i, rn in enumerate(rnames):70 resources[rn] = res[i]71 return resources72 @contract(r=CResource, returns=ValueWithUnits)73 def evaluate(r):74 dp = r.dp75 ndp = context.names[dp]76 # we need to evaluate all functions77 functions = {}78 for f in ndp.get_fnames():79 c = find_connection_to(s2=f, dp2=dp)80 functions[f] = evaluate(CResource(c.dp1, c.s1))81 results = run_ndp(ndp, functions)82 return results[r.s]83 return evaluate(r)84@contract(r=CResource)85def get_resource_dependencies(context, r):86 G = cndp_get_digraph(context.names, context.connections)87 # print G.nodes(), G.edges()88 # XXX do we need to remove the self-loops?89 from networkx.algorithms.dag import ancestors90 all_ancestors = ancestors(G, r.dp)91 # print('ancestors: %s')92 return all_ancestors93def cndp_get_digraph(name2ndps, connections):94 import networkx as nx95 G = nx.DiGraph()96 for n in name2ndps:97 G.add_node(n)98 for c in connections:99 G.add_edge(c.dp1, c.dp2)...
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.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!