Best Python code snippet using autotest_python
test_script.py
Source: test_script.py
1import inspect, StringIO, sys, sets2from twisted.trial import unittest3from twisted.scripts import trial4from twisted.python import util, usage5def sibpath(filename):6 """For finding files in twisted/trial/test"""7 return util.sibpath(__file__, filename)8class TestModuleTest(unittest.TestCase):9 def setUp(self):10 self.config = trial.Options()11 def tearDown(self):12 self.config = None13 def test_baseState(self):14 self.failUnlessEqual(0, len(self.config['tests']))15 def test_testmoduleOnModule(self):16 self.config.opt_testmodule(sibpath('moduletest.py'))17 self.failUnlessEqual('twisted.trial.test.test_test_visitor',18 self.config['tests'][0])19 def test_testmoduleOnScript(self):20 self.config.opt_testmodule(sibpath('scripttest.py'))21 self.failUnlessEqual(sets.Set(['twisted.trial.test.test_test_visitor',22 'twisted.trial.test.test_class']),23 sets.Set(self.config['tests']))24 def test_testmoduleOnNonexistentFile(self):25 buffy = StringIO.StringIO()26 stderr, sys.stderr = sys.stderr, buffy27 filename = 'test_thisbetternoteverexist.py'28 try:29 self.config.opt_testmodule(filename)30 self.failUnlessEqual([], self.config['tests'])31 self.failUnlessEqual("File %r doesn't exist\n" % (filename,),32 buffy.getvalue())33 finally:34 sys.stderr = stderr35 def test_testmoduleOnEmptyVars(self):36 self.config.opt_testmodule(sibpath('novars.py'))37 self.failUnlessEqual([], self.config['tests'])38 def test_testmoduleOnModuleName(self):39 buffy = StringIO.StringIO()40 stderr, sys.stderr = sys.stderr, buffy41 moduleName = 'twisted.trial.test.test_script'42 try:43 self.config.opt_testmodule(moduleName)44 self.failUnlessEqual([], self.config['tests'])45 self.failUnlessEqual("File %r doesn't exist\n" % (moduleName,),46 buffy.getvalue())47 finally:48 sys.stderr = stderr49 def test_parseLocalVariable(self):50 declaration = '-*- test-case-name: twisted.trial.test.test_tests -*-'51 localVars = trial._parseLocalVariables(declaration)52 self.failUnlessEqual({'test-case-name':53 'twisted.trial.test.test_tests'},54 localVars)55 def test_trailingSemicolon(self):56 declaration = '-*- test-case-name: twisted.trial.test.test_tests; -*-'57 localVars = trial._parseLocalVariables(declaration)58 self.failUnlessEqual({'test-case-name':59 'twisted.trial.test.test_tests'},60 localVars)61 62 def test_parseLocalVariables(self):63 declaration = ('-*- test-case-name: twisted.trial.test.test_tests; ' 64 'foo: bar -*-')65 localVars = trial._parseLocalVariables(declaration)66 self.failUnlessEqual({'test-case-name':67 'twisted.trial.test.test_tests',68 'foo': 'bar'},69 localVars)70 def test_surroundingGuff(self):71 declaration = ('## -*- test-case-name: '72 'twisted.trial.test.test_tests -*- #')73 localVars = trial._parseLocalVariables(declaration)74 self.failUnlessEqual({'test-case-name':75 'twisted.trial.test.test_tests'},76 localVars)77 def test_invalidLine(self):78 self.failUnlessRaises(ValueError, trial._parseLocalVariables,79 'foo')80 def test_invalidDeclaration(self):81 self.failUnlessRaises(ValueError, trial._parseLocalVariables,82 '-*- foo -*-')83 self.failUnlessRaises(ValueError, trial._parseLocalVariables,84 '-*- foo: bar; qux -*-')85 self.failUnlessRaises(ValueError, trial._parseLocalVariables,86 '-*- foo: bar: baz; qux: qax -*-')87 def test_variablesFromFile(self):88 localVars = trial.loadLocalVariables(sibpath('moduletest.py'))89 self.failUnlessEqual({'test-case-name':90 'twisted.trial.test.test_test_visitor'},91 localVars)92 93 def test_noVariablesInFile(self):94 localVars = trial.loadLocalVariables(sibpath('novars.py'))95 self.failUnlessEqual({}, localVars)96 def test_variablesFromScript(self):97 localVars = trial.loadLocalVariables(sibpath('scripttest.py'))98 self.failUnlessEqual(99 {'test-case-name': ('twisted.trial.test.test_test_visitor,'100 'twisted.trial.test.test_class')},101 localVars)102 def test_getTestModules(self):103 modules = trial.getTestModules(sibpath('moduletest.py'))104 self.failUnlessEqual(modules, ['twisted.trial.test.test_test_visitor'])105 def test_getTestModules_noVars(self):106 modules = trial.getTestModules(sibpath('novars.py'))107 self.failUnlessEqual(len(modules), 0)108 def test_getTestModules_multiple(self):109 modules = trial.getTestModules(sibpath('scripttest.py'))110 self.failUnlessEqual(sets.Set(modules),111 sets.Set(['twisted.trial.test.test_test_visitor',112 'twisted.trial.test.test_class']))113 def test_looksLikeTestModule(self):114 for filename in ['test_script.py', 'twisted/trial/test/test_script.py']:115 self.failUnless(trial.isTestFile(filename),116 "%r should be a test file" % (filename,))117 for filename in ['twisted/trial/test/moduletest.py',118 sibpath('scripttest.py'), sibpath('test_foo.bat')]:119 self.failIf(trial.isTestFile(filename),...
linecount.py
Source: linecount.py
1#!/usr/bin/env python2#3# __COPYRIGHT__4#5# Count statistics about SCons test and source files. This must be run6# against a fully-populated tree (for example, one that's been freshly7# checked out).8#9# A test file is anything under the src/ directory that begins with10# 'test_' or ends in 'Tests.py', or anything under the test/ directory11# that ends in '.py'. Note that runtest.py script does *not*, by default,12# consider the files that begin with 'test_' to be tests, because they're13# tests of SCons packaging and installation, not functional tests of14# SCons code.15#16# A source file is anything under the src/engine/ or src/script/17# directories that ends in '.py' but does NOT begin with 'test_'18# or end in 'Tests.py'.19#20# We report the number of tests and sources, the total number of lines21# in each category, the number of non-blank lines, and the number of22# non-comment lines. The last figure (non-comment) lines is the most23# interesting one for most purposes.24from __future__ import division25__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"26import os.path27fmt = "%-16s %5s %7s %9s %11s %11s"28class Collection(object):29 def __init__(self, name, files=None, pred=None):30 self._name = name31 if files is None:32 files = []33 self.files = files34 if pred is None:35 pred = lambda x: True36 self.pred = pred37 def __call__(self, fname):38 return self.pred(fname)39 def __len__(self):40 return len(self.files)41 def collect(self, directory):42 for dirpath, dirnames, filenames in os.walk(directory):43 try: dirnames.remove('.svn')44 except ValueError: pass45 self.files.extend([ os.path.join(dirpath, f)46 for f in filenames if self.pred(f) ])47 def lines(self):48 try:49 return self._lines50 except AttributeError:51 self._lines = lines = []52 for file in self.files:53 file_lines = open(file).readlines()54 lines.extend([s.lstrip() for s in file_lines])55 return lines56 def non_blank(self):57 return [s for s in self.lines() if s != '']58 def non_comment(self):59 return [s for s in self.lines() if s == '' or s[0] != '#']60 def non_blank_non_comment(self):61 return [s for s in self.lines() if s != '' and s[0] != '#']62 def printables(self):63 return (self._name + ':',64 len(self.files),65 len(self.lines()),66 len(self.non_blank()),67 len(self.non_comment()),68 len(self.non_blank_non_comment()))69def is_Tests_py(x):70 return x[-8:] == 'Tests.py'71def is_test_(x):72 return x[:5] == 'test_'73def is_python(x):74 return x[-3:] == '.py'75def is_source(x):76 return is_python(x) and not is_Tests_py(x) and not is_test_(x)77src_Tests_py_tests = Collection('src/ *Tests.py', pred=is_Tests_py)78src_test_tests = Collection('src/ test_*.py', pred=is_test_)79test_tests = Collection('test/ tests', pred=is_python)80sources = Collection('sources', pred=is_source)81src_Tests_py_tests.collect('src')82src_test_tests.collect('src')83test_tests.collect('test')84sources.collect('src/engine')85sources.collect('src/script')86src_tests = Collection('src/ tests', src_Tests_py_tests.files87 + src_test_tests.files)88all_tests = Collection('all tests', src_tests.files + test_tests.files)89def ratio(over, under):90 return "%.2f" % (float(len(over)) / float(len(under)))91print fmt % ('', '', '', '', '', 'non-blank')92print fmt % ('', 'files', 'lines', 'non-blank', 'non-comment', 'non-comment')93print94print fmt % src_Tests_py_tests.printables()95print fmt % src_test_tests.printables()96print97print fmt % src_tests.printables()98print fmt % test_tests.printables()99print100print fmt % all_tests.printables()101print fmt % sources.printables()102print103print fmt % ('ratio:',104 ratio(all_tests, sources),105 ratio(all_tests.lines(), sources.lines()),106 ratio(all_tests.non_blank(), sources.non_blank()),107 ratio(all_tests.non_comment(), sources.non_comment()),108 ratio(all_tests.non_blank_non_comment(),109 sources.non_blank_non_comment())...
Check out the latest blogs from LambdaTest on this topic:
Before we discuss Scala testing, let us understand the fundamentals of Scala and how this programming language is a preferred choice for your development requirements.The popularity and usage of Scala are rapidly rising, evident by the ever-increasing open positions for Scala developers.
So, now that the first installment of this two fold article has been published (hence you might have an idea of what Agile Testing is not in my opinion), I’ve started feeling the pressure to explain what Agile Testing actually means to me.
Did you know that according to Statista, the number of smartphone users will reach 18.22 billion by 2025? Let’s face it, digital transformation is skyrocketing and will continue to do so. This swamps the mobile app development market with various options and gives rise to the need for the best mobile app testing tools
As a developer, checking the cross browser compatibility of your CSS properties is of utmost importance when building your website. I have often found myself excited to use a CSS feature only to discover that it’s still not supported on all browsers. Even if it is supported, the feature might be experimental and not work consistently across all browsers. Ask any front-end developer about using a CSS feature whose support is still in the experimental phase in most prominent web browsers. ????
The count of mobile users is on a steep rise. According to the research, by 2025, it is expected to reach 7.49 billion users worldwide. 70% of all US digital media time comes from mobile apps, and to your surprise, the average smartphone owner uses ten apps per day and 30 apps each month.
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!!