Ejemplo n.º 1
0
    def test_basic_requirements_check(self):
        """Test requirement_check."""
        requirements = requirements_collect(BasicFunctionCore)
        params = {'category': 'test_cat2'}
        for line in requirements:
            check = requirement_check(params, line)
            self.assertFalse(check)

        line = "unit='MMI'"
        params = {'category': 'test_cat2'}
        msg = 'Malformed statement (logged)'
        self.assertFalse(requirement_check(params, line), msg)
Ejemplo n.º 2
0
    def test_basic_requirements_check(self):
        """Test requirement_check."""
        requirements = requirements_collect(BasicFunctionCore)
        params = {'category': 'test_cat2'}
        for line in requirements:
            check = requirement_check(params, line)
            self.assertFalse(check)

        line = "unit='MMI'"
        params = {'category': 'test_cat2'}
        msg = 'Malformed statement (logged)'
        self.assertFalse(requirement_check(params, line), msg)
Ejemplo n.º 3
0
    def test_basic_requirements_check(self):
        """Basic plugin requirements check
        """
        requirelines = requirements_collect(BasicFunctionCore)
        params = {'category': 'test_cat2'}
        for line in requirelines:
            check = requirement_check(params, line)
            assert not check

        line = "unit='MMI'"
        params = {'category': 'test_cat2'}
        msg = 'Malformed statement (logged)'
        assert not requirement_check(params, line), msg
Ejemplo n.º 4
0
    def test_basic_requirements_check(self):
        """Basic plugin requirements check
        """
        requirelines = requirements_collect(BasicFunctionCore)
        params = {'category': 'test_cat2'}
        for line in requirelines:
            check = requirement_check(params, line)
            assert not check

        line = "unit='MMI'"
        params = {'category': 'test_cat2'}
        msg = 'Malformed statement (logged)'
        assert not requirement_check(params, line), msg
Ejemplo n.º 5
0
    def test_basic_requirements_check(self):
        """Basic plugin requirements check
        """
        requirelines = requirements_collect(BasicFunction)
        params = {'category': 'exposure'}
        for line in requirelines:
            check = requirement_check(params, line)
            assert check == False

        line = "unit='mmi'"
        params = {'category': 'exposure'}
        msg = 'Malformed statement (logged)'
        assert requirement_check(params, line) == False, msg
Ejemplo n.º 6
0
    def test_get_plugins(self):
        """Plugins can be collected."""
        os.environ['LANG'] = 'en'
        plugin_list = get_plugins()
        self.assertGreater(len(plugin_list), 0)

        # Obtain string representation
        string_rep = admissible_plugins_to_str(plugin_list)

        # Check each plugin
        for plugin in plugin_list.values():
            # Check that it's name appears in string representation
            title = get_function_title(plugin)
            message = ('Expected title %s in string representation: %s' %
                       (title, string_rep))
            assert title in string_rep, message

            # Check that every plugin has a requires line
            requirements = requirements_collect(plugin)
            message = 'There were no requirements in plugin %s' % plugin
            assert (len(requirements) > 0), message

            for required_string in requirements:
                message = 'All plugins should return True or False'
                assert (requirement_check(
                    {
                        'category': 'hazard',
                        'subcategory': 'earthquake',
                        'layerType': 'raster'
                    }, required_string) in [True, False]), message
Ejemplo n.º 7
0
    def test_get_plugins(self):
        """Plugins can be collected."""
        os.environ['LANG'] = 'en'
        plugin_list = get_plugins()
        assert(len(plugin_list) > 0)

        # Obtain string representation
        string_rep = admissible_plugins_to_str(plugin_list)

        # Check each plugin
        for plugin in plugin_list.values():
            # Check that it's name appeears in string representation
            title = get_function_title(plugin)
            msg = ('Expected title %s in string representation: %s'
                   % (title, string_rep))
            assert title in string_rep, msg

            # Check that every plugin has a requires line
            requirements = requirements_collect(plugin)
            msg = 'There were no requirements in plugin %s' % plugin
            assert(len(requirements) > 0), msg

            for req_str in requirements:
                msg = 'All plugins should return True or False'
                assert(requirement_check({'category': 'hazard',
                                          'subcategory': 'earthquake',
                                          'layerType': 'raster'},
                                         req_str) in [True, False]), msg
Ejemplo n.º 8
0
    def test_requirements_check(self):
        """Plugins are correctly filtered based on requirements."""
        plugin_list = get_plugins('BasicFunction')
        self.assertEqual(len(plugin_list), 1)

        requirements = requirements_collect(plugin_list[0].values()[0])
        message = 'Requirements are %s' % requirements
        assert (len(requirements) == 1), message
        for req_str in requirements:
            message = 'Should eval to True'
            assert (requirement_check({'category': 'hazard'}, req_str) is
                    True), message
            message = 'Should eval to False'
            assert (requirement_check({'broke': 'broke'}, req_str) is
                    False), message

        try:
            plugin_list = get_plugins('NotRegistered')
        except RuntimeError:
            pass
        else:
            message = 'Search should fail'
            raise Exception(message)
Ejemplo n.º 9
0
    def test_requirements_check(self):
        """Plugins are correctly filtered based on requirements."""
        plugin_list = get_plugins('BasicFunction')
        self.assertEqual(len(plugin_list), 1)

        requirements = requirements_collect(plugin_list[0].values()[0])
        message = 'Requirements are %s' % requirements
        assert(len(requirements) == 1), message
        for req_str in requirements:
            message = 'Should eval to True'
            assert(requirement_check({'category': 'hazard'},
                                     req_str) is True), message
            message = 'Should eval to False'
            assert(requirement_check({'broke': 'broke'},
                                     req_str) is False), message

        try:
            plugin_list = get_plugins('NotRegistered')
        except RuntimeError:
            pass
        else:
            message = 'Search should fail'
            raise Exception(message)
Ejemplo n.º 10
0
 def test_keywords_error(self):
     """Handling of reserved python keywords """
     line = "unit=='MMI'"
     params = {'class': 'myclass'}
     msg = 'Reserved keyword in statement (logged)'
     self.assertFalse(requirement_check(params, line), msg)
Ejemplo n.º 11
0
 def test_keywords_error(self):
     """Handling of reserved python keywords """
     line = "unit=='MMI'"
     params = {'class': 'myclass'}
     msg = 'Reserved keyword in statement (logged)'
     assert not requirement_check(params, line), msg