Project

General

Profile

Meeting #854

MARTe2 QA-audit (v1.4.0)

Added by André Neto almost 4 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
Start date:
17.05.2021
Due date:
% Done:

0%

Estimated time:

Description

The main addition is the FastScheduler and the support of RPM building.
Several bugs solved to address the EC-FAT tools development.

General

Information

The following files were detected as changed between branches develop and master
.gitignore
AUTHORS
Docs/User/source/_static/examples/Configurations/Makefile.inc
Docs/User/source/_static/examples/Core/Makefile.gcc
Docs/User/source/_static/examples/Core/Makefile.inc
Docs/User/source/_static/examples/Core/Makefile.x86-linux
Docs/User/source/_static/examples/Core/ReferencesExample7.cpp
Docs/User/source/_static/examples/Makefiles/Makefile.inc
Docs/User/source/_static/examples/Makefiles/Makefile.x86-linux
MakeDefaults/Lint/marte_flint_files.lnt
MakeDefaults/MakeStdLibDefs.cov
MakeDefaults/MakeStdLibDefs.rpmbuild
MakeDefaults/MakeStdLibDefs.x86-linux
MakeDefaults/MakeStdLibRules.cov
MakeDefaults/MakeStdLibRules.msc
MakeDefaults/MakeStdLibRules.rpmbuild
MakeDefaults/MakeStdLibRules.x86-linux
Makefile.inc
Makefile.rpmbuild
Resources/RPM/RPM-GPG-KEY-MARTe2
Resources/RPM/marte2-ccs-repo.spec
Resources/RPM/marte2-ccs.repo
Resources/RPM/marte2-projects.spec
Resources/RPM/marte2-repo.spec
Resources/RPM/marte2.repo
Source/App/Makefile.inc
Source/Core/BareMetal/L0Types/BitSet.cpp
Source/Core/BareMetal/L0Types/BitSet.h
Source/Core/BareMetal/L0Types/CompilerTypes.h
Source/Core/BareMetal/L0Types/Makefile.inc
Source/Core/BareMetal/L1Portability/Architecture/x86_gcc/ProcessorA.h
Source/Core/BareMetal/L1Portability/Atomic.h
Source/Core/BareMetal/L1Portability/Endianity.h
Source/Core/BareMetal/L1Portability/Environment/Linux/GeneralDefinitions.h
Source/Core/BareMetal/L1Portability/Environment/Linux/HighResolutionTimerCalibrator.cpp
Source/Core/BareMetal/L1Portability/Environment/Linux/Makefile.inc
Source/Core/BareMetal/L1Portability/Environment/Windows/Makefile.inc
Source/Core/BareMetal/L1Portability/FastMath.h
Source/Core/BareMetal/L1Portability/GeneralDefinitions.h
Source/Core/BareMetal/L1Portability/GlobalObjectsDatabase.h
Source/Core/BareMetal/L1Portability/HighResolutionTimer.h
Source/Core/BareMetal/L1Portability/Makefile.inc
Source/Core/BareMetal/L1Portability/ProcessorType.cpp
Source/Core/BareMetal/L1Portability/ProcessorType.h
Source/Core/BareMetal/L2Objects/Makefile.inc
Source/Core/BareMetal/L3Streams/Makefile.inc
Source/Core/BareMetal/L4Configuration/Makefile.inc
Source/Core/BareMetal/L4HttpService/Makefile.inc
Source/Core/BareMetal/L4Logger/Makefile.inc
Source/Core/BareMetal/L4Messages/Makefile.inc
Source/Core/BareMetal/L5GAMs/DataSourceI.cpp
Source/Core/BareMetal/L5GAMs/GAMSchedulerI.cpp
Source/Core/BareMetal/L5GAMs/GAMSchedulerI.h
Source/Core/BareMetal/L5GAMs/Makefile.inc
Source/Core/BareMetal/L5GAMs/RealTimeApplicationConfigurationBuilder.cpp
Source/Core/BareMetal/L6App/Environment/Linux/Makefile.inc
Source/Core/BareMetal/L6App/Makefile.inc
Source/Core/BareMetal/L6App/RealTimeLoader.cpp
Source/Core/BareMetal/Makefile.inc
Source/Core/FileSystem/L1Portability/BasicFile.h
Source/Core/FileSystem/L1Portability/BasicSocket.h
Source/Core/FileSystem/L1Portability/Directory.h
Source/Core/FileSystem/L1Portability/Environment/Linux/Makefile.inc
Source/Core/FileSystem/L1Portability/Environment/Windows/Makefile.inc
Source/Core/FileSystem/L1Portability/InternetHost.h
Source/Core/FileSystem/L1Portability/InternetService.h
Source/Core/FileSystem/L1Portability/Makefile.inc
Source/Core/FileSystem/L1Portability/Select.h
Source/Core/FileSystem/L3Streams/Makefile.inc
Source/Core/FileSystem/L4HttpService/Makefile.inc
Source/Core/FileSystem/L4LoggerService/Makefile.inc
Source/Core/FileSystem/L6App/Environment/Linux/Makefile.inc
Source/Core/FileSystem/L6App/Makefile.inc
Source/Core/FileSystem/Makefile.inc
Source/Core/Makefile.inc
Source/Core/Scheduler/L1Portability/CountingSem.cpp
Source/Core/Scheduler/L1Portability/CountingSem.h
Source/Core/Scheduler/L1Portability/Environment/Linux/Makefile.inc
Source/Core/Scheduler/L1Portability/Environment/Linux/Threads.cpp
Source/Core/Scheduler/L1Portability/Environment/Windows/Makefile.inc
Source/Core/Scheduler/L1Portability/EventSem.h
Source/Core/Scheduler/L1Portability/Makefile.inc
Source/Core/Scheduler/L1Portability/Processor.h
Source/Core/Scheduler/L3Services/Makefile.inc
Source/Core/Scheduler/L4LoggerService/Makefile.inc
Source/Core/Scheduler/L4Messages/Makefile.inc
Source/Core/Scheduler/L4StateMachine/Makefile.inc
Source/Core/Scheduler/L4StateMachine/StateMachine.cpp
Source/Core/Scheduler/L4StateMachine/StateMachineEvent.cpp
Source/Core/Scheduler/L5GAMs/CircularBufferThreadInputDataSource.cpp
Source/Core/Scheduler/L5GAMs/CircularBufferThreadInputDataSource.h
Source/Core/Scheduler/L5GAMs/FastScheduler.cpp
Source/Core/Scheduler/L5GAMs/FastScheduler.h
Source/Core/Scheduler/L5GAMs/GAMScheduler.cpp
Source/Core/Scheduler/L5GAMs/GAMScheduler.h
Source/Core/Scheduler/L5GAMs/Makefile.inc
Source/Core/Scheduler/L5GAMs/MemoryMapAsyncOutputBroker.cpp
Source/Core/Scheduler/L5GAMs/MemoryMapAsyncOutputBroker.h
Source/Core/Scheduler/L5GAMs/MemoryMapAsyncTriggerOutputBroker.cpp
Source/Core/Scheduler/L5GAMs/MemoryMapAsyncTriggerOutputBroker.h
Source/Core/Scheduler/Makefile.inc
Test/Core/BareMetal/L0Types/BitSetTest.cpp
Test/Core/BareMetal/L0Types/BitSetTest.h
Test/Core/BareMetal/L0Types/Makefile.inc
Test/Core/BareMetal/L1Portability/HeapManagerTest.h
Test/Core/BareMetal/L1Portability/HighResolutionTimerTest.cpp
Test/Core/BareMetal/L1Portability/Makefile.inc
Test/Core/BareMetal/L1Portability/ProcessorTypeTest.cpp
Test/Core/BareMetal/L1Portability/ProcessorTypeTest.h
Test/Core/BareMetal/L1Portability/StandardHeap_GenericTest.cpp
Test/Core/BareMetal/L2Objects/Makefile.inc
Test/Core/BareMetal/L3Streams/Makefile.inc
Test/Core/BareMetal/L4Configuration/Makefile.inc
Test/Core/BareMetal/L4HttpService/Makefile.inc
Test/Core/BareMetal/L4Logger/Makefile.inc
Test/Core/BareMetal/L4Messages/Makefile.inc
Test/Core/BareMetal/L5GAMs/GAMTestHelper.cpp
Test/Core/BareMetal/L5GAMs/GAMTestHelper.h
Test/Core/BareMetal/L5GAMs/Makefile.inc
Test/Core/BareMetal/L5GAMs/RealTimeApplicationConfigurationBuilderTest.cpp
Test/Core/BareMetal/L5GAMs/TimingDataSourceTest.cpp
Test/Core/BareMetal/L5GAMs/TimingDataSourceTest.h
Test/Core/BareMetal/L6App/Makefile.inc
Test/Core/BareMetal/Makefile.inc
Test/Core/FileSystem/L1Portability/DirectoryScannerTest.h
Test/Core/FileSystem/L1Portability/DirectoryTest.h
Test/Core/FileSystem/L1Portability/Makefile.inc
Test/Core/FileSystem/L3Streams/Makefile.inc
Test/Core/FileSystem/L4HttpService/Makefile.inc
Test/Core/FileSystem/L4LoggerService/Makefile.inc
Test/Core/FileSystem/L6App/Makefile.inc
Test/Core/FileSystem/Makefile.inc
Test/Core/Scheduler/L1Portability/CountingSemTest.cpp
Test/Core/Scheduler/L1Portability/CountingSemTest.h
Test/Core/Scheduler/L1Portability/Makefile.inc
Test/Core/Scheduler/L3Services/Makefile.inc
Test/Core/Scheduler/L4LoggerService/Makefile.inc
Test/Core/Scheduler/L4Messages/Makefile.inc
Test/Core/Scheduler/L4StateMachine/Makefile.inc
Test/Core/Scheduler/L5GAMs/CircularBufferThreadInputDataSourceTest.cpp
Test/Core/Scheduler/L5GAMs/CircularBufferThreadInputDataSourceTest.h
Test/Core/Scheduler/L5GAMs/FastSchedulerTest.cpp
Test/Core/Scheduler/L5GAMs/FastSchedulerTest.h
Test/Core/Scheduler/L5GAMs/GAMSchedulerTest.cpp
Test/Core/Scheduler/L5GAMs/Makefile.inc
Test/Core/Scheduler/L5GAMs/MemoryMapAsyncOutputBrokerTest.cpp
Test/Core/Scheduler/L5GAMs/MemoryMapAsyncTriggerOutputBrokerTest.cpp
Test/Core/Scheduler/Makefile.inc
Test/GTest/BareMetal/L0Types/BitSetGTest.cpp
Test/GTest/BareMetal/L0Types/Makefile.inc
Test/GTest/BareMetal/L1Portability/Makefile.inc
Test/GTest/BareMetal/L1Portability/ProcessorTypeGTest.cpp
Test/GTest/BareMetal/L2Objects/Makefile.inc
Test/GTest/BareMetal/L3Streams/Makefile.inc
Test/GTest/BareMetal/L4Configuration/Makefile.inc
Test/GTest/BareMetal/L4HttpService/Makefile.inc
Test/GTest/BareMetal/L4Logger/Makefile.inc
Test/GTest/BareMetal/L4Messages/Makefile.inc
Test/GTest/BareMetal/L5GAMs/Makefile.inc
Test/GTest/BareMetal/L5GAMs/TimingDataSourceGTest.cpp
Test/GTest/BareMetal/L6App/Makefile.inc
Test/GTest/BareMetal/Makefile.inc
Test/GTest/FileSystem/L1Portability/Makefile.inc
Test/GTest/FileSystem/L3Streams/Makefile.inc
Test/GTest/FileSystem/L4HttpService/Makefile.inc
Test/GTest/FileSystem/L4LoggerService/Makefile.inc
Test/GTest/FileSystem/L6App/Makefile.inc
Test/GTest/FileSystem/Makefile.inc
Test/GTest/Makefile.inc
Test/GTest/Scheduler/L1Portability/CountingSemGTest.cpp
Test/GTest/Scheduler/L1Portability/Makefile.inc
Test/GTest/Scheduler/L3Services/Makefile.inc
Test/GTest/Scheduler/L4LoggerService/Makefile.inc
Test/GTest/Scheduler/L4Messages/Makefile.inc
Test/GTest/Scheduler/L4StateMachine/Makefile.inc
Test/GTest/Scheduler/L5GAMs/CircularBufferThreadInputDataSourceGTest.cpp
Test/GTest/Scheduler/L5GAMs/FastSchedulerGTest.cpp
Test/GTest/Scheduler/L5GAMs/GAMSchedulerGTest.cpp
Test/GTest/Scheduler/L5GAMs/Makefile.inc
Test/GTest/Scheduler/Makefile.inc

