Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue #5 memory manager redesign #10

Merged
merged 100 commits into from
Aug 7, 2019
Merged

Conversation

holzkohlengrill
Copy link
Collaborator

Description tacked in #5

KGergo88 added 30 commits July 3, 2019 12:37
Details:
    - Adding script for generating unit test code coverage report generation
    - Ignoring the unit test code coverage reports
    - Adding unit tests for the memoryEntry.py::MemEntry class
…ing results

Details:
    - Changing the order of parameter checking in order to be more testable
    - Adding TODO comments
    - Removing the equalSection and equalObject members because they were already implemented in subclasses
    - Code formatting
Details:
    - Implementing the SectionEntryTestCase
    - Implementing the ObjectEntryTestCase
    - The __eq__ will raise an exception in case of a not implemented type in SectionEntry and ObjectEntry from now on
…) and bugfixes

Details:
    - Adding different test cases to test the MemoryMap.py::caluclateObjectsInSections() function
    - Bugfix in the MemoryMap.py::caluclateObjectsInSections() function
    - Defining an exception throwing empty __eq__ operator for the memoryEntry.py::MemEntry class
…lass into other files

Details:
    - New files:
        - configuration.py
        - ghsConfiguration.py
        - mapfileProcessor.py
        - ghsMapfileProcessor.py
        - mapfileRegexes.py
        - ghsMapfileRegexes.py (this was the old mapfileRegexes.py)
Details:
	- Renaming MemoryWrapper to MemoryHandler
	- Removing redundant members from the MemEntry class
	- Removing unused methods in the MemoryHandlers
	- Renaming __eq__() to isEqual() in the MemoryHandlers
	- Adding member functions to the MemEntry class to calculate different end and hex addresses
	- Fixing MemEntry usages in the SW
	- Minor logging changes
	- Renaming shadowing readArgument variables to commandLineArguments
	- Renaming validateConfiguration() to checkConfiguration()
	- Bugfix in the mapfileProcessor.py::fillOutMemoryRegionsAndMemoryTypes()
	- Bugfix in the memoryMap.py::calculateObjectsInSections::cutOffTheBeginningOfTheSection()
	Details:
		Adding the missing addressStartHexOriginal() method to the MemEntry
		Updating the test__memoryEntry.py
		Updating the test__memoryMap.py
…erlap() and bugfixes

Details:
	- Fixing the bug in the overlap handling in memoryMap.py::resolveDuplicateContainmentOverlap()
	- Changing the isEqual() implementations so that they use the addressSize instead of the addressEnd()
	- Adding tests to the tests/unit_tests/test_memoryMap.py
…r.py

Details:
    - Adding the unit_tests/test_emma_helper.py
    - Changing the sys.path.append() call in the unit tests
    - Fixing a docstring error in the shared_libs/emma_helper.py::toHumanReadable()
	Details:
		- Adding constants that define the compiler names
		- Updating the test_project global config with the new compiler names
		- Updating the factories with the new compiler names
Details:
	- MemEntry:
		- Removing the members dma, vasName, vasSectionName
		- Adding the member compilerSpecificData
		- Adding default values and renaming parameters of the __init__()
		- addressStart, addressLength and addressEnd can be int and string as hex from now on
		- Renaming section to sectionName
		- Renaming moduleName to objectName
	- Renaming the constant MODULE_NAME to OBJECT_NAME (the term is GHS specific)
	- Renaming the constant TAG to the MEM_TYPE_TAG
	- Changing the order of the headers in the test__test_project.py
	- Changing the writeReportToDisk() to be able to handle the compilerSpecificData of the MemEntry
	- Changing the ghsMapfileProcessor() to create the compilerSpecificData as required by the MemEntry
	- Adding docstrings and comments to the memoryMap.py
	- Adding docstrings and comments to the memoryEntry.py
	- Adapting other parts of the code to the changes:
		- categorisation.py
		- mapfileProcessor.py
		- memoryMap.py
Details:
	- Fixed the bug of the addressEnd + addressLenght provided construction in the MemEntry
	- Reorganizing the test_memoryEntry.py and updating the tests with the changes
	- Updating the test_memoryMap.py
@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@KGergo88 KGergo88 changed the title WIP: Issue #5 memory manager redesign Issue #5 memory manager redesign Aug 7, 2019
@KGergo88
Copy link
Member

KGergo88 commented Aug 7, 2019

@holzkohlengrill: All points were implemented. Can I merge into master?

@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@KGergo88 KGergo88 marked this pull request as ready for review August 7, 2019 16:23
@bmwcarit bmwcarit deleted a comment Aug 7, 2019
@KGergo88 KGergo88 merged commit 4b4aaf6 into master Aug 7, 2019
@holzkohlengrill holzkohlengrill deleted the ISSUE_#5_MemoryManagerRedesign branch May 4, 2020 12:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants