def test_from_import_star(self): mod = self.pycore.get_string_module('from samplemod import *\n') self.assertEquals(get_base_type('Type'), mod['SampleClass'].get_object().get_type()) self.assertEquals(get_base_type('Function'), mod['sample_func'].get_object().get_type()) self.assertTrue(mod['sample_var'] is not None)
def test_nested_modules(self): pkg = testutils.create_package(self.project, 'pkg') mod = testutils.create_module(self.project, 'mod', pkg) # noqa package = self.project.get_module('pkg') self.assertEquals(get_base_type('Module'), package.get_type()) self.assertEquals(1, len(package.get_attributes())) module = package['mod'].get_object() self.assertEquals(get_base_type('Module'), module.get_type())
def test_nested_modules(self): pkg = testutils.create_package(self.project, 'pkg') mod = testutils.create_module(self.project, 'mod', pkg) package = self.pycore.get_module('pkg') self.assertEquals(get_base_type('Module'), package.get_type()) self.assertEquals(1, len(package.get_attributes())) module = package['mod'].get_object() self.assertEquals(get_base_type('Module'), module.get_type())
def test_from_import_nonexistent_name(self): code = 'from samplemod import DoesNotExistClass\n' mod = self.pycore.get_string_module(code) self.assertTrue('DoesNotExistClass' in mod) self.assertEquals(get_base_type('Unknown'), mod['DoesNotExistClass']. get_object().get_type())
def test_imported_names(self): testutils.create_module(self.project, 'mod1') mod = testutils.create_module(self.project, 'mod2') mod.write('import mod1\n') module = self.pycore.get_module('mod2') imported_sys = module['mod1'].get_object() self.assertEquals(get_base_type('Module'), imported_sys.get_type())
def test_imported_names(self): testutils.create_module(self.project, 'mod1') mod = testutils.create_module(self.project, 'mod2') mod.write('import mod1\n') module = self.project.get_module('mod2') imported_sys = module['mod1'].get_object() self.assertEquals(get_base_type('Module'), imported_sys.get_type())
def test_classes_inside_other_classes(self): mod = testutils.create_module(self.project, 'mod') mod.write('class SampleClass(object):\n class InnerClass(object):\n pass\n\n') mod_element = self.pycore.get_module('mod') sample_class = mod_element['SampleClass'].get_object() var = sample_class['InnerClass'].get_object() self.assertEquals(get_base_type('Type'), var.get_type())
def test_imported_as_names(self): testutils.create_module(self.project, 'mod1') mod = testutils.create_module(self.project, 'mod2') mod.write('import mod1 as my_import\n') module = self.project.get_module('mod2') imported_mod = module['my_import'].get_object() self.assertEquals(get_base_type('Module'), imported_mod.get_type())
def test_from_import_nonexistent_name(self): code = 'from samplemod import DoesNotExistClass\n' mod = libutils.get_string_module(self.project, code) self.assertTrue('DoesNotExistClass' in mod) self.assertEquals(get_base_type('Unknown'), mod['DoesNotExistClass']. get_object().get_type())
def test_imported_as_names(self): testutils.create_module(self.project, 'mod1') mod = testutils.create_module(self.project, 'mod2') mod.write('import mod1 as my_import\n') module = self.pycore.get_module('mod2') imported_mod = module['my_import'].get_object() self.assertEquals(get_base_type('Module'), imported_mod.get_type())
def test_from_import_nonexistent_module(self): code = 'from doesnotexistmod import DoesNotExistClass\n' mod = self.pycore.get_string_module(code) self.assertTrue('DoesNotExistClass' in mod) self.assertEquals(get_base_type('Unknown'), mod['DoesNotExistClass']. get_object().get_type())
def test_scope_lookup(self): scope = self.pycore.get_string_scope( 'var1 = 10\ndef sample_func(param):\n var2 = 20\n') self.assertTrue(scope.lookup('var2') is None) self.assertEquals(get_base_type('Function'), scope.lookup('sample_func').get_object().get_type()) sample_func_scope = scope.get_scopes()[0] self.assertTrue(sample_func_scope.lookup('var1') is not None)
def test_inheriting_base_class_attributes(self): mod = self.pycore.get_string_module( 'class Base(object):\n def method(self):\n pass\n' 'class Derived(Base):\n pass\n') derived = mod['Derived'].get_object() self.assertTrue('method' in derived) self.assertEquals(get_base_type('Function'), derived['method'].get_object().get_type())
def test_classes_inside_function_scopes(self): scope = self.pycore.get_string_scope( 'def sample_func():\n' ' class SampleClass(object):\n pass\n') self.assertEquals(1, len(scope.get_scopes())) sample_func_scope = scope.get_scopes()[0] self.assertEquals(get_base_type('Type'), scope.get_scopes()[0]['SampleClass'].get_object().get_type())
def test_class_methods(self): mod = testutils.create_module(self.project, 'mod') mod.write('class SampleClass(object):\n def sample_method(self):\n pass\n') mod_element = self.pycore.get_module('mod') sample_class = mod_element['SampleClass'].get_object() self.assertTrue('sample_method' in sample_class) method = sample_class['sample_method'].get_object() self.assertEquals(get_base_type('Function'), method.get_type())
def test_simple_scope(self): code = dedent("""\ def sample_func(): pass """) scope = libutils.get_string_scope(self.project, code) sample_func = scope["sample_func"].get_object() self.assertEqual(get_base_type("Function"), sample_func.get_type())
def test_classes_inside_other_classes(self): mod = testutils.create_module(self.project, 'mod') code = 'class SampleClass(object):\n' \ ' class InnerClass(object):\n' \ ' pass\n\n' mod.write(code) mod_element = self.project.get_module('mod') sample_class = mod_element['SampleClass'].get_object() var = sample_class['InnerClass'].get_object() self.assertEquals(get_base_type('Type'), var.get_type())
def test_class_methods(self): mod = testutils.create_module(self.project, 'mod') code = 'class SampleClass(object):\n' \ ' def sample_method(self):\n' \ ' pass\n' mod.write(code) mod_element = self.project.get_module('mod') sample_class = mod_element['SampleClass'].get_object() self.assertTrue('sample_method' in sample_class) method = sample_class['sample_method'].get_object() self.assertEquals(get_base_type('Function'), method.get_type())
def test_inheriting_base_class_attributes(self): code = 'class Base(object):\n' \ ' def method(self):\n' \ ' pass\n' \ 'class Derived(Base):\n' \ ' pass\n' mod = libutils.get_string_module(self.project, code) derived = mod['Derived'].get_object() self.assertTrue('method' in derived) self.assertEquals(get_base_type('Function'), derived['method'].get_object().get_type())
def test_classes_inside_function_scopes(self): code = dedent("""\ def sample_func(): class SampleClass(object): pass """) scope = libutils.get_string_scope(self.project, code) self.assertEqual(1, len(scope.get_scopes())) sample_func_scope = scope.get_scopes()[0] # noqa self.assertEqual( get_base_type("Type"), scope.get_scopes()[0]["SampleClass"].get_object().get_type(), )
def test_scope_lookup(self): code = dedent("""\ var1 = 10 def sample_func(param): var2 = 20 """) scope = libutils.get_string_scope(self.project, code) self.assertTrue(scope.lookup("var2") is None) self.assertEqual( get_base_type("Function"), scope.lookup("sample_func").get_object().get_type(), ) sample_func_scope = scope.get_scopes()[0] self.assertTrue(sample_func_scope.lookup("var1") is not None)
def test_simple_module(self): testutils.create_module(self.project, 'mod') result = self.pycore.get_module('mod') self.assertEquals(get_base_type('Module'), result.type) self.assertEquals(0, len(result.get_attributes()))
def test_simple_function(self): mod = testutils.create_module(self.project, 'mod') mod.write('def sample_function():\n pass\n') mod_element = self.project.get_module('mod') result = mod_element['sample_function'].get_object() self.assertEquals(get_base_type('Function'), result.get_type())
def xxx_test_not_found_module_is_module(self): mod = self.pycore.get_string_module('import doesnotexist\n') self.assertEquals(get_base_type('Module'), mod['doesnotexist']. get_object().get_type())
def test_get_string_module(self): mod = self.pycore.get_string_module('class Sample(object):\n pass\n') sample_class = mod['Sample'].get_object() self.assertEquals(get_base_type('Type'), sample_class.get_type())
def test_from_package_import_mod(self): mod = libutils.get_string_module(self.project, 'from package import nestedmod\n') self.assertEquals(get_base_type('Module'), mod['nestedmod'].get_object().get_type())
def test_lambda_functions(self): self.mod.write("l = lambda: 1\n") pymod = self.project.get_pymodule(self.mod) l_var = pymod["l"].get_object() self.assertEqual(pyobjects.get_base_type("Function"), l_var.get_type())
def test_simple_class(self): mod = testutils.create_module(self.project, 'mod') mod.write('class SampleClass(object):\n pass\n') mod_element = self.pycore.get_module('mod') result = mod_element['SampleClass'].get_object() self.assertEquals(get_base_type('Type'), result.get_type())
def test_from_import_class(self): mod = self.pycore.get_string_module('from samplemod import SampleClass\n') result = mod['SampleClass'].get_object() self.assertEquals(get_base_type('Type'), result.get_type()) self.assertTrue('sample_func' not in mod.get_attributes())
def test_from_import_function(self): code = 'def f():\n from samplemod import SampleClass\n' scope = libutils.get_string_scope(self.project, code) self.assertEquals(get_base_type('Type'), scope.get_scopes()[0]['SampleClass']. get_object().get_type())
def test_simple_import(self): mod = libutils.get_string_module(self.project, 'import samplemod\n') samplemod = mod['samplemod'].get_object() self.assertEquals(get_base_type('Module'), samplemod.get_type())
def test_simple_module(self): testutils.create_module(self.project, 'mod') result = self.project.get_module('mod') self.assertEquals(get_base_type('Module'), result.type) self.assertEquals(0, len(result.get_attributes()))
def test_lambda_functions(self): self.mod.write('l = lambda: 1\n') pymod = self.pycore.resource_to_pyobject(self.mod) l_var = pymod['l'].get_object() self.assertEquals(pyobjects.get_base_type('Function'), l_var.get_type())
def test_simple_scope(self): scope = libutils.get_string_scope(self.project, 'def sample_func():\n pass\n') sample_func = scope['sample_func'].get_object() self.assertEqual(get_base_type('Function'), sample_func.get_type())
def test_simple_scope(self): scope = self.pycore.get_string_scope('def sample_func():\n pass\n') sample_func = scope['sample_func'].get_object() self.assertEquals(get_base_type('Function'), sample_func.get_type())
def test_from_package_import_mod(self): mod = self.pycore.get_string_module('from package import nestedmod\n') self.assertEquals(get_base_type('Module'), mod['nestedmod'].get_object().get_type())
def test_package(self): pkg = testutils.create_package(self.project, 'pkg') mod = testutils.create_module(self.project, 'mod', pkg) result = self.pycore.get_module('pkg') self.assertEquals(get_base_type('Module'), result.type)
def test_from_import_nonexistent_name(self): mod = self.pycore.get_string_module('from samplemod import DoesNotExistClass\n') self.assertTrue('DoesNotExistClass' in mod) self.assertEquals(get_base_type('Unknown'), mod['DoesNotExistClass']. get_object().get_type())
def test_simple_function(self): mod = testutils.create_module(self.project, 'mod') mod.write('def sample_function():\n pass\n') mod_element = self.pycore.get_module('mod') result = mod_element['sample_function'].get_object() self.assertEquals(get_base_type('Function'), result.get_type())
def test_simple_class(self): mod = testutils.create_module(self.project, 'mod') mod.write('class SampleClass(object):\n pass\n') mod_element = self.project.get_module('mod') result = mod_element['SampleClass'].get_object() self.assertEquals(get_base_type('Type'), result.get_type())
def test_simple_import(self): mod = self.pycore.get_string_module('import samplemod\n') samplemod = mod['samplemod'].get_object() self.assertEquals(get_base_type('Module'), samplemod.get_type())
def test_from_import_class(self): mod = libutils.get_string_module( self.project, 'from samplemod import SampleClass\n') result = mod['SampleClass'].get_object() self.assertEquals(get_base_type('Type'), result.get_type()) self.assertTrue('sample_func' not in mod.get_attributes())
def xxx_test_not_found_module_is_module(self): mod = libutils.get_string_module(self.project, 'import doesnotexist\n') self.assertEquals(get_base_type('Module'), mod['doesnotexist'].get_object().get_type())
def test_from_import_function(self): scope = self.pycore.get_string_scope('def f():\n from samplemod import SampleClass\n') self.assertEquals(get_base_type('Type'), scope.get_scopes()[0]['SampleClass']. get_object().get_type())
def test_get_string_module(self): mod = libutils.get_string_module(self.project, 'class Sample(object):\n pass\n') sample_class = mod['Sample'].get_object() self.assertEquals(get_base_type('Type'), sample_class.get_type())
def test_from_import_function(self): code = 'def f():\n from samplemod import SampleClass\n' scope = libutils.get_string_scope(self.project, code) self.assertEquals( get_base_type('Type'), scope.get_scopes()[0]['SampleClass'].get_object().get_type())
def test_package(self): pkg = testutils.create_package(self.project, 'pkg') mod = testutils.create_module(self.project, 'mod', pkg) # noqa result = self.project.get_module('pkg') self.assertEquals(get_base_type('Module'), result.type)
def test_lambda_functions(self): self.mod.write('l = lambda: 1\n') pymod = self.project.get_pymodule(self.mod) l_var = pymod['l'].get_object() self.assertEquals(pyobjects.get_base_type('Function'), l_var.get_type())
def test_from_import_nonexistent_module(self): code = 'from doesnotexistmod import DoesNotExistClass\n' mod = libutils.get_string_module(self.project, code) self.assertTrue('DoesNotExistClass' in mod) self.assertEquals(get_base_type('Unknown'), mod['DoesNotExistClass'].get_object().get_type())