OK: no errors found.

Requirements review

Date of the review: 17/05/2021

Person who did the review: jenkins1 (codac.local)

Version of requirements: N/A

Result of review: N/A

List of non-conformities: N/A

Comments: N/A

Architecture & design review

Date of the review: 17/05/2021

Person who did the review: jenkins1 (codac.local)

Version of architecture & design document: N/A

Result of review: N/A

List of non-conformities: N/A

Comments: N/A

Code and documentation review

Date of the review: 17/05/2021

Person who did the review: jenkins1 (codac.local)

Version of source code: d258c08815e9cbc0d8ec8555e864fa55db39e7c2

Result of review: PASS

List of non-conformities:

Headers

ERR: Invalid @file in file Docs/User/source/_static/examples/Core/ReferencesExample7.cpp
ERR: Invalid @brief in file Docs/User/source/_static/examples/Core/ReferencesExample7.cpp
ERR: Invalid @author in file Docs/User/source/_static/examples/Core/ReferencesExample7.cpp
ERR: Invalid #includes sorted in file Docs/User/source/_static/examples/Core/ReferencesExample7.cpp
ERR: Invalid @brief in file Source/Core/BareMetal/L1Portability/Architecture/x86_gcc/ProcessorA.h
ERR: Invalid @brief in file Source/Core/BareMetal/L1Portability/Atomic.h
ERR: Invalid @brief in file Source/Core/BareMetal/L1Portability/Endianity.h
ERR: Invalid @author in file Source/Core/BareMetal/L1Portability/Environment/Linux/GeneralDefinitions.h
ERR: Invalid @file in file Source/Core/BareMetal/L1Portability/Environment/Linux/HighResolutionTimerCalibrator.cpp
ERR: Invalid @brief in file Source/Core/BareMetal/L1Portability/Environment/Linux/HighResolutionTimerCalibrator.cpp
ERR: Invalid #includes sorted in file Source/Core/BareMetal/L1Portability/Environment/Linux/HighResolutionTimerCalibrator.cpp
ERR: Invalid #includes sorted in file Source/Core/BareMetal/L1Portability/FastMath.h
ERR: Invalid @author in file Source/Core/BareMetal/L1Portability/GlobalObjectsDatabase.h
ERR: Invalid @brief in file Source/Core/BareMetal/L1Portability/HighResolutionTimer.h
ERR: Invalid #includes sorted in file Source/Core/BareMetal/L1Portability/HighResolutionTimer.h
ERR: Invalid @author in file Source/Core/BareMetal/L6App/RealTimeLoader.cpp
ERR: Invalid #includes sorted in file Source/Core/BareMetal/L6App/RealTimeLoader.cpp
ERR: Invalid #includes sorted in file Source/Core/FileSystem/L1Portability/BasicFile.h
ERR: Invalid #includes sorted in file Source/Core/FileSystem/L1Portability/BasicSocket.h
ERR: Invalid #includes sorted in file Source/Core/FileSystem/L1Portability/Select.h
ERR: Invalid @brief in file Source/Core/Scheduler/L1Portability/Environment/Linux/Threads.cpp
ERR: Invalid @brief in file Source/Core/Scheduler/L1Portability/Processor.h
ERR: Invalid #includes sorted in file Source/Core/Scheduler/L5GAMs/MemoryMapAsyncTriggerOutputBroker.cpp
ERR: Invalid @author in file Test/Core/BareMetal/L1Portability/HighResolutionTimerTest.cpp
ERR: Invalid #includes sorted in file Test/Core/BareMetal/L1Portability/HighResolutionTimerTest.cpp
ERR: Invalid #includes sorted in file Test/Core/BareMetal/L5GAMs/GAMTestHelper.h
ERR: Invalid #includes sorted in file Test/Core/BareMetal/L5GAMs/TimingDataSourceTest.cpp
ERR: Invalid @date in file Test/Core/FileSystem/L1Portability/DirectoryScannerTest.h
ERR: Invalid #includes sorted in file Test/Core/FileSystem/L1Portability/DirectoryScannerTest.h
ERR: Invalid #includes sorted in file Test/Core/FileSystem/L1Portability/DirectoryTest.h
ERR: Invalid #includes sorted in file Test/Core/Scheduler/L5GAMs/MemoryMapAsyncTriggerOutputBrokerTest.cpp
ERR: Invalid #includes sorted in file Test/GTest/BareMetal/L0Types/BitSetGTest.cpp
ERR: Invalid #includes sorted in file Test/GTest/BareMetal/L1Portability/ProcessorTypeGTest.cpp
ERR: Invalid @brief in file Test/GTest/BareMetal/L5GAMs/TimingDataSourceGTest.cpp
ERR: Invalid #includes sorted in file Test/GTest/BareMetal/L5GAMs/TimingDataSourceGTest.cpp
ERR: Invalid #includes sorted in file Test/GTest/Scheduler/L1Portability/CountingSemGTest.cpp
ERR: Invalid #includes sorted in file Test/GTest/Scheduler/L5GAMs/FastSchedulerGTest.cpp

