CustomTest
Factory
Create #
Build and configure a harness instance
Signature:
Public Function Create(ByVal targetWorkbook As workbook, _
Optional ByVal outputSheetName As String = vbNullString) As ICustomTest
Parameters:
targetWorkbook: Workbook under test that receives logging outputoutputSheetName: Optional name of the worksheet used for results
Returns: ICustomTest harness ready for use
Self #
Access the current harness reference
Signature:
Public Property Get Self() As ICustomTest
Returns: ICustomTest reference for fluent usage
Public members
Configure #
Configure the harness with the workbook and target sheet
Signature:
Public Sub Configure(ByVal targetWorkbook As workbook, _
Optional ByVal outputSheetName As String = vbNullString)
Parameters:
targetWorkbook: Workbook that supplies and receives outputoutputSheetName: Optional sheet name where results will be written
Throws:
- ProjectError.InvalidArgument When workbook reference is invalid
ReleaseResources #
Clear references and reset harness state
Signature:
Private Sub ReleaseResources()
SetModuleName #
Set the VBA module name used in rendered output
Signature:
Public Sub SetModuleName(ByVal moduleName As String)
Parameters:
moduleName: Name displayed in result tables
SetTestName #
Set the pending test name for subsequent assertions
Signature:
Public Sub SetTestName(ByVal testName As String)
Parameters:
testName: Descriptive identifier of the current test
SetTestSubtitle #
Set an optional subtitle for the pending test
Signature:
Public Sub SetTestSubtitle(ByVal testSubtitle As String)
Parameters:
testSubtitle: Additional context for the test case
BeginTest #
Persist previous checking and start logging a new test
Signature:
Public Sub BeginTest(Optional ByVal resetNames As Boolean = False)
Reset #
Clear current checking and accumulated results
Signature:
Public Sub ResetInstance()
FlushCurrentTest #
Persist active checking and return accumulated results
Signature:
Public Function FlushCurrentTest(Optional ByVal resetNames As Boolean = True) As BetterArray
Parameters:
resetNames: Optional Boolean specifying whether to reset names after clearing
Returns: BetterArray containing all persisted checkings
Flush #
Persist active checking without returning the accumulated results
Signature:
Public Sub Flush(Optional ByVal resetNames As Boolean = True)
Parameters:
resetNames: Optional Boolean specifying whether to reset names after clearing
Results #
Clone accumulated checking results
Signature:
Public Function Results() As BetterArray
Returns: BetterArray clone of collected checkings
PrintResults #
Write the results to a worksheet using CheckingOutput
Signature:
Public Sub PrintResults(Optional ByVal outputSheetName As String = vbNullString)
Parameters:
outputSheetName: Optional override for worksheet name
Depends on:
- CheckingOutput
AreEqual #
Log an assertion comparing expected and actual values
Signature:
Public Sub AreEqual(expected As Variant, _
actual As Variant, _
ByVal message As String)
Parameters:
expected: Expected valueactual: Actual valuemessage: Message describing the assertion context
AreNotEqual #
Log an assertion confirming expected and actual values differ
Signature:
Public Sub AreNotEqual(expected As Variant, _
actual As Variant, _
ByVal message As String)
Parameters:
expected: Expected valueactual: Actual valuemessage: Message describing the assertion context
IsTrue #
Log that a boolean condition holds true
Signature:
Public Sub IsTrue(ByVal condition As Boolean, _
ByVal message As String)
Parameters:
condition: Condition to evaluatemessage: Message describing the assertion context
IsFalse #
Log that a boolean condition evaluates to False
Signature:
Public Sub IsFalse(ByVal condition As Boolean, _
ByVal message As String)
Parameters:
condition: Condition to evaluatemessage: Message describing the assertion context
ObjectExists #
Confirm an object reference exists and matches the expected type name
Signature:
Public Sub ObjectExists(ByVal instance As Object, _
ByVal expectedTypeName As String, _
ByVal message As String)
Parameters:
instance: Object reference to validateexpectedTypeName: Expected VBA type namemessage: Message describing the assertion context
LogFailure #
Log a failure message directly to the current checking
Signature:
Public Sub LogFailure(ByVal message As String)
Parameters:
message: Message describing the failure
LogSuccesses #
Log a success message directly to the current checking
Signature:
Public Sub LogSuccesses(ByVal message As String)
Parameters:
message: Message describing the success
Internal members (not exported)
ICustomTest implementation
ICustomTest_Configure #
Forward interface calls to public Configure
Signature:
Private Sub ICustomTest_Configure(ByVal targetWorkbook As workbook, _
Optional ByVal outputSheetName As String = vbNullString)
Parameters:
targetWorkbook: Workbook that stores test outputoutputSheetName: Optional target worksheet name
ICustomTest_ReleaseResources #
Bridge interface ReleaseResources to public member
Signature:
Private Sub ICustomTest_ReleaseResources()
ICustomTest_SetModuleName #
Bridge interface SetModuleName to public member
Signature:
Private Sub ICustomTest_SetModuleName(ByVal moduleName As String)
ICustomTest_SetTestName #
Bridge interface SetTestName to public member
Signature:
Private Sub ICustomTest_SetTestName(ByVal testName As String)
ICustomTest_SetTestSubtitle #
Bridge interface SetTestSubtitle to public member
Signature:
Private Sub ICustomTest_SetTestSubtitle(ByVal testSubtitle As String)
ICustomTest_BeginTest #
Bridge interface BeginTest to public member
Signature:
Private Sub ICustomTest_BeginTest(Optional ByVal resetNames As Boolean = False)
ICustomTest_Reset #
Bridge interface Reset to public member
Signature:
Private Sub ICustomTest_ResetInstance()
ICustomTest_FlushCurrentTest #
Return results snapshot for interface callers
Signature:
Private Function ICustomTest_FlushCurrentTest(Optional ByVal resetNames As Boolean = True) As BetterArray
ICustomTest_Flush #
Bridge interface Flush to public member
Signature:
Private Sub ICustomTest_Flush(Optional ByVal resetNames As Boolean = True)
ICustomTest_Results #
Provide a clone of accumulated results through the interface
Signature:
Private Function ICustomTest_Results() As BetterArray
ICustomTest_PrintResults #
Bridge interface PrintResults to public member
Signature:
Private Sub ICustomTest_PrintResults(Optional ByVal outputSheetName As String = vbNullString)
ICustomTest_AreEqual #
Bridge interface AreEqual to public member
Signature:
Private Sub ICustomTest_AreEqual(expected As Variant, _
actual As Variant, _
ByVal message As String)
ICustomTest_AreNotEqual #
Bridge interface AreNotEqual to public member
Signature:
Private Sub ICustomTest_AreNotEqual(expected As Variant, _
actual As Variant, _
ByVal message As String)
ICustomTest_IsTrue #
Bridge interface IsTrue to public member
Signature:
Private Sub ICustomTest_IsTrue(ByVal condition As Boolean, _
ByVal message As String)
ICustomTest_IsFalse #
Bridge interface IsFalse to public member
Signature:
Private Sub ICustomTest_IsFalse(ByVal condition As Boolean, _
ByVal message As String)
ICustomTest_ObjectExists #
Bridge interface ObjectExists to public member
Signature:
Private Sub ICustomTest_ObjectExists(ByVal instance As Object, _
ByVal expectedTypeName As String, _
ByVal message As String)
ICustomTest_IsNothing #
Bridge interface IsNothing to helper member
Signature:
Private Sub ICustomTest_IsNothing(ByVal instance As Object, ByVal message As String)
ICustomTest_IsNotNothing #
Bridge interface IsNotNothing to public member
Signature:
Private Sub ICustomTest_IsNotNothing(ByVal instance As Object, ByVal message As String)
ICustomTest_LogFailure #
Bridge interface LogFailure to public member
Signature:
Private Sub ICustomTest_LogFailure(ByVal message As String)
ICustomTest_Fail #
Bridge interface for Fail, same as Logfailure, for compatibility purposes
Signature:
Private Sub ICustomTest_Fail(ByVal message As String)
ICustomTest_LogSuccesses #
Bridge interface LogSuccesses to public member
Signature:
Private Sub ICustomTest_LogSuccesses(ByVal message As String)
Public members
IsNothing #
Validate that an object reference is Nothing
Signature:
Private Sub IsNothing(ByVal instance As Object, ByVal message As String)
Parameters:
instance: Object reference to validatemessage: Message describing the assertion context
IsNotNothing #
Validate that an object is not Nothing
Signature:
Private Sub IsNotNothing(ByVal instance As Object, ByVal message As String)
Parameters:
instance: Object reference to validatemessage: Message describing the assertion context
Internal helpers
InitialiseCurrentChecking #
Instantiate a fresh checking object for the active test
Signature:
Private Sub InitialiseCurrentChecking()
EnsureCurrentChecking #
Lazily initialise the current checking container
Signature:
Private Sub EnsureCurrentChecking()
ClearCurrentChecking #
Drop the current checking reference and optionally reset names
Signature:
Private Sub ClearCurrentChecking(Optional ByVal resetNames As Boolean = True)
Parameters:
resetNames: When True also reset pending titles to defaults
PersistActiveChecking #
Store the active checking into the results buffer when it has entries
Signature:
Private Sub PersistActiveChecking(Optional ByVal resetNames As Boolean = False)
EnsureResults #
Create the BetterArray container when missing and return it
Signature:
Private Function EnsureResults() As BetterArray
Returns: BetterArray used to hold persisted checkings
LogEntry #
Append a formatted assertion outcome to the current checking
Signature:
Private Sub LogEntry(ByVal message As String, ByVal scope As Byte)
Parameters:
message: Text describing the resultscope: Checking scope (success, error, ...)
FormatSuccessMessage #
Build the message stored when an assertion succeeds
Signature:
Private Function FormatSuccessMessage(ByVal mess As String) As String
Parameters:
mess: Optional message provided by the caller
Returns: Formatted message prefixed with Success
BuildFailureMessage #
Build the failure message including expected and actual values
Signature:
Private Function BuildFailureMessage(ByVal message As String, _
expected As Variant, _
actual As Variant) As String
Parameters:
message: Assertion context supplied by callerexpected: Expected valueactual: Actual value
Returns: Failure message containing expected/actual details
ResolveTitle #
Normalise names used for modules and tests
Signature:
Private Function ResolveTitle(ByVal val As String) As String
Parameters:
val: Candidate name to store
Returns: Sanitised name or default label
ResolveFailurePrefix #
Normalize assertion failure prefix text
Signature:
Private Function ResolveFailurePrefix(ByVal mess As String) As String
Parameters:
mess: Optional message provided by the caller
Returns: Prefix used for failure messages
ResolveSheetName #
Normalise worksheet names used for output
Signature:
Private Function ResolveSheetName(ByVal shName As String) As String
Parameters:
shName: Optional sheet name override
Returns: Validated sheet name or default output sheet
PrintOutputWorksheet #
Retrieve or create the worksheet that receives test output
Signature:
Private Function PrintOutputWorksheet(ByVal targetWorkbook As workbook, _
ByVal sheetName As String) As Worksheet
Parameters:
targetWorkbook: Workbook where results will be printedsheetName: Worksheet name to resolve
Returns: Worksheet ready for output
VariantsAreEqual #
Compare two Variant values using tolerant rules
Signature:
Private Function VariantsAreEqual(leftValue As Variant, _
rightValue As Variant) As Boolean
Parameters:
leftValue: First value to comparerightValue: Second value to compare
Returns: True when the values are equal
VariantToString #
Convert a Variant into a readable String representation
Signature:
Private Function VariantToString(value As Variant) As String
Parameters:
value: Variant to convert
Returns: String representation of the value
RaiseError #
Wrap Err.Raise to keep consistent error source
Signature:
Private Sub RaiseError(ByVal errorCode As ProjectError, ByVal description As String)
Parameters:
errorCode: Project error identifierdescription: Message supplied to Err.Raise
Used in (74 file(s))
- CustomTest.cls
- ICustomTest.cls
- TestAnalysis.bas
- TestAnalysisOutput.bas
- TestAnaTabIds.bas
- TestCrossTable.bas
- TestCrossTableFormula.bas
- TestTableSpecs.bas
- TestExportButton.bas
- TestLLExporter.bas
- TestLLImporter.bas
- TestDesignerImportService.bas
- TestDesignerMulti.bas
- TestDesignerRibbon.bas
- TestDevelopment.bas
- TestLLdictionary.bas
- TestLLExport.bas
- TestLLSheets.bas
- TestLLSheetsExtra.bas
- TestLLVariables.bas
- TestLLVariablesExtra.bas
- TestCaseWhen.bas
- TestChoiceFormula.bas
- TestFormulaCondition.bas
- TestFormulaData.bas
- TestFormulas.bas
- TestValueOfFormula.bas
- TestApplicationState.bas
- TestButtons.bas
- TestCustomTable.bas
- TestCustomTest.bas
- TestDataSheet.bas
- TestDropdownLists.bas
- TestHiddenNames.bas
- TestLLChoices.bas
- TestLLFormat.bas
- TestManualOSFiles.bas
- TestOSFiles.bas
- TestPasswords.bas
- TestProgressBar.bas
- TestTemporaryRepos.bas
- TestTranslationObject.bas
- TestLLGeo.bas
- TestLLSpatial.bas
- TestSpatialTables.bas
- TestGraphSpecs.bas
- TestHelpers.bas
- TestCodeTransfer.bas
- TestLinelist.bas
- TestListBuilder.bas
- TestLLTranslation.bas
- TestDiseaseApplicationState.bas
- TestDiseaseExporter.bas
- TestDiseaseExportWorkbook.bas
- TestDiseaseImporter.bas
- TestDiseaseIntegration.bas
- TestDiseaseLogger.bas
- TestDiseaseReportManager.bas
- TestDiseaseSheet.bas
- TestDiseaseTranslationCache.bas
- TestDiseaseWorksheetManager.bas
- TestEventMasterSetup.bas
- TestMasterSetupPreparation.bas
- TestMasterSetupVariables.bas
- TestSectionBuilder.bas
- TestVarWriter.bas
- TestEventSetup.bas
- TestSetupErrors.bas
- TestSetupImportService.bas
- TestSetupPreparation.bas
- TestSetupTranslationsTable.bas
- TestUpdatedValues.bas
- TestShowHideManager.bas
- TestCustomPivotTable.bas