def METHOD_NAME(make_stubber, error_code):
    stepfunctions_client = boto3.client('stepfunctions')
    stepfunctions_stubber = make_stubber(stepfunctions_client)
    state_machine = StepFunctionsStateMachine(stepfunctions_client)
    state_machine.state_machine_arn = 'test-state_machine_arn'
    name = 'test-name'
    definition = 'test-definition'
    role_arn = 'test-role_arn'
    stepfunctions_stubber.stub_describe_state_machine(
        state_machine.state_machine_arn, name, definition, 'ACTIVE', role_arn,
        error_code=error_code)
    if error_code is None:
        got_response = state_machine.describe()
        assert got_response['name'] == name
        assert got_response['definition'] == definition
        assert got_response['roleArn'] == role_arn
        assert got_response['stateMachineArn'] == state_machine.state_machine_arn
    else:
        with pytest.raises(ClientError) as exc_info:
            state_machine.describe()
        assert exc_info.value.response['Error']['Code'] == error_code