Index: vhUnitTest/Tools/Mock/TestMock.cls.xml =================================================================== diff -u -r1444 -r1805 --- vhUnitTest/Tools/Mock/TestMock.cls.xml (.../TestMock.cls.xml) (revision 1444) +++ vhUnitTest/Tools/Mock/TestMock.cls.xml (.../TestMock.cls.xml) (revision 1805) @@ -18,150 +18,150 @@ - - %String ", E.Name ) - } + Do ..MockVoorbeeld.IndienMethodCall("DataTypeParameterDataTypeReturn", "A" ).DanReturn( "1" ) + Do ..MockVoorbeeld.IndienMethodCall("DataTypeParameterDataTypeReturn", "B" ).DanReturn( "2" ) + + // Test ok indien juiste param + Do $$$AssertEquals( "1", ..MockVoorbeeld.DataTypeParameterDataTypeReturn("A") ) + Do $$$AssertEquals( "2", ..MockVoorbeeld.DataTypeParameterDataTypeReturn("B") ) + + // Test nogmaals ok indien juiste param + Do $$$AssertEquals( "1", ..MockVoorbeeld.DataTypeParameterDataTypeReturn("A") ) + Do $$$AssertEquals( "2", ..MockVoorbeeld.DataTypeParameterDataTypeReturn("B") ) + + // Test exc indien verkeerde param + try { + Do ..MockVoorbeeld.DataTypeParameterDataTypeReturn("C") + Do $$$AssertFalse(1, "Exception verwacht") + } catch E { + #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() + Do $$$AssertContains( Exception.ToString(), "is niet voorzien door 'vhUnitTest.Tools.Mock.MockVoorbeeld'" ) + } + + // Test exc indien verkeerde aantal params + try { + Do ..MockVoorbeeld.DataTypeParameterDataTypeReturn() + Do $$$AssertFalse(1, "Exception verwacht") + } catch E { + Do $$$AssertEquals( "", E.Name ) + } ]]> ", E.Name ) - } + Set ObjectA = ##class(%ListOfObjects).%New() + Set ObjectB = ##class(%ListOfObjects).%New() + + Do ..MockVoorbeeld.IndienMethodCall("ObjectParameterDataTypeReturn", ObjectA ).DanReturn( "1" ) + Do ..MockVoorbeeld.IndienMethodCall("ObjectParameterDataTypeReturn", ObjectB ).DanReturn( "2" ) + + // Test ok indien juiste param + Do $$$AssertEquals( "1", ..MockVoorbeeld.ObjectParameterDataTypeReturn( ObjectA ) ) + Do $$$AssertEquals( "2", ..MockVoorbeeld.ObjectParameterDataTypeReturn( ObjectB ) ) + + // Test nogmaals ok indien juiste param + Do $$$AssertEquals( "1", ..MockVoorbeeld.ObjectParameterDataTypeReturn( ObjectA ) ) + Do $$$AssertEquals( "2", ..MockVoorbeeld.ObjectParameterDataTypeReturn( ObjectB ) ) + + // Test exc indien verkeerde param + try { + Do ..MockVoorbeeld.DataTypeParameterDataTypeReturn("C") + Do $$$AssertFalse(1, "Exception verwacht") + } catch E { + #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() + Do $$$AssertContains( Exception.ToString(), "is niet voorzien door 'vhUnitTest.Tools.Mock.MockVoorbeeld'" ) + } + + // Test exc indien verkeerde aantal params + try { + Do ..MockVoorbeeld.DataTypeParameterDataTypeReturn() + Do $$$AssertFalse(1, "Exception verwacht") + } catch E { + Do $$$AssertEquals( "", E.Name ) + } ]]> ", E.Name ) - } + Set ObjectA = ##class(%ListOfObjects).%New() + Set ObjectB = ##class(%ListOfObjects).%New() + + Do ..MockVoorbeeld.IndienMethodCall("TweeParametersDataTypeReturn", ObjectA, 1 ).DanReturn( "1" ) + Do ..MockVoorbeeld.IndienMethodCall("TweeParametersDataTypeReturn", 2, ObjectB ).DanReturn( "2" ) + + // Test ok indien juiste param + Do $$$AssertEquals( "1", ..MockVoorbeeld.TweeParametersDataTypeReturn( ObjectA, 1 ) ) + Do $$$AssertEquals( "2", ..MockVoorbeeld.TweeParametersDataTypeReturn( 2, ObjectB ) ) + + // Test nogmaals ok indien juiste param + Do $$$AssertEquals( "1", ..MockVoorbeeld.TweeParametersDataTypeReturn( ObjectA, 1 ) ) + Do $$$AssertEquals( "2", ..MockVoorbeeld.TweeParametersDataTypeReturn( 2, ObjectB ) ) + + // Test exc indien verkeerde param + try { + Do ..MockVoorbeeld.TweeParametersDataTypeReturn( ObjectA, ObjectB ) + Do $$$AssertFalse(1, "Exception verwacht") + } catch E { + #dim Exception As TECH.Exceptions.Exception = ##class(TECH.ExceptionHandler).Catch() + Do $$$AssertContains( Exception.ToString(), "is niet voorzien door 'vhUnitTest.Tools.Mock.MockVoorbeeld'" ) + } + + try { + Do ..MockVoorbeeld.TweeParametersDataTypeReturn( 2, 1 ) + Do $$$AssertFalse(1, "Exception verwacht") + } catch E { + Set Exception = ##class(TECH.ExceptionHandler).Catch() + Do $$$AssertContains( Exception.ToString(), "is niet voorzien door 'vhUnitTest.Tools.Mock.MockVoorbeeld'" ) + } + + // Test exc indien verkeerde aantal params + try { + Do ..MockVoorbeeld.TweeParametersDataTypeReturn( 2 ) + Do $$$AssertFalse(1, "Exception verwacht") + } catch E { + Do $$$AssertEquals( "", E.Name ) + } ]]>