Newer Version Available

This content describes an older version of this product. View Latest

testCanvasLifecycle(lifecycleHandler, mockRenderContext)

Calls the canvas test framework to invoke a CanvasLifecycleHandler with the provided RenderContext.

Signature

public static Void testCanvasLifecycle(Canvas.CanvasLifecycleHandler lifecycleHandler,Canvas.RenderContext mockRenderContext)

Parameters

lifecycleHandler
Type: Canvas.CanvasLifecycleHandler
Specifies the CanvasLifecycleHandler implementation that you need to invoke.
mockRenderContext
Type: Canvas.RenderContext
Specifies the RenderContext information that you need to provide to the invoked CanvasLifecycleHandler. If null is provided for this parameter, the canvas framework generates and uses a default mock RenderContext.

Return Value

Type: Void

Usage

Use this method to invoke an implementation of Canvas.CanvasLifecycleHandler.onRender(renderContext) with a mock Canvas.RenderContext that you provide.

Example

The following example creates maps to represent mock application and environment context data and generates a test Canvas.RenderContext. This test RenderContext is then used to invoke a Canvas.CanvasLifecycleHandler.

1// Set some application context data in a Map
2Map<String,String> appValues = new Map<String,String>();
3appValues.put(Canvas.Test.KEY_NAMESPACE,'alternateNamespace');
4appValues.put(Canvas.Test.KEY_VERSION,'3.0');
5
6// Set some environment context data in a MAp
7Map<String,String> envValues = new Map<String,String>();
8envValues.put(Canvas.Test.KEY_DISPLAY_LOCATION,'Chatter');
9envValues.put(Canvas.Test.KEY_LOCATION_URL,'https://MyDomainName.my.salesforce.com/_ui/core/chatter/ui/ChatterPage');
10
11// Create a mock RenderContext using the test application and environment context data Maps
12Canvas.RenderContext mock = Canvas.Test.mockRenderContext(appValues,envValues);
13
14// Set some custom params on the mock RenderContext
15mock.getEnvironmentContext().setParametersAsJSON('{\"param1\":1,\"boolParam\":true,\"stringParam\":\"test string\"}');
16
17// Use the mock RenderContext to invoke a CanvasLifecycleHandler
18Canvas.Test.testCanvasLifecycle(handler,mock)