var docData = {"isSingleFile":false,"name":"test","description":"","modules":[{"id":"test","summary":"\u003cp\u003eThis module facilitates developers to write automation tests for ballerina code in a simple manner. It provides a number of capabilities such as configuring setup and cleanup steps in different levels, ordering and grouping of tests, providing value-sets to tests and independence from external functions and endpoints via mocking capabilities.\u003c/p\u003e\n","description":"\u003ch2\u003eModule overview\u003c/h2\u003e\n\u003cp\u003eThis module facilitates developers to write automation tests for ballerina code in a simple manner. It provides a number of capabilities such as configuring setup and cleanup steps in different levels, ordering and grouping of tests, providing value-sets to tests and independence from external functions and endpoints via mocking capabilities.\u003c/p\u003e\n\u003ch2\u003eAnnotations\u003c/h2\u003e\n\u003cp\u003eA ballerina testsuite can be implemented using a set of annotations. The available annotations enable executing instructions before and after the testsuite or a single test, organize a set of tests into a group, define data-driven tests, specify an order of execution, disable tests and mocking.\u003c/p\u003e\n\u003cp\u003eThe following example shows a simple testsuite.\u003c/p\u003e\n\u003cpre\u003e\u003ccode class\u003d\"language-ballerina\"\u003eimport ballerina/io;\nimport ballerina/test;\n\n// Before Suite Function\n@test:BeforeSuite\nfunction beforeSuiteFunc() {\n    io:println(\u0026quot;I\u0027m the before suite function!\u0026quot;);\n}\n\n// Before test function\nfunction beforeFunc() {\n    io:println(\u0026quot;I\u0027m the before function!\u0026quot;);\n}\n\n// Test function\n@test:Config {\n    before: \u0026quot;beforeFunc\u0026quot;,\n    after: \u0026quot;afterFunc\u0026quot;\n}\nfunction testFunction() {\n    io:println(\u0026quot;I\u0027m in test function!\u0026quot;);\n    test:assertTrue(true, msg \u003d \u0026quot;Failed!\u0026quot;);\n}\n\n// After test function\nfunction afterFunc() {\n    io:println(\u0026quot;I\u0027m the after function!\u0026quot;);\n}\n\n// After Suite Function\n@test:AfterSuite {}\nfunction afterSuiteFunc() {\n    io:println(\u0026quot;I\u0027m the after suite function!\u0026quot;);\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThe following example shows how an individual test can be configured.\u003c/p\u003e\n\u003cpre\u003e\u003ccode class\u003d\"language-ballerina\"\u003e@test:Config{  \n    enable: false, // default is true\n    before: \u0026quot;init\u0026quot;,\n    after: \u0026quot;cleanup\u0026quot;,\n    dependsOn: [\u0026quot;test1\u0026quot;],\n    dataProvider:\u0026quot;dataGen\u0026quot;\n}\nfunction dataProviderTest (int value) returns error? {\n    test:assertEquals(value, 1, msg \u003d \u0026quot;value is not correct\u0026quot;);\n}\n\nfunction dataGen() returns (int[][]) {\n    return [[1]];\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eAssertions\u003c/h2\u003e\n\u003cp\u003eThis module provides a number of assertions in order to verify the expected behaviour of a piece of code.\nThese assertions can be used to decide if the test is passing or failing based on the condition.\u003c/p\u003e\n\u003cp\u003eFollowing sample shows how to use assertions in Testerina.\u003c/p\u003e\n\u003cpre\u003e\u003ccode class\u003d\"language-ballerina\"\u003e\nimport ballerina/test;\n\ntype Person object {\n     public string name \u003d \u0026quot;\u0026quot;;\n     public int age \u003d 0;\n     public Person? parent \u003d ();\n     private string email \u003d \u0026quot;default@abc.com\u0026quot;;\n     string address \u003d \u0026quot;No 20, Palm grove\u0026quot;;\n };\n\n@test:Config{}\nfunction testAssertIntEquals() {\n    int answer \u003d 0;\n    int a \u003d 5;\n    int b \u003d 3;\n    answer \u003d intAdd(a, b);\n    test:assertEquals(answer, 8, msg \u003d \u0026quot;int values not equal\u0026quot;);\n}\n\n@test:Config {}\nfunction testAssertNotEqualsString() {\n    string s1 \u003d \u0026quot;abc\u0026quot;;\n    string s2 \u003d \u0026quot;def\u0026quot;;\n    test:assertNotEquals(s1, s2, msg \u003d \u0026quot;string values are equal\u0026quot;);\n}\n\n@test:Config {}\nfunction testAssertExactEqualsObject() {\n    Person p1 \u003d new;\n    Person p2 \u003d p1;\n    test:assertExactEquals(p1, p2, msg \u003d \u0026quot;Objects are not exactly equal\u0026quot;);\n}\n\n@test:Config {}\nfunction testAssertNotExactEqualsObject() {\n    Person p1 \u003d new;\n    Person p2 \u003d new ();\n    test:assertNotExactEquals(p1, p2, msg \u003d \u0026quot;Objects are exactly equal\u0026quot;);\n}\n\n@test:Config {}\nfunction testAssertTrue() {\n    boolean value \u003d true;\n    test:assertTrue(value, msg \u003d \u0026quot;AssertTrue failed\u0026quot;);\n}\n\n@test:Config {}\nfunction testAssertFalse() {\n    boolean value \u003d false;\n    test:assertFalse(value, msg \u003d \u0026quot;AssertFalse failed\u0026quot;);\n}\n\n@test:Config {}\nfunction testAssertFail() {\n    if (true) {\n        return;\n    }\n    test:assertFail(msg \u003d \u0026quot;AssertFailed\u0026quot;);\n}\n\nfunction intAdd(int a, int b) returns (int) {\n    return (a + b);\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eMocking\u003c/h2\u003e\n\u003cp\u003eThe test module provides capabilities to mock a function or an object for unit testing. The mocking features can be used to control the behavior of functions and objects by defining return values or replacing the entire object or function with a user-defined equivalent. This feature will help you to test the Ballerina code independently from other modules and external endpoints.\u003c/p\u003e\n\u003ch3\u003eFunction Mocking\u003c/h3\u003e\n\u003cp\u003eFunction mocking allows to control the behavior of a function in the module being tested or a function of an imported module.\u003c/p\u003e\n\u003cp\u003eThe annotation \u003ccode\u003e@test:Mock {}\u003c/code\u003e is used to declare a \u003ccode\u003eMockFunction\u003c/code\u003e object, with details of the name of the function to be mocked, as well as the module name if an import function is being mocked. The module name value of the annotation is optional if the function being mocked is not an import function.\u003c/p\u003e\n\u003cpre\u003e\u003ccode class\u003d\"language-ballerina\"\u003eimport ballerina/math;\nimport ballerina/test;\n\n@test:Mock {\n    moduleName : \u0026quot;ballerina/math\u0026quot;,\n    functionName : \u0026quot;absInt\u0026quot;\n}\ntest:MockFunction mock_absInt \u003d new();\n\n@test:Config {}\npublic function testFunction() {\n    test:when(mock_absInt).thenReturn(100);\n    test:assertEquals(math:absInt(-5), 100);\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eDeclaring the annotation with this object will create a default mock object in place of the original function. Subsequent to the declaration, the function call should be stubbed using the available mocking features. Different behaviors can be defined for different test cases if required.\u003c/p\u003e\n\u003ch5\u003eSamples\u003c/h5\u003e\n\u003cp\u003e\u003cem\u003emain.bal\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode class\u003d\"language-ballerina\"\u003epublic function intAdd(int a, int b) returns (int) {\n    return a + b;\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003cem\u003etest.bal\u003c/em\u003e\u003c/p\u003e\n\u003cp\u003eThe following example shows different ways of stubbing a function call.\u003c/p\u003e\n\u003cpre\u003e\u003ccode class\u003d\"language-ballerina\"\u003e@test:Mock { functionName: \u0026quot;intAdd\u0026quot; }\ntest:MockFunction intAddMockFn \u003d new();\n\npublic function mockIntAdd(int x, int y) returns int {\n    return x - y;\n}\n\n@test:Config {}\npublic function testMockCall() {\n    // stubbing to invoke the created mock function\n    test:when(intAddMockFn).call(\u0026quot;mockIntAdd\u0026quot;);\n    test:assertEquals(intAdd(10, 6), 4);\n    \n    // stubbing to return the specified value\n    test:when(intAddMockFn).thenReturn(5);\n    test:assertEquals(intAdd(10, 4), 5);\n    \n    // stubbing to return a value based on input\n    test:when(intAddMockFn).withArguments(20, 14).thenReturn(100);\n    test:assertEquals(intAdd(20, 14), 100);\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eObject Mocking\u003c/h3\u003e\n\u003cp\u003eObject mocking enables controlling the values of member variables and the behavior of the member functions of an object. This is vital when working with client objects as the remote functions can be stubbed to return a mock value without having to actually make calls to the remote endpoint.\u003c/p\u003e\n\u003cp\u003eMocking of objects can be done in two ways.The available features provide the functionality to substitute the real object with a user-defined mock object or to stub the behavior of required functions.\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eCreating a test double (providing an equivalent object in place of the real)\u003c/li\u003e\n\u003cli\u003eStubbing the member function or member variable (specifying the behavior of functions and values of variables)\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eCreating a test double is suitable when a single mock function/object can be used throughout all tests whereas stubbing is ideal when defining different behaviors for different test cases is required.\u003c/p\u003e\n\u003ch4\u003eCreating a test double\u003c/h4\u003e\n\u003cp\u003eA custom mock object can be defined in place of the real object which should contain the member variables and functions that need to be replaced. The custom object should be made structurally equivalent to the real object via the mocking features in the test module. A runtime exception will be thrown if any of the defined functions or variables is not equivalent to the counterpart of the original object.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003emain.bal\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode class\u003d\"language-ballerina\"\u003ehttp:Client clientEndpoint \u003d new(\u0026quot;http://petstore.com\u0026quot;);\n\nfunction getPet(string petId) returns Pet | error {\n  http:Response|error result \u003d clientEndpoint-\u0026gt;get(\u0026quot;/pets?id\u003d\u0026quot;+petId);\n  if(result is error) {\n    return result;\n  } else {\n      Pet pet \u003d constructPetObj(result); \n    return pet;\n  }\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e\u003cem\u003etest.bal\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode class\u003d\"language-ballerina\"\u003e// Mock object definition for http:Client object\npublic type MockHttpClient client object {\n    public remote function get(@untainted string path, public \n        http:RequestMessage message \u003d ()) returns http:Response|http:ClientError {\n        http:Response res \u003d new;\n        res.statusCode \u003d 500;\n        return res;\n    }\n};\n\n@test:Config {}\nfunction testGetPet() {\n    //mock object that would act as the test double to the clientEndpoint\n    clientEndpoint \u003d \u0026lt;http:Client\u0026gt;mock(http:Client, new MockHttpClient());\n    http:Response res \u003d getPet(\u0026quot;D123\u0026quot;);\n    test:assertEquals(res.statusCode, 500);\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch4\u003eStubbing member functions and variables of an object\u003c/h4\u003e\n\u003cp\u003eThe member functions and variables are stubbed to return a specific value or to do nothing when invoked. Using the test module, a default mock object of the specified type. The default action of any member function/variable is to panic upon invocation/retrieval.  Subsequent to mock object creation, the required functions and variables of the default mock object should be stubbed to return a value or to do nothing when called.\u003c/p\u003e\n\u003ch5\u003eSamples\u003c/h5\u003e\n\u003cp\u003eExample\u003c/p\u003e\n\u003cp\u003eFollowing example shows different ways of stubbing an object member functions.\u003c/p\u003e\n\u003cpre\u003e\u003ccode class\u003d\"language-ballerina\"\u003e\n@test:Config {}\nfunction testGetPet2() {\n    clientEndpoint \u003d \u0026lt;http:Client\u0026gt;mock(http:Client);\n\n    // stubbing to return the specified value \n    test:prepare(clientEndpoint).when(“get”).thenReturn(new http:Response());\n    \n    // stubbing to return different values for each function call \n    test:prepare(mockHttpClient).when(\u0026quot;get\u0026quot;)\n        .thenReturnSequence(new http:Response(), mockResponse);\n    \n    // stubbing to return a value based on input\n    test:prepare(mockHttpClient).when(\u0026quot;get\u0026quot;).withArguments(\u0026quot;/pets?id\u003dD123\u0026quot;, test:ANY)\n        .thenReturn(mockResponse);\n    \n    // stubbing to do nothing when function is called\n    smtpClient\u003d\u0026lt;email:SmtpClient\u0026gt;mock(email:SmtpClient);\n    test:prepare(mockSmtpCl).when(“send”).doNothing();\n\n    // add assertions\n}\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThe following example shows how to return a value when a member variable is accessed\u003c/p\u003e\n\u003cpre\u003e\u003ccode class\u003d\"language-ballerina\"\u003e@test:Config {}\nfunction testMemberVariable() {\n  clientEndpoint \u003d \u0026lt;http:Client\u0026gt;test:mock(http:Client);\n  test:prepare(clientEndpoint).getMember(\u0026quot;url\u0026quot;).thenReturn(\u0026quot;https://foo.com/\u0026quot;);\n  test:assertEquals(clientEndpoint.url, \u0026quot;https://foo.com/\u0026quot;);\n}\n\u003c/code\u003e\u003c/pre\u003e\n","orgName":"ballerina","version":"0.0.0","records":[{"fields":[{"defaultValue":"true","type":{"name":"boolean","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"enable","description":"\u003cp\u003eFlag to enable/disable test functions\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"[]","type":{"isAnonymousUnionType":false,"isArrayType":true,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":1,"elementType":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}},"name":"groups","description":"\u003cp\u003eList of groups that this test function belongs to\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"\"\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"dataProvider","description":"\u003cp\u003eName of the function which will be used to feed data into this test\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"\"\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"before","description":"\u003cp\u003eName of the function to be run before the test is run\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"\"\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"after","description":"\u003cp\u003eName of the function to be run after the test is run\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"[]","type":{"isAnonymousUnionType":false,"isArrayType":true,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":1,"elementType":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}},"name":"dependsOn","description":"\u003cp\u003eA list of function names the test function depends on, and will be run before the test\u003c/p\u003e\n","isDeprecated":false}],"isClosed":false,"name":"TestConfig","description":"\u003cp\u003eConfiguration set for test functions.\u003c/p\u003e\n","isDeprecated":false},{"fields":[{"defaultValue":"\".\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"moduleName","description":"\u003cp\u003eName of the module of the function to be mocked\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"\"\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"functionName","description":"\u003cp\u003eName of the function to be mocked\u003c/p\u003e\n","isDeprecated":false}],"isClosed":false,"name":"MockConfig","description":"\u003cp\u003eConfiguration of the function to be mocked.\u003c/p\u003e\n","isDeprecated":false},{"fields":[{"defaultValue":"false","type":{"name":"boolean","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"alwaysRun","description":"","isDeprecated":false}],"isClosed":false,"name":"AfterSuiteConfig","description":"","isDeprecated":false},{"fields":[{"defaultValue":"[]","type":{"isAnonymousUnionType":false,"isArrayType":true,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":1,"elementType":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}},"name":"value","description":"","isDeprecated":false}],"isClosed":false,"name":"BeforeGroupsConfig","description":"","isDeprecated":false},{"fields":[{"defaultValue":"[]","type":{"isAnonymousUnionType":false,"isArrayType":true,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":1,"elementType":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}},"name":"value","description":"","isDeprecated":false}],"isClosed":false,"name":"AfterGroupsConfig","description":"","isDeprecated":false}],"classes":[{"fields":[],"methods":[{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"object{} ","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockObject","description":"\u003cp\u003eobject to register stubbing\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"init","description":"\u003cp\u003eGets invoked during the mock object preparation.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"functionName","description":"\u003cp\u003efunction name to allow stubbing\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MemberFunctionStub","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003eobject that allows stubbing calls to provided member function\u003c/p\u003e\n","isDeprecated":false}],"name":"when","description":"\u003cp\u003eAllows a member function to stub.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"fieldName","description":"\u003cp\u003efield name to allow stubbing\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MemberVariableStub","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003eobject that allows stubbing retrieval of provided member variable\u003c/p\u003e\n","isDeprecated":false}],"name":"getMember","description":"\u003cp\u003eAllows a member variable to stub\u003c/p\u003e\n","isDeprecated":false}],"initMethod":{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"object{} ","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockObject","description":"\u003cp\u003eobject to register stubbing\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"init","description":"\u003cp\u003eGets invoked during the mock object preparation.\u003c/p\u003e\n","isDeprecated":false},"otherMethods":[{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"functionName","description":"\u003cp\u003efunction name to allow stubbing\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MemberFunctionStub","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003eobject that allows stubbing calls to provided member function\u003c/p\u003e\n","isDeprecated":false}],"name":"when","description":"\u003cp\u003eAllows a member function to stub.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"fieldName","description":"\u003cp\u003efield name to allow stubbing\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MemberVariableStub","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003eobject that allows stubbing retrieval of provided member variable\u003c/p\u003e\n","isDeprecated":false}],"name":"getMember","description":"\u003cp\u003eAllows a member variable to stub\u003c/p\u003e\n","isDeprecated":false}],"name":"MockObject","description":"\u003cp\u003eRepresents a Mock object in which to create stubs for member functions and variables\u003c/p\u003e\n","isDeprecated":false},{"fields":[],"methods":[{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"object{} ","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockObject","description":"\u003cp\u003eobject to register\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"init","description":"\u003cp\u003eGets invoked during the stub registration.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"args","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":true,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0,"elementType":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"anydata","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0}},"name":"args","description":"\u003cp\u003earguments list\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MemberFunctionStub","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003eobject that allows stubbing calls to provided member function\u003c/p\u003e\n","isDeprecated":false}],"name":"withArguments","description":"\u003cp\u003eSets the arguments list to consider when stubbing the function call.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"returnValue","description":"\u003cp\u003evalue or error to return\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"thenReturn","description":"\u003cp\u003eSets the value to be returned when the function is called.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"returnValues","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":true,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0,"elementType":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0}},"name":"returnValues","description":"\u003cp\u003evalue or error to return\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"thenReturnSequence","description":"\u003cp\u003eSets the values to be returned when the function is called repeatedly.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[],"returnParameters":[],"name":"doNothing","description":"\u003cp\u003eSets the function behavior to do nothing when called.\u003c/p\u003e\n","isDeprecated":false}],"initMethod":{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"object{} ","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockObject","description":"\u003cp\u003eobject to register\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"init","description":"\u003cp\u003eGets invoked during the stub registration.\u003c/p\u003e\n","isDeprecated":false},"otherMethods":[{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"args","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":true,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0,"elementType":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"anydata","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0}},"name":"args","description":"\u003cp\u003earguments list\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MemberFunctionStub","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003eobject that allows stubbing calls to provided member function\u003c/p\u003e\n","isDeprecated":false}],"name":"withArguments","description":"\u003cp\u003eSets the arguments list to consider when stubbing the function call.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"returnValue","description":"\u003cp\u003evalue or error to return\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"thenReturn","description":"\u003cp\u003eSets the value to be returned when the function is called.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"returnValues","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":true,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0,"elementType":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0}},"name":"returnValues","description":"\u003cp\u003evalue or error to return\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"thenReturnSequence","description":"\u003cp\u003eSets the values to be returned when the function is called repeatedly.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[],"returnParameters":[],"name":"doNothing","description":"\u003cp\u003eSets the function behavior to do nothing when called.\u003c/p\u003e\n","isDeprecated":false}],"name":"MemberFunctionStub","description":"\u003cp\u003eRepresents an object that allows stubbing member function invocations.\u003c/p\u003e\n","isDeprecated":false},{"fields":[],"methods":[{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"object{} ","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockObject","description":"\u003cp\u003eobject to register\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"init","description":"\u003cp\u003eGets invoked during the stub registration\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"returnValue","description":"\u003cp\u003evalue or error to return\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"thenReturn","description":"\u003cp\u003eSets the value to be returned when the function is called.\u003c/p\u003e\n","isDeprecated":false}],"initMethod":{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"object{} ","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockObject","description":"\u003cp\u003eobject to register\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"init","description":"\u003cp\u003eGets invoked during the stub registration\u003c/p\u003e\n","isDeprecated":false},"otherMethods":[{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"returnValue","description":"\u003cp\u003evalue or error to return\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"thenReturn","description":"\u003cp\u003eSets the value to be returned when the function is called.\u003c/p\u003e\n","isDeprecated":false}],"name":"MemberVariableStub","description":"\u003cp\u003eRepresents an object that allows stubbing member variables retrieved.\u003c/p\u003e\n","isDeprecated":false},{"fields":[],"methods":[],"otherMethods":[],"name":"MockFunction","description":"\u003cp\u003eRepresents a MockFunction object\u003c/p\u003e\n","isDeprecated":false},{"fields":[],"methods":[{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MockFunction","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockFunction","description":"","isDeprecated":false}],"returnParameters":[],"name":"init","description":"\u003cp\u003eGets invoked during the stub registration\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"returnValue","description":"\u003cp\u003evalue or error to return\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"thenReturn","description":"\u003cp\u003eSets the value to be returned when the function is called.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"args","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":true,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0,"elementType":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"anydata","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0}},"name":"args","description":"\u003cp\u003earguments list\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"FunctionStub","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003eobject that allows stubbing calls to a function\u003c/p\u003e\n","isDeprecated":false}],"name":"withArguments","description":"\u003cp\u003eSets the arguments list to consider when stubbing the function call.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[],"returnParameters":[],"name":"doNothing","description":"\u003cp\u003eSets the function behavior to do nothing when called\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"functionName","description":"\u003cp\u003emock function to call in place of the real\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"call","description":"\u003cp\u003eSets a function to be invoked when the real function is called.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[],"returnParameters":[],"name":"callOriginal","description":"\u003cp\u003eSets the original function to be invoked.\u003c/p\u003e\n","isDeprecated":false}],"initMethod":{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MockFunction","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockFunction","description":"","isDeprecated":false}],"returnParameters":[],"name":"init","description":"\u003cp\u003eGets invoked during the stub registration\u003c/p\u003e\n","isDeprecated":false},"otherMethods":[{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"returnValue","description":"\u003cp\u003evalue or error to return\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"thenReturn","description":"\u003cp\u003eSets the value to be returned when the function is called.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"args","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":true,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0,"elementType":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"anydata","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0}},"name":"args","description":"\u003cp\u003earguments list\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"FunctionStub","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003eobject that allows stubbing calls to a function\u003c/p\u003e\n","isDeprecated":false}],"name":"withArguments","description":"\u003cp\u003eSets the arguments list to consider when stubbing the function call.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[],"returnParameters":[],"name":"doNothing","description":"\u003cp\u003eSets the function behavior to do nothing when called\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"functionName","description":"\u003cp\u003emock function to call in place of the real\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"call","description":"\u003cp\u003eSets a function to be invoked when the real function is called.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[],"returnParameters":[],"name":"callOriginal","description":"\u003cp\u003eSets the original function to be invoked.\u003c/p\u003e\n","isDeprecated":false}],"name":"FunctionStub","description":"\u003cp\u003eRepresents an object that allows stubbing function invocations\u003c/p\u003e\n","isDeprecated":false}],"abstractObjects":[],"clients":[],"listeners":[],"functions":[{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"object {} ","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockObject","description":"\u003cp\u003ecreated default mock object\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MockObject","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003eprepared object that allows a member function/field to register stubs\u003c/p\u003e\n","isDeprecated":false}],"name":"prepare","description":"\u003cp\u003ePrepares a provided default mock object for stubbing.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MockFunction","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockFunction","description":"\u003cp\u003efunction name to allow stubbing\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"FunctionStub","category":"classes","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003eobject that allows stubbing calls to provided function\u003c/p\u003e\n","isDeprecated":false}],"name":"when","description":"\u003cp\u003eObjects and functions related to function mocking\nAllows a function to stub.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":true,"parameters":[{"defaultValue":"","type":{"category":"UNKNOWN","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"T","description":"\u003cp\u003etype of object to create the mock\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"object { }","type":{"name":"object{} ","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockObject","description":"\u003cp\u003emock object to replace the original (optional)\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"name":"T","category":"reference","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003ecreated mock object or throw an error if validation failed\u003c/p\u003e\n","isDeprecated":false}],"name":"mock","description":"\u003cp\u003eCreates and returns a mock object of provided type description.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":true,"parameters":[{"defaultValue":"","type":{"name":"MockFunction","category":"reference","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"mockFunction","description":"\u003cp\u003emockFunction object\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"","type":{"name":"args","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":true,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0,"elementType":{"isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":true,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0,"elementType":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0}}},"name":"args","description":"\u003cp\u003efunction arguments\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"Error","category":"reference","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003efunction return value or error if case registration failed\u003c/p\u003e\n","isDeprecated":false}],"name":"mockHandler","description":"\u003cp\u003eInter-op to handle function mocking.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"errorMessage","description":"\u003cp\u003eCustom message for the ballerina error\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"category","description":"\u003cp\u003eerror category\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[{"type":{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"","description":"\u003cp\u003ean AssertError with custom message and category\u003c/p\u003e\n","isDeprecated":false}],"name":"createBallerinaError","description":"\u003cp\u003eCreates an AssertError with custom message and category.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"boolean","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"condition","description":"\u003cp\u003eBoolean condition to evaluate\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"\"Assertion Failed!\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"msg","description":"\u003cp\u003eAssertion error message\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"assertTrue","description":"\u003cp\u003eAsserts whether the given condition is true. If it is not, a AssertError is thrown with the given errorMessage.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"name":"boolean","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"condition","description":"\u003cp\u003eBoolean condition to evaluate\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"\"Assertion Failed!\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"msg","description":"\u003cp\u003eAssertion error message\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"assertFalse","description":"\u003cp\u003eAsserts whether the given condition is false. If it is not, a AssertError is thrown with the given errorMessage.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"anydata","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"actual","description":"\u003cp\u003eActual value\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"anydata","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"expected","description":"\u003cp\u003eExpected value\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"\"Assertion Failed!\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"msg","description":"\u003cp\u003eAssertion error message\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"assertEquals","description":"\u003cp\u003eAsserts whether the given values are equal. If it is not, an AssertError is thrown with the given errorMessage.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"anydata","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"actual","description":"\u003cp\u003eActual value\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"anydata","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"expected","description":"\u003cp\u003eExpected value\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"\"Assertion Failed!\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"msg","description":"\u003cp\u003eAssertion error message\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"assertNotEquals","description":"\u003cp\u003eAsserts whether the given values are not equal. If it is equal, an AssertError is thrown with the given errorMessage.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"actual","description":"\u003cp\u003eActual value\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"expected","description":"\u003cp\u003eExpected value\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"\"Assertion Failed!\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"msg","description":"\u003cp\u003eAssertion error message\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"assertExactEquals","description":"\u003cp\u003eAsserts whether the given values are exactly equal. If it is not, an AssertError is thrown with the given errorMessage.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"actual","description":"\u003cp\u003eActual value\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"","type":{"isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"name":"any","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"name":"error","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0},"name":"expected","description":"\u003cp\u003eExpected value\u003c/p\u003e\n","isDeprecated":false},{"defaultValue":"\"Assertion Failed!\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"msg","description":"\u003cp\u003eAssertion error message\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"assertNotExactEquals","description":"\u003cp\u003eAsserts whether the given values are not exactly equal. If it is equal, an AssertError is thrown with the given errorMessage.\u003c/p\u003e\n","isDeprecated":false},{"isIsolated":true,"isRemote":false,"isExtern":false,"parameters":[{"defaultValue":"\"Test Failed!\"","type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"name":"msg","description":"\u003cp\u003eAssertion error message\u003c/p\u003e\n","isDeprecated":false}],"returnParameters":[],"name":"assertFail","description":"\u003cp\u003eAssert failure is triggered based on user discretion. AssertError is thrown with the given errorMessage.\u003c/p\u003e\n","isDeprecated":false}],"constants":[{"type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"value":"\"__ANY__\"","name":"ANY","description":"\u003cp\u003eRepresents the placeholder to be given for object or record type arguments\u003c/p\u003e\n","isDeprecated":false},{"type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"value":"\"InvalidObjectError\"","name":"INVALID_OBJECT_ERROR","description":"\u003cp\u003eRepresents the reason for the mock object related errors.\u003c/p\u003e\n","isDeprecated":false},{"type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"value":"\"FunctionNotFoundError\"","name":"FUNCTION_NOT_FOUND_ERROR","description":"\u003cp\u003eRepresents the reason for the non-existing member function related errors.\u003c/p\u003e\n","isDeprecated":false},{"type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"value":"\"FunctionSignatureMismatchError\"","name":"FUNCTION_SIGNATURE_MISMATCH_ERROR","description":"\u003cp\u003eRepresents the reason for the function signature related errors.\u003c/p\u003e\n","isDeprecated":false},{"type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"value":"\"InvalidMemberFieldError\"","name":"INVALID_MEMBER_FIELD_ERROR","description":"\u003cp\u003eRepresents the reason for the object member field related errors.\u003c/p\u003e\n","isDeprecated":false},{"type":{"name":"string","category":"builtin","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"value":"\"FunctionCallError\"","name":"FUNCTION_CALL_ERROR","description":"\u003cp\u003eRepresents the reason for function mocking related errors.\u003c/p\u003e\n","isDeprecated":false}],"annotations":[{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"TestConfig","category":"records","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"attachmentPoints":"function","name":"Config","description":"","isDeprecated":false},{"attachmentPoints":"function","name":"BeforeSuite","description":"\u003cp\u003eIdentifies beforeSuite function.\u003c/p\u003e\n","isDeprecated":false},{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"AfterSuiteConfig","category":"records","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"attachmentPoints":"function","name":"AfterSuite","description":"\u003cp\u003eIdentifies afterSuite function.\u003c/p\u003e\n","isDeprecated":false},{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"BeforeGroupsConfig","category":"records","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"attachmentPoints":"function","name":"BeforeGroups","description":"\u003cp\u003eIdentifies beforeGroup function.\u003c/p\u003e\n","isDeprecated":false},{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"AfterGroupsConfig","category":"records","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"attachmentPoints":"function","name":"AfterGroups","description":"\u003cp\u003eIdentifies afterGroup function.\u003c/p\u003e\n","isDeprecated":false},{"attachmentPoints":"function","name":"BeforeEach","description":"\u003cp\u003eIdentifies beforeTest function.\u003c/p\u003e\n","isDeprecated":false},{"attachmentPoints":"function","name":"AfterEach","description":"\u003cp\u003eIdentifies afterTest function.\u003c/p\u003e\n","isDeprecated":false},{"type":{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"MockConfig","category":"records","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},"attachmentPoints":"source var, function","name":"Mock","description":"\u003cp\u003eIdentifies the MockFunction object\u003c/p\u003e\n","isDeprecated":false}],"errors":[{"name":"InvalidObjectError","description":"","isDeprecated":false},{"name":"FunctionNotFoundError","description":"","isDeprecated":false},{"name":"FunctionSignatureMismatchError","description":"","isDeprecated":false},{"name":"InvalidMemberFieldError","description":"","isDeprecated":false},{"name":"FunctionCallError","description":"","isDeprecated":false}],"types":[{"name":"Error","description":"\u003cp\u003eRepresents mocking related errors\u003c/p\u003e\n","isAnonymousUnionType":true,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"InvalidObjectError","category":"errors","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"FunctionNotFoundError","category":"errors","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"FunctionSignatureMismatchError","category":"errors","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"InvalidMemberFieldError","category":"errors","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0},{"orgName":"ballerina","moduleName":"test","version":"0.0.0","name":"FunctionCallError","category":"errors","isAnonymousUnionType":false,"isArrayType":false,"isNullable":false,"isTuple":false,"isIntersectionType":false,"isParenthesisedType":false,"isRestParam":false,"isLambda":false,"isDeprecated":false,"generateUserDefinedTypeLink":true,"memberTypes":[],"paramTypes":[],"arrayDimensions":0}],"paramTypes":[],"arrayDimensions":0}]}]};