User story #275
Updated by Ivan Herrero over 9 years ago
Implement Directory (for Windows) based on the previous MARTe implementation.
h1. Source code files modified
Source/Core/BareMetal/L0Types/Architecture/x86_cl/CompilerTypes.h
Source/Core/FileSystem/L1Portability/Directory.h
Source/Core/FileSystem/L1Portability/DirectoryScanner.h
Source/Core/FileSystem/L1Portability/Environment/Linux/DirectoryScanner.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/BasicSocket.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/BasicUDPSocket.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/Directory.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/DirectoryScanner.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/Select.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/SelectProperties.h
Source/Core/FileSystem/L1Portability/Select.h
Test/Core/FileSystem/L1Portability/BasicTCPSocketTest.cpp
Test/Core/FileSystem/L1Portability/DirectoryScannerTest.cpp
Test/Core/FileSystem/L1Portability/DirectoryTest.cpp
Test/Core/FileSystem/L1Portability/SelectTest.cpp
Test/GTest/BasicTCPSocketGTest.cpp
Test/GTest/Makefile.inc
h1. Architecture & design review
*Date of the review:* 11/13/2015
*Person who did the review:* André Neto
*Version of architecture & design document:* N/A. As per the original MARTe implementation, this is a support function and does not require formal design in UML.
*Result of review:* N/A
*List of non-conformities:* N/A
h1. Code and documentation review
*Date of the review:* 09/12/2015
*Person who did the review:* review: André Neto
*Result of review:* PASS
*List of non-conformities:*
As a pattern DirectoryScanner should use LinkedListHolder and not inherit from it.
h1. Unit test review
*Date of the review:* 09/12/2015
*Person who did the review:* André Neto
*Result of coverage tests review:* N/A
*Result of functional tests review:* PASS
*Result of review:* FAIL
*List of non-conformities:*
[ FAILED ] DirectoryGTest.TestGetLastAccessTime_ReRead
[ FAILED ] DirectoryGTest.TestGetLastAccessTime_ReRead2
[ FAILED ] DirectoryGTest.TestScanFilter
Randome failures in TestScanFilter to be investigated.
These two tests require http://www.groovypost.com/howto/microsoft/enable-last-access-time-stamp-to-files-folder-windows-7/ to be setup (but it needs admin rights)
[ FAILED ] BasicTCPSocketGTest.TestConnect
[ FAILED ] BasicTCPSocketGTest.TestRead
These tests fail randomly and seem to be associated to the quantity of open sockets (to be investigated in a later user-story).
h1. Source code files modified
Source/Core/BareMetal/L0Types/Architecture/x86_cl/CompilerTypes.h
Source/Core/FileSystem/L1Portability/Directory.h
Source/Core/FileSystem/L1Portability/DirectoryScanner.h
Source/Core/FileSystem/L1Portability/Environment/Linux/DirectoryScanner.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/BasicSocket.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/BasicUDPSocket.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/Directory.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/DirectoryScanner.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/Select.cpp
Source/Core/FileSystem/L1Portability/Environment/Windows/SelectProperties.h
Source/Core/FileSystem/L1Portability/Select.h
Test/Core/FileSystem/L1Portability/BasicTCPSocketTest.cpp
Test/Core/FileSystem/L1Portability/DirectoryScannerTest.cpp
Test/Core/FileSystem/L1Portability/DirectoryTest.cpp
Test/Core/FileSystem/L1Portability/SelectTest.cpp
Test/GTest/BasicTCPSocketGTest.cpp
Test/GTest/Makefile.inc
h1. Architecture & design review
*Date of the review:* 11/13/2015
*Person who did the review:* André Neto
*Version of architecture & design document:* N/A. As per the original MARTe implementation, this is a support function and does not require formal design in UML.
*Result of review:* N/A
*List of non-conformities:* N/A
h1. Code and documentation review
*Date of the review:* 09/12/2015
*Person who did the review:* review: André Neto
*Result of review:* PASS
*List of non-conformities:*
As a pattern DirectoryScanner should use LinkedListHolder and not inherit from it.
h1. Unit test review
*Date of the review:* 09/12/2015
*Person who did the review:* André Neto
*Result of coverage tests review:* N/A
*Result of functional tests review:* PASS
*Result of review:* FAIL
*List of non-conformities:*
[ FAILED ] DirectoryGTest.TestGetLastAccessTime_ReRead
[ FAILED ] DirectoryGTest.TestGetLastAccessTime_ReRead2
[ FAILED ] DirectoryGTest.TestScanFilter
Randome failures in TestScanFilter to be investigated.
These two tests require http://www.groovypost.com/howto/microsoft/enable-last-access-time-stamp-to-files-folder-windows-7/ to be setup (but it needs admin rights)
[ FAILED ] BasicTCPSocketGTest.TestConnect
[ FAILED ] BasicTCPSocketGTest.TestRead
These tests fail randomly and seem to be associated to the quantity of open sockets (to be investigated in a later user-story).