|
Database System 0.1.0
Advanced C++20 Database System with Multi-Backend Support
|
#include <gtest/gtest.h>#include <memory>#include <string>#include <sstream>#include <vector>#include <regex>#include "database/backends/sqlite_backend.h"#include "database/core/database_backend.h"#include "database/query_builder.h"
Go to the source code of this file.
Classes | |
| class | DataMaskingTest |
| Test fixture for data masking security tests. More... | |
Functions | |
| TEST_F (DataMaskingTest, QueryResultsNotLeakedInExceptions) | |
| Tests that query results don't appear in exception messages. | |
| TEST_F (DataMaskingTest, DatabaseErrorsNotLeakData) | |
| Tests that database-level errors don't expose data. | |
| TEST_F (DataMaskingTest, ResultDebugOutputMasked) | |
| Tests that debug representations of results mask sensitive fields. | |
| TEST_F (DataMaskingTest, QueryBuilderDoesNotLogSensitiveData) | |
| Tests that query builder operations don't log sensitive values. | |
| TEST_F (DataMaskingTest, SensitiveColumnNamePatterns) | |
| Documents patterns that should be treated as sensitive. | |
| TEST_F (DataMaskingTest, PIINotInStackTraces) | |
| Tests that PII doesn't appear in stack traces. | |
| TEST_F (DataMaskingTest, LargeDataSetDoesNotLeakOnError) | |
| Tests that large result sets don't leak on error. | |
| TEST_F (DataMaskingTest, SensitiveDataClearedFromResult) | |
| Tests that sensitive data is clearable from result objects. | |
| TEST_F (DataMaskingTest, StringValueSecureClearing) | |
| Documents the need for secure string clearing. | |
| TEST_F (DataMaskingTest, DebugLogLevelDoesNotExposeSecrets) | |
| Tests that even debug-level logging masks sensitive data. | |
| TEST_F (DataMaskingTest, ErrorLogMasksSensitiveContext) | |
| Tests that error logs mask sensitive context. | |
| TEST_F (DataMaskingTest, CreditCardMaskingFormat) | |
| Documents expected credit card masking format. | |
| TEST_F (DataMaskingTest, SSNMaskingFormat) | |
| Documents expected SSN masking format. | |
| TEST_F | ( | DataMaskingTest | , |
| CreditCardMaskingFormat | ) |
Documents expected credit card masking format.
Definition at line 429 of file data_masking_test.cpp.
| TEST_F | ( | DataMaskingTest | , |
| DatabaseErrorsNotLeakData | ) |
Tests that database-level errors don't expose data.
Definition at line 132 of file data_masking_test.cpp.
| TEST_F | ( | DataMaskingTest | , |
| DebugLogLevelDoesNotExposeSecrets | ) |
Tests that even debug-level logging masks sensitive data.
Definition at line 390 of file data_masking_test.cpp.
| TEST_F | ( | DataMaskingTest | , |
| ErrorLogMasksSensitiveContext | ) |
Tests that error logs mask sensitive context.
Definition at line 401 of file data_masking_test.cpp.
| TEST_F | ( | DataMaskingTest | , |
| LargeDataSetDoesNotLeakOnError | ) |
Tests that large result sets don't leak on error.
Definition at line 308 of file data_masking_test.cpp.
References ASSERT_TRUE.
| TEST_F | ( | DataMaskingTest | , |
| PIINotInStackTraces | ) |
Tests that PII doesn't appear in stack traces.
Definition at line 285 of file data_masking_test.cpp.
References ASSERT_FALSE, and ASSERT_TRUE.
| TEST_F | ( | DataMaskingTest | , |
| QueryBuilderDoesNotLogSensitiveData | ) |
Tests that query builder operations don't log sensitive values.
Definition at line 214 of file data_masking_test.cpp.
References database::query_builder::build(), database::query_builder::select(), and database::query_builder::where().

| TEST_F | ( | DataMaskingTest | , |
| QueryResultsNotLeakedInExceptions | ) |
Tests that query results don't appear in exception messages.
When an error occurs after fetching sensitive data, the exception message should not contain the data values.
Definition at line 105 of file data_masking_test.cpp.
References ASSERT_FALSE, and ASSERT_TRUE.
| TEST_F | ( | DataMaskingTest | , |
| ResultDebugOutputMasked | ) |
Tests that debug representations of results mask sensitive fields.
Definition at line 160 of file data_masking_test.cpp.
References ASSERT_FALSE, and ASSERT_TRUE.
| TEST_F | ( | DataMaskingTest | , |
| SensitiveColumnNamePatterns | ) |
Documents patterns that should be treated as sensitive.
These column name patterns should trigger masking in debug/logging output.
Definition at line 246 of file data_masking_test.cpp.
| TEST_F | ( | DataMaskingTest | , |
| SensitiveDataClearedFromResult | ) |
Tests that sensitive data is clearable from result objects.
Definition at line 340 of file data_masking_test.cpp.
References ASSERT_FALSE, and ASSERT_TRUE.
| TEST_F | ( | DataMaskingTest | , |
| SSNMaskingFormat | ) |
Documents expected SSN masking format.
Definition at line 444 of file data_masking_test.cpp.
| TEST_F | ( | DataMaskingTest | , |
| StringValueSecureClearing | ) |
Documents the need for secure string clearing.
Definition at line 367 of file data_masking_test.cpp.