Lint includes

OK: All files are being included for linting
OK: no errors found.

Linter

ERR: suspicious because of 'zero length zone of transition'; option has no
ERR: effect
ERR: (0): Note 974: Worst case function for stack usage: 'MARTe::ConfigurationDatabase::Copy' is recursive, loop contains call to 'MARTe::ConfigurationDatabase::Copy'. See stack for a full report. [MISRA C+ Rule 7-5-4] (Note <a href="https://vcis-jenkins.f4e.europa.eu/userContent/LintMsgRef.html#974">974</a>)

Doxygen

OK: no errors found.

Unit test review

Date of the review: 17/05/2021

Person who did the review: jenkins1 (codac.local)

Version of source code: d258c08815e9cbc0d8ec8555e864fa55db39e7c2

Result of coverage tests review: PASS

Result of functional tests review: PASS

Result of review: PASS

Comments:

List of non-conformities:

Functional tests

ERR: BitSet:Resize is not tested
ERR: Test file not found: Test/GTest/BareMetal/L1Portability/ProcessorAGTest.cpp
ERR: GlobalObjectsDatabase:Add is not tested
ERR: ProcessorType:CPUEnabled is not tested
ERR: ProcessorType:GetCPUsNumber is not tested
ERR: ProcessorType:GetLegacyUint32Mask is not tested
ERR: ProcessorType:SetDefaultCPUs is not tested
ERR: GAMSchedulerI:Initialise is not tested
ERR: GAMSchedulerI:Purge is not tested
ERR: GAMSchedulerI:StartNextStateExecution is not tested
ERR: GAMSchedulerI:StopCurrentStateExecution is not tested
ERR: BasicSocket:GetReadHandle is not tested
ERR: BasicSocket:GetWriteHandle is not tested
ERR: BasicSocket:IsValid is not tested
ERR: EventSem:GetProperties is not tested
ERR: FastScheduler:ConfigureScheduler is not tested
ERR: FastScheduler:Execute is not tested
ERR: GAMScheduler:Execute is not tested
ERR: MemoryMapAsyncOutputBroker:Flush is not tested
ERR: MemoryMapAsyncOutputBroker:UnlinkDataSource is not tested
ERR: MemoryMapAsyncTriggerOutputBroker:UnlinkDataSource is not tested

