Skip to content

Commit

Permalink
Lower case all generics from the user to match internal representation.
Browse files Browse the repository at this point in the history
Fixes #77
  • Loading branch information
kraigher committed Oct 2, 2015
1 parent 4a62226 commit 8360eaa
Showing 1 changed file with 14 additions and 4 deletions.
18 changes: 14 additions & 4 deletions vunit/ui.py
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ def set_generic(self, name, value):
"""
Globally set generic
"""
self._configuration.set_generic(name, value, scope=create_scope())
self._configuration.set_generic(name.lower(), value, scope=create_scope())

def set_parameter(self, name, value):
"""
Expand Down Expand Up @@ -519,7 +519,7 @@ def __init__(self, library_name, parent, project, configuration):

def set_generic(self, name, value):
""" Set generic within library """
self._configuration.set_generic(name, value, scope=self._scope)
self._configuration.set_generic(name.lower(), value, scope=self._scope)

def set_parameter(self, name, value):
""" Set generic within library """
Expand Down Expand Up @@ -593,7 +593,7 @@ def __init__(self, library_name, entity_name, config):

def set_generic(self, name, value):
""" Set generic within entity """
self._config.set_generic(name, value, scope=self._scope)
self._config.set_generic(name.lower(), value, scope=self._scope)

def set_parameter(self, name, value):
""" Set generic within module """
Expand All @@ -614,6 +614,7 @@ def add_config(self, name="", generics=None, parameters=None, post_check=None):
Add a run-configuration of all tests within entity
"""
generics = {} if generics is None else generics
generics = lower_generics(generics)
parameters = {} if parameters is None else parameters
generics.update(parameters)
self._config.add_config(scope=self._scope,
Expand Down Expand Up @@ -687,6 +688,7 @@ def add_config(self, name="", generics=None, parameters=None, post_check=None):
Add a run-configuration this test case
"""
generics = {} if generics is None else generics
generics = lower_generics(generics)
parameters = {} if parameters is None else parameters
generics.update(parameters)
self._config.add_config(scope=self._scope,
Expand All @@ -698,7 +700,7 @@ def set_generic(self, name, value):
"""
Set generic for test case
"""
self._config.set_generic(name, value, scope=self._scope)
self._config.set_generic(name.lower(), value, scope=self._scope)

def set_parameter(self, name, value):
"""
Expand Down Expand Up @@ -726,3 +728,11 @@ def select_vhdl_standard():
vhdl_standard = os.environ.get('VUNIT_VHDL_STANDARD', '2008')
assert vhdl_standard in ('93', '2002', '2008')
return vhdl_standard


def lower_generics(generics):
"""
Convert all generics names to lower case to match internal representation.
@TODO Maybe warn in case of conflict. VHDL forbids this though so the user will notice anyway.
"""
return dict((name.lower(), value) for name, value in generics.items())

0 comments on commit 8360eaa

Please sign in to comment.