java.lang.Object
org.evomaster.client.java.controller.api.dto.problem.rpc.RPCActionDto

public class RPCActionDto extends Object
a dto to collect info of endpoints to be tested that is used by both core (for identifying action) and driver (for endpoint invocation) sides
  • Field Details

    • interfaceId

      public String interfaceId
      name of the RPC interface
    • clientInfo

      public String clientInfo
      name of the client
    • clientVariable

      public String clientVariable
      a variable referring to client instance this info would be used in static init declaration referring to an actual client instance in the generated test then later, the variable could be used to process rpc function call eg, the variable is foo public class Test{ private static Client foo; ... pubic void test(){ response = foo.bar(request) } } TODO Note that the current test generation is proceeded in the driver if we move it to core, this info could be removed
    • actionName

      public String actionName
      name of the action
    • mockRPCExternalServiceDtos

      public List<MockRPCExternalServiceDto> mockRPCExternalServiceDtos
      a list of actions for performing mocking external services
    • mockDatabaseDtos

      public List<MockDatabaseDto> mockDatabaseDtos
      a list of mock objects for database sql commands
    • requestParams

      public List<ParamDto> requestParams
      request params
    • responseParam

      public ParamDto responseParam
      response param (nullable)
    • isAuthorized

      public boolean isAuthorized
      if the action requires auth to access
    • requiredAuthCandidates

      public List<Integer> requiredAuthCandidates
      possible candidates for auth to access the endpoint
    • relatedCustomization

      public Set<String> relatedCustomization
      related candidates to customize values in request of this endpoint
    • authSetup

      public RPCActionDto authSetup
      an action to setup auth in this invocation
    • responseVariable

      public String responseVariable
      variable name of response
    • controllerVariable

      public String controllerVariable
      variable name of controller
    • doGenerateAssertions

      public boolean doGenerateAssertions
      if generate assertions on driver side and send back core
    • doGenerateTestScript

      public boolean doGenerateTestScript
      if generate test script on driver side and send back core
    • outputFormat

      public SutInfoDto.OutputFormat outputFormat
      the output format if doGenerateTestScript is true, outputFormat cannot be null Note that the info is kept in sync with what the user specifies in driver or EMConfig
    • maxAssertionForDataInCollection

      public int maxAssertionForDataInCollection
      the maximum number of assertions to be generated for data in collections zero or negative number means that assertions would be generated for all data in collection
    • missingDto

      public List<String> missingDto
      a list of DTOs which need to be extracted at the driver side they can be eg, response of external services
  • Constructor Details

    • RPCActionDto

      public RPCActionDto()
  • Method Details

    • copy

      public RPCActionDto copy()
      Returns:
      a copy of RPCActionDto for enabling its invocation eg, exclude all possible candidates of param values and auth
    • copyComplete

      public RPCActionDto copyComplete()
      Returns:
      a complete copy of RPCActionDto including its schema info, eg, possible auth candidates and pe-defined values in requests
    • descriptiveInfo

      public String descriptiveInfo()
      Returns:
      descriptive info for the action, ie, interface::actionName
    • mockObjectNeeded

      public boolean mockObjectNeeded()
      Returns:
      if the action needs mock object