GTest

ERR: Number of errors has increased. Number of tests: 4794. Current branch: 5. Reference branch: 4
OK: Number of tests increased. Current branch: 4794. Reference branch: 4762

Unsolved Failing Tests

ERR: TestWaitUntil_waitTimeout
ERR: TestGetThreadInfoCopy
ERR: TestPriority

New Failing Tests

ERR: TestWaitForAll1000
ERR: TestForceReset

Solved Failing Tests

ERR: TestHttpExchange_Authorization_FalseTimeout

Coverage

WARN: L6App/RealTimeLoader.cpp: was modified. line coverage is still OK (but has decreased). This branch (95.2 % >= 90.0 %). Reference branch (95.3 % >= 90.0 %)
WARN: StateMachine.cpp: was modified. line coverage is still OK (but has decreased). This branch (95.6 % >= 90.0 %). Reference branch (96.1 % >= 90.0 %)
OK: L1Portability/ProcessorType.cpp: was modified. line coverage is still OK. This branch (93.6 % >= 90.0 %). Reference branch (93.3 % >= 90.0 %)
OK: L5GAMs/RealTimeApplica...nfigurationBuilder.cpp: was modified. line coverage is still OK. This branch (97.0 % >= 90.0 %). Reference branch (96.9 % >= 90.0 %)
OK: CountingSem.cpp: is new. Line coverage is OK: (100.0 % >= 90.0 %)
OK: Threads.cpp: was modified. line coverage is still OK. This branch (91.8 % >= 90.0 %). Reference branch (90.5 % >= 90.0 %)
OK: CircularBufferThreadInputDataSource.cpp: was modified. line coverage is still OK. This branch (100.0 % >= 90.0 %). Reference branch (97.2 % >= 90.0 %)
OK: FastScheduler.cpp: is new. Line coverage is OK: (100.0 % >= 90.0 %)
OK: MemoryMapAsyncOutputBroker.cpp: was modified. line coverage is still OK. This branch (96.2 % >= 90.0 %). Reference branch (96.0 % >= 90.0 %)
OK: MemoryMapAsyncTriggerOutputBroker.cpp: was modified. line coverage is still OK. This branch (94.4 % >= 90.0 %). Reference branch (94.3 % >= 90.0 %)
OK: No coverage errors found

Integration test review

Date of the review: 17/05/2021

Person who did the review: jenkins1 (codac.local)

Version of source code: d258c08815e9cbc0d8ec8555e864fa55db39e7c2

Result of review: N/A

List of non-conformities: N/A

Comments: N/A

Acceptance test review

Date of the review: 17/05/2021

Person who did the review: jenkins1 (codac.local)

Version of source code: d258c08815e9cbc0d8ec8555e864fa55db39e7c2

Result of review: N/A

List of non-conformities: N/A

Comments: N/A

History

#1 Updated by André Neto almost 4 years ago

  • Description updated (diff)

Also available in: Atom PDF