Clang: Extent sources manager with dependency

For many index cases such a function call it is needed to check if
any of the included files are changed because the function which is called
could be changed too.

Change-Id: Ibe0f43426c735d39072f284cad075dd4dc6f99c0
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
This commit is contained in:
Marco Bubke
2018-08-16 18:01:55 +02:00
parent 9ed36db854
commit cc0db43c34
2 changed files with 110 additions and 0 deletions

View File

@@ -136,4 +136,100 @@ TEST_F(SourcesManager, TimeIsUpdated)
ASSERT_TRUE(sources.alreadyParsed({1, 1}, 57));
}
TEST_F(SourcesManager, AnyDependFileIsNotModifiedAfterInitialization)
{
ASSERT_FALSE(sources.dependendFilesModified());
}
TEST_F(SourcesManager, AnyDependFileIsModified)
{
sources.alreadyParsed({1, 1}, 56);
ASSERT_TRUE(sources.dependendFilesModified());
}
TEST_F(SourcesManager, AnyDependFileIsModifiedAfterParsingTwoTimesSameTimeStamp)
{
sources.alreadyParsed({1, 1}, 56);
sources.alreadyParsed({1, 1}, 56);
ASSERT_TRUE(sources.dependendFilesModified());
}
TEST_F(SourcesManager, AnyDependFileIsNotModifiedAfterUpdate)
{
sources.alreadyParsed({1, 1}, 56);
sources.updateModifiedTimeStamps();
ASSERT_FALSE(sources.dependendFilesModified());
}
TEST_F(SourcesManager, AnyDependFileIsNotModifiedAfterNotAlreadyPared)
{
sources.alreadyParsed({1, 1}, 56);
sources.updateModifiedTimeStamps();
sources.alreadyParsed({1, 1}, 56);
ASSERT_FALSE(sources.dependendFilesModified());
}
TEST_F(SourcesManager, AnyDependFileIsNotModifiedAfterAlreadyPared)
{
sources.alreadyParsed({1, 1}, 56);
sources.updateModifiedTimeStamps();
sources.alreadyParsed({1, 1}, 57);
ASSERT_TRUE(sources.dependendFilesModified());
}
TEST_F(SourcesManager, AnyDependFileIsModifiedAfterUpdateNewTimeStamp)
{
sources.alreadyParsed({1, 1}, 56);
sources.alreadyParsed({1, 2}, 56);
sources.updateModifiedTimeStamps();
sources.alreadyParsed({1, 1}, 57);
sources.alreadyParsed({1, 2}, 56);
ASSERT_TRUE(sources.dependendFilesModified());
}
TEST_F(SourcesManager, AlreadyParsedWithDependencyAfterUpdateNewTimeStamp)
{
sources.alreadyParsedAllDependFiles({1, 1}, 56);
sources.alreadyParsedAllDependFiles({1, 2}, 56);
sources.updateModifiedTimeStamps();
sources.alreadyParsedAllDependFiles({1, 1}, 57);
bool alreadyParsed = sources.alreadyParsedAllDependFiles({1, 2}, 56);
ASSERT_FALSE(alreadyParsed);
}
TEST_F(SourcesManager, AlreadyParsedWithDependencyAfterUpdateNewSecondTimeStamp)
{
sources.alreadyParsedAllDependFiles({1, 1}, 56);
sources.alreadyParsedAllDependFiles({1, 2}, 56);
sources.updateModifiedTimeStamps();
sources.alreadyParsedAllDependFiles({1, 1}, 56);
bool alreadyParsed = sources.alreadyParsedAllDependFiles({1, 2}, 57);
ASSERT_FALSE(alreadyParsed);
}
TEST_F(SourcesManager, AlreadyParsedWithDependencyAfterUpdateSameTimeStamps)
{
sources.alreadyParsedAllDependFiles({1, 1}, 56);
sources.alreadyParsedAllDependFiles({1, 2}, 56);
sources.updateModifiedTimeStamps();
sources.alreadyParsedAllDependFiles({1, 1}, 56);
bool alreadyParsed = sources.alreadyParsedAllDependFiles({1, 2}, 56);
ASSERT_TRUE(alreadyParsed);
}
}