pylero package — pylero documentation

# pylero package

## Subpackages

- pylero.cli package
  - Submodules
  - pylero.cli.cmd module
    - `CmdList`
      - `CmdList.list_documents_by_query()`
      - `CmdList.list_workitems_by_query()`
      - `CmdList.list_workitems_in_doc()`
      - `CmdList.print_documents()`
      - `CmdList.print_links_for_requirement()`
      - `CmdList.print_links_for_testcase()`
      - `CmdList.print_plan_ids()`
      - `CmdList.print_runs_by_query()`
      - `CmdList.print_steps_for_testcase()`
      - `CmdList.print_templates_by_query()`
      - `CmdList.print_testcases_from_run()`
      - `CmdList.print_workitems()`
    - `CmdUpdate`
      - `CmdUpdate.update_1_case_result_for_run()`
      - `CmdUpdate.update_all_case_results_for_run()`
      - `CmdUpdate.update_all_case_results_for_runs()`
      - `CmdUpdate.update_document()`
      - `CmdUpdate.update_run()`
      - `CmdUpdate.update_runs()`
  - Module contents

## Submodules

## pylero.activity module

class pylero.activity.Activity(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:Activity class

  activity_custom_values
    Type:

      list of ActivityCustomValueEntry

  comments
    Type:

      list of ActivityComment

  context_id
    Type:

      ContextId

  global_id
    Type:

      string

  activity_id
    Type:

      string

  info
    Type:

      Text

  prefix
    Type:

      string

  resource_locations
    Type:

      list

  source_id
    Type:

      string

  timestamp
    Type:

      dateTime

  type
    Type:

      string

  user_id
    Type:

      string

## pylero.activity_comment module

class pylero.activity_comment.ActivityComment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:ActivityComment class

  text
    Type:

      Text

  time_stamp
    Type:

      dateאime

  user_id
    Type:

      string

## pylero.activity_custom_value module

class pylero.activity_custom_value.ActivityCustomValue(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:ActivityCustomValue class

  values
    Type:

      ArrayOf_xsd_string

## pylero.activity_custom_value_entry module

class pylero.activity_custom_value_entry.ActivityCustomValueEntry(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:ActivityCustomValueEntry class

  custom_values
    Type:

      ActivityCustomValue

  key
    Type:

      string

## pylero.activity_source module

class pylero.activity_source.ActivitySource(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:ActivitySource class

  activity_source_id
    Type:

      string

  prefix
    Type:

      string

  types
    Type:

      ArrayOf_xsd_string

## pylero.approval module

class pylero.approval.Approval(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:Approval class

  status
    Type:

      EnumOptionId

  user
    Type:

      User

class pylero.approval.ArrayOfApproval(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

## pylero.attachment module

class pylero.attachment.ArrayOfAttachment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.attachment.Attachment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:Attachment class

  author
    Type:

      User

  file_name
    Type:

      string

  attachment_id
    Type:

      string

  length
    Type:

      long

  title
    Type:

      string

  updated
    Type:

      dateTime

  url
    Type:

      string

## pylero.base_polarion module

class pylero.base_polarion.BasePolarion(obj_id=None, suds_object=None)

  Bases: `object`

  BasePolarion is the parent class for all the WSDL Polarion objects that are published. Using the _cls_suds_map, the class creates a property for each attribute so that any access of the object attribute, will access the WSDL object that is contained by it.

  _cls_suds_map

    maps the Polarion attribute names to the Pylero attribute names. Attributes that reference either objects or an array of objects have the properties relate to the relationship meaning that accessing the property will give access to the object or list of objects.

    Type:

      dict

  _id_field

    the field that represents an id field, used in the child class’s constructor. when a child’s class defines the field it allows this constructor to accept an obj_id as a parameter

    Type:

      str

  _obj_client

    The Polarion client child’s WSDL object is defined by

    Type:

      str

  _obj_struct

    The data type defined by the WSDL library. The structure of the datatype is tnsX:ObjectName, the X is per datatype and has no default.

    Type:

      str

  session

    The Polarion Session object, initialized by the Connection class. This attribute connects to the server one time per session, no matter how many objects are instantiated.

    Type:

      Session

  default_project

    The user’s default project, to be used when project_id is needed and there is none given

    Type:

      str

  REGEX_ID = '.+}(.*)$'
  REGEX_PROJ = '/default/(.*)\\$'
  classmethod URI_ID_GET_REPLACE(x)
  classmethod URI_ID_SET_REPLACE(x)
  URI_STRUCT = 'subterra:data-service:objects:/default/%(project)s${%(obj)s}%(id)s'
  __init__(obj_id=None, suds_object=None)
  can_add_element_to_key(key)

    Checks if the current user can add elements to the collection at given key of the current object.

    Parameters:

      key – the key of the field that contains the collection.

    Returns:

      bool

    References

    Security.canAddElementToKey

  can_delete_instance()

    Checks if the current user can delete the current object

    Parameters:

      None –

    Returns:

      bool

    References

    Security.canDeleteInstance

  can_modify_instance()

    Checks if the current user can modify the current object

    Parameters:

      None –

    Returns:

      bool

    References

    Security.canModifyInstance

  can_modify_key(key)

    Checks if the current user can modify the field with given key of the current object.

    Parameters:

      key – the key of the field that contains the collection.

    Returns:

      bool

    References

    Security.canModifyKey

  can_read_instance()

    Checks if the current user can read the current object

    Parameters:

      None –

    Returns:

      bool

    References

    Security.canReadInstance

  can_read_key(key)

    Checks if the current user can read the field with given key of the current object.

    Parameters:

      key – the key of the field that contains the collection.

    Returns:

      bool

    References

    Security.canReadKey

  can_remove_element_from_key(key)

    Checks if the current user can remove elements from the collection at given key of the current object.

    Parameters:

      key – the key of the field that contains the collection.

    Returns:

      bool

    References

    Security.canRemoveElementFromKey

  check_valid_field_values(val, enum_id, additional_parms, control=None)

    verifies id the value passed in is valid for the enum or object passed in. for example, if we want to see if a valid user is given, this will try to instantiate the User class with the given parameter and additional parms. If it fails, it is not a valid value.

    Parameters:

      - val – the value you want to set it to.

      - enum_id – the enumeration or object to validate against

      - additional_parms (dict) – parms needed to instantiate class passed in as enum_id

      - control – the control key for the enumeration. default:None

  custom_array_obj()
  custom_obj()
  default_project = 'POLARION_PROJECT'
  classmethod get_global_roles()

    Returns all global roles.

    Parameters:

      None –

    Returns:

      list of global roles

    References

    Security.getGlobalRoles()

  get_location()

    Returns the location of the current object. In the context of this service the method should be used to get the location of a project(-group).

    Parameters:

      None –

    Returns:

      location (string)

    References

    Security.getLocationForURI

  get_valid_field_values(enum_id, control=None)

    Gets the available enumeration options. Uses a cache dict because the time to get valid fields from server is time prohibitive.

    Parameters:

      - enum_id – The enum code to get values for

      - control – the control key for the enumeration. default:None

    Returns:

      Array of EnumOptions

    References

    Tracker.getEnumOptionsForId

  classmethod has_current_user_permission(permission, project_id)

    Checks if given permission is granted to the current user.

    Parameters:

      - permission – the permission to check.

      - project_id – the id of the project to check the permission in, None to check global permissions.

    Returns:

      bool

    References

    Security.hasCurrentUserPermission

  logged_in_user_id = 'POLARION_USERNAME'
  reload()

    Reloads the object with data from the server. This function is useful if the data on the server changed or if a data changing function was called (such as TestRun.add_attachment)

    Notes

    This will overwrite any unsaved data in the object.

    Parameters:

      None –

    Returns:

      None

  repo = ''
  session = <pylero.session.Session object>

class pylero.base_polarion.ClassProperty(fget=None, fset=None, fdel=None, doc=None)

  Bases: `property`

  Returns a classmethod as the getter so that the property can be used as a class property. This is needed so that the property can be set for all child objects. This project currently has no need of a setter or deleter.

class pylero.base_polarion.Configuration

  Bases: `object`

  CONFIG_SECTION = 'webservice'
  CURDIR_CONFIG = '.pylero'
  GLOBAL_CONFIG = '/home/waynesun/.local/share/virtualenvs/pylero-xZ4TB2uX/lib/python3.10/site-packages/pylero/pylero.cfg'
  LOCAL_CONFIG = '/home/waynesun/.pylero'
  __init__()
  pkgdir = '/home/waynesun/.local/share/virtualenvs/pylero-xZ4TB2uX/lib/python3.10/site-packages/pylero'

class pylero.base_polarion.Connection

  Bases: `object`

  Creates a Polarion session as a class method, so that it is used for all objects inherited by BasePolarion. The url, repo, user and password are read from config files, which are located either the current directory ./pylero, the user’s dir ~/.pylero or the Library config dir LIBDIR/pylero.cfg These can also be overridden with the following environment variables: POLARION_URL POLARION_REPO POLARION_USERNAME POLARION_PASSWORD POLARION_TIMEOUT POLARION_PROJECT

  connected = True
  password_retries = 3
  session = <pylero.session.Session object>

pylero.base_polarion.tx_wrapper(func)

## pylero.baseline module

class pylero.baseline.Baseline(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:Baseline class

  author
    Type:

      User

  base_revision
    Type:

      string

  description
    Type:

      string

  baseline_id
    Type:

      string

  name
    Type:

      string

  project
    Type:

      Project

  classmethod create(project_id, name, description, revision)

    class method create Creates a Baseline from head or particular revision.

    Parameters:

      - project_id –

      - name – baseline name (not None)

      - description – baseline description (can be None)

      - revision – revision or null value for head revision

    Returns:

      Baseline object

    References

    Tracker.createBaseline

  classmethod query(query, sort='baseline_id')

    Queries for baselines.

    Parameters:

      - query – the lucene query to be used.

      - sort – the field to be used for sorting.

    Returns:

      list of Baselines

    References

    Tracker.queryBaselines

## pylero.build module

class pylero.build.Build(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns2:Build class

  author
    Type:

      User

  bir_location
    Type:

      Location

  build_descriptor_name
    Type:

      string

  build_stamp
    Type:

      string

  build_status
    Type:

      string

  build_tag
    Type:

      string

  build_test_results
    Type:

      BuildTestResults

  calculation_descriptor_name
    Type:

      string

  creation_time
    Type:

      dateTime

  finish_time
    Type:

      dateTime

  build_id
    Type:

      string

  job_id
    Type:

      string

  linked_work_items
    Type:

      ArrayOfBuildLinkedWorkItem

  local_deployment_space_name
    Type:

      string

  log_files
    Type:

      ArrayOfLocation

  start_time
    Type:

      dateTime

## pylero.build_linked_work_item module

class pylero.build_linked_work_item.ArrayOfBuildLinkedWorkItem(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.build_linked_work_item.BuildLinkedWorkItem(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns2:BuildLinkedWorkItem class

  revision
    Type:

      string

  role
    Type:

      EnumOptionId

  work_item
    Type:

      WorkItem

## pylero.build_test_results module

class pylero.build_test_results.BuildTestResults(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns2:BuildTestResults class

  error_count
    Type:

      int

  failure_count
    Type:

      int

  skipped_count
    Type:

      int

  test_count
    Type:

      int

## pylero.category module

class pylero.category.ArrayOfCategory(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.category.Category(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:Category class

  description
    Type:

      Text

  category_id
    Type:

      string

  name
    Type:

      string

## pylero.change module

class pylero.change.Change(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:Change class

  creation
    Type:

      boolean

  date
    Type:

      dateTime

  diffs
    Type:

      ArrayOf_tns3_FieldDiff

  empty
    Type:

      boolean

  invalid
    Type:

      boolean

  revision
    Type:

      string

  user
    Type:

      string

## pylero.comment module

class pylero.comment.ArrayOfComment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.comment.Comment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:Comment class

  author
    Type:

      User

  child_comment_uris
    Type:

      ArrayOfSubterraURI

  created
    Type:

      dateTime

  comment_id
    Type:

      string

  parent_comment_uri
    Type:

      SubterraURI

  resolved
    Type:

      boolean

  signature_data
    Type:

      SignatureData

  tags
    Type:

      ArrayOfEnumOptionId

  text
    Type:

      Text

  title
    Type:

      string

  visible_to
    Type:

      ArrayOfstring

## pylero.custom module

class pylero.custom.ArrayOfCustom(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.custom.Custom(key=None, value=None, suds_object=None)

  Bases: `BasePolarion`

  Object to manage Polarion TestManagement WS tns4:Custom

  key
    Type:

      string

  value
    Type:

      EnumOptionId

  __init__(key=None, value=None, suds_object=None)

## pylero.custom_field module

class pylero.custom_field.CustomField(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:CustomField class

  key
    Type:

      string

  parent_item_uri
    Type:

      string

  value
    Type:

      anyType

## pylero.custom_field_type module

class pylero.custom_field_type.CustomFieldType(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:CustomFieldType class

  default_value
    Type:

      anyType

  depends_on
    Type:

      string

  description
    Type:

      string

  cft_id
    Type:

      string

  name
    Type:

      string

  required
    Type:

      boolean

  type
    Type:

      string

## pylero.document module

class pylero.document.Document(project_id=None, doc_with_space=None, fields=None, uri=None, suds_object=None)

  Bases: `BasePolarion`

  An object to manage the TestManagement WS tns4:Module

  allowed_wi_types
    Type:

      ArrayOfEnumOptionId

  are_links_from_parent_to_child
    Type:

      boolean

  author
    Type:

      User

  auto_suspect
    Type:

      boolean

  branched_from
    Type:

      Module

  branched_with_query
    Type:

      string

  comments
    Type:

      ArrayOfModuleComment

  created
    Type:

      dateTime

  custom_fields
    Type:

      ArrayOfCustom

  derived_fields
    Type:

      ArrayOfstring

  derived_from_link_role
    Type:

      EnumOptionId

  derived_from_uri
    Type:

      SubterraURI

  home_page_content
    Type:

      Text

  id
    Type:

      string

  location
    Type:

      Location

  module_absolute_location
    Type:

      Location

  module_folder
    Type:

      string

  module_location
    Type:

      Location

  module_name
    Type:

      string

  project
    Type:

      Project

  signature_contexts
    Type:

      ArrayOfSignatureContext

  status
    Type:

      EnumOptionId

  structure_link_role
    Type:

      EnumOptionId

  title
    Type:

      string

  type
    Type:

      EnumOptionId

  updated
    Type:

      dateTime

  updated_by
    Type:

      User

  uses_outline_numbering
    Type:

      boolean

  classmethod URI_ID_GET_REPLACE(x)
  classmethod URI_ID_SET_REPLACE(x)
  URI_STRUCT = 'subterra:data-service:objects:/default/%(project)s${%(obj)s}{moduleFolder}%(id)s'
  __init__(project_id=None, doc_with_space=None, fields=None, uri=None, suds_object=None)

    constructor for the Module object. Gets the module object from the Polarion server based on parameters passed in.

    Parameters:

      - project_id – the project where the module is located

      - doc_with_space – specific space/doc_name of the repository, required if project_id is given (Testing, Development, …)

      - fields – optional list of fields that should be contained in the returned object.

      - uri – The Polarion specific uri of the module object

      - suds_object – the WSDL Module object

    Returns:

      None

    References

    Tracker.getModuleByLocation Tracker.getModuleByLocationWithFields Tracker.getModuleByUri Tracker.getModuleByUriWithFields

  add_referenced_work_item(work_item_id)

    Adds a work item to the document as a referenced work_item to the end of the current document.

    Parameters:

      - work_item_id (str) – the id of a work item in the same project as

      - document (the current) –

    Returns:

      None

  classmethod create(project_id, space, document_name, document_title, allowed_wi_types, document_type, structure_link_role='parent', home_page_content='')

    class method create Creates a document or an old-style Module/Document in given location with given parameters.

    Parameters:

      - project_id – project to create module in

      - space – document space location with one component or None for default space

      - document_name – Document name (required)

      - document_title – Document title (required)

      - allowed_wi_types – list of types, only one should be specified

      - document_type – Type of document (required i.e testspecification).

      - structure_link_role – required, role which defines the hierarchy of work items inside the Module, default: parent

      - home_page_content – HTML markup for document home page, default “”

    Returns:

      None

    References

    Tracker.createDocument

  create_work_item(parent_id, w_item)

    create a work item in the current document

    Parameters:

      - parent_id – The work_item_id of the parent _WorkItem

      - wi – The Work Item object to create.

    Returns:

      The created _WorkItem

    References

    Tracker.createWorkItemInModule

  delete()

    delete the current document

    Parameters:

      None –

    Returns:

      None

  classmethod get_documents(project_id, space, fields=[])

    returns a list of Document objects

    Parameters:

      - project_id – the project where the modules are located

      - space – specific location of the repository

      - fields – optional list of fields that should be contained in the returned objects.

    Returns:

      list of Document Objects

    References

    Tracker.getModules Tracker.getModulesWithFields

  get_work_items(parent_work_item_id, deep, fields=['work_item_id', 'type'])

    Returns work items (with given fields set) contained in given Module/Document under given parent (if specified).

    Parameters:

      - parent_work_item_id (str) – Id of parent work item or None

      - deep – true to return work items from the whole subtree

      - fields – fields to fill. For nested structures in the lists you can use following syntax to include only subset of fields: myList.LIST.key (e.g. linkedWorkItems.LIST.role). For custom fields you can specify which fields you want to be filled using following syntax: customFields.CUSTOM_FIELD_ID (e.g. customFields.risk).

    Returns:

      list of _WorkItem objects

    References

    Tracker.getModuleWorkItems

  move_work_item_here(work_item_id, parent_id, position=-1, retain_flow=True)

    Moves a work item to a specific position in a Document. If the work item is not yet inside the Document it will be moved into the Document.

    Parameters:

      - work_item_id – WorkItem id to move

      - parent_id – The parent WorkItem id, can be None

      - position (int) – desired position in the list of children or a value < 0 to insert at the end (if the old and new parent is the same then moved work item is not counted)

      - retain_flow (bool) – true to retain the position of moved work item in the document flow (even if it means to change the parent). false to keep desired parent (even if it means to move work item to different position)

    Returns:

      None

    References

    Tracker.moveWorkItemToDocument

  classmethod query(query, is_sql=False, fields=['document_id'], sort='document_id', limit=-1, baseline_revision=None, query_uris=False)

    Searches for Modules/Documents.

    Parameters:

      - query – query, either Lucene or SQL

      - is_sql (bool) – determines if the query is SQL or Lucene

      - fields – list of field names to fill in the returned Modules/Documents (can be null). For nested structures in the lists you can use following syntax to include only subset of fields: myList.LIST.key (e.g. linkedWorkItems.LIST.role). For custom fields you can specify which fields you want to be filled using following syntax: customFields.CUSTOM_FIELD_ID (e.g. customFields.risk). default: list containing “document_id”

      - sort – Lucene sort string, default: document_id

      - limit – how many results to return (-1 means everything (default))

      - baseline_revision (str) – if populated, query done in specified rev default - None

      - query_uris – returns a list of URI of the Modules found, instead of a list of Documents. default - False.

    Returns:

      list of modules

    References

    queryModuleUris queryModuleUrisBySQL queryModuleUrisInBaseline queryModuleUrisInBaselineBySQL queryModules queryModulesBySQL queryModulesInBaseline queryModulesInBaselineBySQL

  update()

    updates the server with the current module data

    Parameters:

      None –

    Returns:

      None

    References

    Tracker.updateModule

## pylero.enum_custom_field_type module

class pylero.enum_custom_field_type.EnumCustomFieldType(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:EnumCustomFieldType class

  default_value
    Type:

      anyType

  depends_on
    Type:

      string

  description
    Type:

      string

  enum_id
    Type:

      string

  id
    Type:

      string

  name
    Type:

      string

  required
    Type:

      boolean

  type
    Type:

      string

## pylero.enum_option module

class pylero.enum_option.EnumOption(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:EnumOption class

  default
    Type:

      boolean

  enum_id
    Type:

      string

  hidden
    Type:

      boolean

  enum_option_id
    Type:

      string

  name
    Type:

      string

  phantom
    Type:

      boolean

  properties
    Type:

      Properties

  sequence_number
    Type:

      int

## pylero.enum_option_id module

class pylero.enum_option_id.ArrayOfEnumOptionId(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  An object to manage Polarion TestManagement tns4:ArrayOfEnumOptionId

class pylero.enum_option_id.EnumOptionId(enum_id=None, suds_object=None)

  Bases: `BasePolarion`

  An object to manage Polarion TestManagement tns4:EnumOptionId

  __init__(enum_id=None, suds_object=None)

## pylero.exceptions module

exception pylero.exceptions.PyleroLibException

  Bases: `Exception`

## pylero.externally_linked_work_item module

class pylero.externally_linked_work_item.ArrayOfExternallyLinkedWorkItem(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.externally_linked_work_item.ExternallyLinkedWorkItem(project_id=None, work_item_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:ExternallyLinkedWorkItem class

  role
    Type:

      EnumOptionId

  work_item_uri
    Type:

      string

  __init__(project_id=None, work_item_id=None, suds_object=None)

## pylero.field_diff module

class pylero.field_diff.FieldDiff(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:FieldDiff class

  added
    Type:

      ArrayOf_xsd_anyType

  after
    Type:

      anyType

  before
    Type:

      anyType

  collection
    Type:

      boolean

  field_name
    Type:

      string

  removed
    Type:

      ArrayOf_xsd_anyType

## pylero.hyperlink module

class pylero.hyperlink.ArrayOfHyperlink(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.hyperlink.Hyperlink(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:Hyperlink class

  role
    Type:

      EnumOptionId

  uri
    Type:

      string

## pylero.imported_comment module

class pylero.imported_comment.ImportedComment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns4:ImportedComment class

  author
    Type:

      string

  created
    Type:

      dateTime

  initials
    Type:

      string

## pylero.language_definition module

class pylero.language_definition.LanguageDefinition(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:LanguageDefinition class

  language_definition_id
    Type:

      string

  label
    Type:

      string

## pylero.license_info module

class pylero.license_info.LicenseInfo(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:LicenseInfo class

  license
    Type:

      string

  slots
    Type:

      int

## pylero.linked_work_item module

class pylero.linked_work_item.ArrayOfLinkedWorkItem(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.linked_work_item.LinkedWorkItem(project_id=None, work_item_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:LinkedWorkItem class

  revision
    Type:

      string

  role
    Type:

      EnumOptionId

  suspect
    Type:

      boolean

  work_item_id
    Type:

      string

  __init__(project_id=None, work_item_id=None, suds_object=None)

## pylero.module_comment module

class pylero.module_comment.ArrayOfModuleComment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.module_comment.ModuleComment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns4:ModuleComment class

  author
    Type:

      User

  child_comment_uris
    Type:

      ArrayOfSubterraURI

  created
    Type:

      dateTime

  module_comment_id
    Type:

      string

  imported_comment
    Type:

      ImportedComment

  parent_comment_uri
    Type:

      SubterraURI

  referred_work_item_uri
    Type:

      SubterraURI

  resolved
    Type:

      boolean

  signature_data
    Type:

      SignatureData

  tags
    Type:

      ArrayOfEnumOptionId

  text
    Type:

      Text

## pylero.plan module

class pylero.plan.ArrayOfPlan(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.plan.Plan(plan_id=None, project_id=None, uri=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns6:Plan class

  allowed_types
    Type:

      ArrayOfEnumOptionId

  author_uri
    Type:

      SubterraURI

  calculation_type
    Type:

      EnumOptionId

  capacity
    Type:

      float

  color
    Type:

      string

  created
    Type:

      dateTime

  custom_fields
    Type:

      ArrayOfCustom

  default_estimate
    Type:

      float

  description
    Type:

      Text

  due_date
    Type:

      date

  estimation_field
    Type:

      string

  finished_on
    Type:

      dateTime

  is_template
    Type:

      boolean

  location
    Type:

      Location

  name
    Type:

      string

  parent
    Type:

      Plan

  plan_id
    Type:

      string

  previous_time_spent
    Type:

      duration

  prioritization_field
    Type:

      string

  project_uri
    Type:

      SubterraURI

  records
    Type:

      ArrayOfPlanRecord

  sort_order
    Type:

      int

  start_date
    Type:

      date

  started_on
    Type:

      dateTime

  status
    Type:

      EnumOptionId

  template_uri
    Type:

      SubterraURI

  updated
    Type:

      dateTime

  __init__(plan_id=None, project_id=None, uri=None, suds_object=None)

    Plan Constructor

    Parameters:

      - plan_id – ID of the plan

      - project_id – ID of the project that contains the specific plan required when plan_id is given

      - uri – the SubterraURI of the plan to load

      - suds_object – the Polarion Plan object

    Returns:

      None

    References

    Planning.getPlanById Planning.getPlanByUri

  add_plan_items(work_items)

    Add plan records to the plan.

    Parameters:

      items – list of work_item_ids

    Returns:

      None

    References

    Planning.addPlanItems

  classmethod create(plan_id, plan_name, project_id, parent_id, template_id)

    Creates a new plan

    Parameters:

      - plan_id (str) – The id of the new plan

      - plan_name – The name of the new plan

      - project_id (str) – The project the plan will be created in

      - parent_id – The id of the parent plan (can be null)

      - template_id – The id of the template used for this plan

    Returns:

      Plan Object

    References

    Planning.createPlan

  classmethod create_plan_template(template_id, template_name, project_id, parent_id)

    Creates a new plan template

    Parameters:

      - template_id (str) – The id of the new template

      - template_name – The name of the new template

      - project_id (str) – The project the plan will be created in

      - parent_id – The id of the template the new template is based on (can be null)

    Returns:

      Plan Object

    References

    Planning.createPlanTemplate

  classmethod delete_plans(project_id, plan_ids)

    Delete specified plans

    Parameters:

      - project_id – the project the plans will be deleted in

      - plan_ids – list of plan ids to delete.

    Returns:

      None

    References

    Planning.deletePlans

  get_statistics()

    get statistics of the plan

    Parameters:

      None –

    Returns:

      PlanStatistics object

    References

    Planning.getPlanStatistics

  get_wiki_content()

    Returns the wiki content of the plan

    Parameters:

      None –

    Returns:

      Text object

    References

    Planning.getPlanWikiContent

  remove_plan_items(work_items)

    Remove plan records to the plan.

    Parameters:

      items – list of work_item_ids

    Returns:

      None

    References

    Planning.removePlanItems

  classmethod search(query, sort='plan_id', limit=-1, fields=[], search_templates=False)

    search plans or plan templates

    Args

      query sort limit: the maximum number of records to be returned, -1 for no limit. fields: list of the fields requested.

    Returns:

      list of Plan objects

    References

    Planning.searchPlanTemplates Planning.searchPlanTemplatesWithFields Planning.searchPlans Planning.searchPlansWithFields

  set_wiki_content(content)

    method set_wiki_content updates the wiki for the current Plan

    Parameters:

      Content (str or Text object) –

    Returns:

      None

    References

    Planning.setPlanWikiContent

  update()

    updates the server with the current plan content

    Parameters:

      None –

    Returns:

      None

    References

    Planning.updatePlan

  was_started()

    checks if the plan was started yet

    Parameters:

      None –

    Returns:

      bool

    References

    Planning.wasPlanStarted

## pylero.plan_record module

class pylero.plan_record.ArrayOfPlanRecord(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.plan_record.PlanRecord(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns6:PlanRecord class

  item
    Type:

      _WorkItem

## pylero.plan_statistics module

class pylero.plan_statistics.PlanStatistics(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:PlanStatistics class

  done
    Type:

      float

  done_as_string
    Type:

      string

  ideal_progress
    Type:

      float

  ideal_progress_as_string
    Type:

      string

  number_of_planned
    Type:

      int

  number_of_resolved
    Type:

      int

  number_of_unresolved
    Type:

      int

  planned
    Type:

      float

  planned_as_string
    Type:

      string

  progress
    Type:

      float

  progress_as_string
    Type:

      string

  todo
    Type:

      float

  todo_as_string
    Type:

      string

## pylero.planning_constraint module

class pylero.planning_constraint.ArrayOfPlanningConstraint(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.planning_constraint.PlanningConstraint(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:PlanningConstraint class

  constraint
    Type:

      EnumOptionId

  date
    Type:

      dateTime

## pylero.priority_opt module

class pylero.priority_opt.PriorityOpt(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:PriorityOpt class

  default
    Type:

      boolean

  enum_id
    Type:

      string

  float
    Type:

      float

  hidden
    Type:

      boolean

  priority_opt_id
    Type:

      string

  name
    Type:

      string

  phantom
    Type:

      boolean

  properties
    Type:

      Properties

  sequence_number
    Type:

      int

## pylero.priority_option_id module

class pylero.priority_option_id.ArrayOfPriorityOptionId(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.priority_option_id.PriorityOptionId(id=None, uri=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:PriorityOptionId class

  id
    Type:

      string

  __init__(id=None, uri=None, suds_object=None)

    PriorityOptionID Constructor

    Parameters:

      - id – value of the priority

      - uri – the SubterraURI of the priority

      - suds_object – the Polarion Plan object

    Returns:

      None

    References

    _WorkItem.priority

## pylero.product_license module

class pylero.product_license.ProductLicense(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:ProductLicense class

  concurrent_license_data
    Type:

      ArrayOf_tns3_LicenseInfo

  customer_company
    Type:

      string

  customer_email
    Type:

      string

  customer_name
    Type:

      string

  date_created
    Type:

      dateTime

  expiration_date
    Type:

      dateTime

  generated_by
    Type:

      string

  ip_address
    Type:

      string

  license_format
    Type:

      string

  license_profile
    Type:

      string

  mac_address
    Type:

      string

  named_license_data
    Type:

      ArrayOf_tns3_LicenseInfo

## pylero.project module

class pylero.project.Project(project_id=None, suds_object=None, location=None, uri=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns4:Project class

  active
    Type:

      boolean

  description
    Type:

      Text

  finish
    Type:

      date

  lead
    Type:

      User

  location
    Type:

      str

  lock_work_records_date
    Type:

      date

  name
    Type:

      string

  project_group
    Type:

      ProjectGroup

  project_id
    Type:

      string

  start
    Type:

      date

  tracker_prefix
    Type:

      string

  URI_STRUCT = 'subterra:data-service:objects:/default/%(id)s${%(obj)s}%(id)s'
  __init__(project_id=None, suds_object=None, location=None, uri=None)

    Project constructor.

    Parameters:

      - project_id – when given, the object is populated with the Project data.

      - suds_object – PolarionProject object. When given, the object is populated by object data.

      - location – the location of the Polarion project

      - uri – the uri that references the PolarionProject

    Notes

    Either project_id or suds_object or location or uri can be passed in or none of them. If none of the identifying parameters are passed in an empty object is created

    References

    Project.getProject Project.getProjectatLocation Project.getProjectByURI

  get_categories()

    method get_categories retrieves a list of Category objects

    Parameters:

      None –

    Returns:

      list of Category objects

    References

    Tracker.getCategories

  classmethod get_context_roles(location)

    Returns the context (project) roles for the given location.

    Parameters:

      location – the location of the context (project/project group)

    Returns:

      list of roles

    References

    Security.getContextRoles

  get_defined_custom_field_keys(work_item_type_id)

    Gets all custom field keys defined for a workitem type in a project.

    Parameters:

      work_item_type_id – the workitem type ID.

    Returns:

      list of key for the project for the given workitem type

    References

    Tracker.getDefinedCustomFieldkeys

  get_defined_custom_field_type(work_item_type_id, key)

    method get_defined_custom_field_type gets custom field definition of a work item type for the given key.

    Parameters:

      - work_item_type_id – the workitem type ID.

      - key – The key of the custom field

    Returns:

      CustomFieldType object

    References

    Tracker.getDefinedCustomFieldType

  get_defined_custom_field_types(work_item_type_id)

    method get_defined_custom_field_type gets custom field definition of a work item type all keys.

    Parameters:

      work_item_type_id – the workitem type ID.

    Returns:

      list of CustomFieldType object

    References

    Tracker.getDefinedCustomFieldType

  get_document_locations()

    Gets the document locations (e.g. LiveDocuments) for a project.

    Parameters:

      None –

    Returns:

      list of (string) document locations

    References

    Tracker.getDocumentLocations

  get_document_spaces()

    Gets the Module/Document spaces for the project.

    Parameters:

      None –

    Returns:

      list of (string) document spaces

    References

    Tracker.getDocumentSpaces

  get_project_users()

    Gets users of the project

    Parameters:

      None –

    Returns:

      list of u.User objects

    References

    Project.getProjectUsers

  get_test_steps_configuration()

    method get_test_steps_configuration retrieves a list of the Test Steps configuration for the project

    Parameters:

      None –

    Returns:

      list of configuration of the Test Steps custom field.

    References

    TestManagement.getTestStepsConfiguration

  get_tests_configuration()

    method get_tests_configuration retrieves the test management configuration for the project

    Parameters:

      None –

    Returns:

      TestsConfiguration object

    References

    TestManagement.getTestsConfiguration

  get_wiki_spaces()

    Returns Wiki spaces from current project

    Parameters:

      None –

    Returns:

      Array of string

    References

    Tracker.getWikiSpaces

## pylero.project_group module

class pylero.project_group.ProjectGroup(uri=None, location=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns2:ProjectGroup class

  group_uris
    Type:

      ArrayOfSubterraURI

  location
    Type:

      Location

  name
    Type:

      string

  parent_uri
    Type:

      SubterraURI

  project_ids
    Type:

      ArrayOfstring

  __init__(uri=None, location=None, suds_object=None)

    ProjectGroup constructor.

    Parameters:

      - uri – the uri that references the Polarion ProjectGroup

      - location – the location of the Polarion ProjectGroup

      - suds_object – Polarion ProjectGroup object. When given, the object is populated by object data.

    Notes

    Either uri or suds_object or location in or none of them. If none of the identifying parameters are passed in an empty object is created

    References

    p.Project.getProjectGroup p.Project.getProjectGroupAtLocation

  get_contained_groups()

    Gets all project groups located directly below the project group.

    Parameters:

      None –

    Returns:

      list of p.ProjectGroup objects

    References

    p.Project.getContainedGroups

  get_contained_projects()

    Gets all projects located directly below the project group.

    Parameters:

      None –

    Returns:

      list of p.Project objects

    References

    p.Project.getContainedProjects

  get_deep_contained_projects()

    Gets all projects located below the project group.

    Parameters:

      None –

    Returns:

      list of p.Project objects

    References

    p.Project.getDeepContainedProjects

  classmethod get_root_project_group()

    Gets the root project group.

    Parameters:

      None –

    Returns:

      ProjectGroup object

    References

    Project.getRootProjectGroup

## pylero.properties module

class pylero.properties.Properties(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns4:Properties class

  property
    Type:

      property

## pylero.property module

class pylero.property.Property(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns4:property class

  key
    Type:

      string

  value
    Type:

      string

## pylero.revision module

class pylero.revision.ArrayOfRevision(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.revision.Revision(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns4:Revision class

  author
    Type:

      string

  created
    Type:

      dateTime

  internal_commit
    Type:

      boolean

  linked_work_item_uris
    Type:

      ArrayOfSubterraURI

  message
    Type:

      string

  name
    Type:

      string

  repository_name
    Type:

      string

  classmethod query(query, sort='name', fields=['name'], query_uris=False)

    Searches revisions

    Parameters:

      - query – query, Lucene

      - sort – Lucene sort string, default - name

      - fields – list of field names to fill in the returned Revision (can be null). For nested structures in the lists you can use following syntax to include only subset of fields: myList.LIST.key (e.g. linkedWorkItems.LIST.role). For custom fields you can specify which fields you want to be filled using following syntax: customFields.CUSTOM_FIELD_ID (e.g. customFields.risk). Default - list containing “name”

      - query_uris – if True, returns a list of URIs instead of Revision objects. default - False

    Returns:

      list of Revisions

    References

    Tracker.queryRevisions

## pylero.server module

class pylero.server.Server(url, login, password, default_project=None, relogin_timeout=60, timeout=120, cert_path=None)

  Bases: `object`

  Server object is instantiated once per Polarion session and creates the session that is used to connect to the server.

  __init__(url, login, password, default_project=None, relogin_timeout=60, timeout=120, cert_path=None)

    An object that defines the properties of the Polarion server to connect to.

    Parameters:

      - url – url of the Polarion server

      - login – username

      - password – password

      - default_project – default project to use to for configuarations

      - relogin_timeout – timeout after which the session will try to login again

      - timeout – http tiemout

      - cert_path – path to customize CA bundle

  session()

## pylero.session module

class pylero.session.ListenFilter(name='')

  Bases: `Filter`

  filter(record)

    Determine which log records to output. Returns 0 for no, nonzero for yes.

class pylero.session.Session(server, timeout)

  Bases: `object`

  __init__(server, timeout)

    Session constructor, initialize the WSDL clients

    Parameters:

      - server – server object that the session connects to

      - caching_policy – determines the caching policy of the SUDS conn

      - timeout – HTTP timeout for the connection

  tx_begin()
  tx_commit()
  tx_in()

    Function checks if a transaction is in progress. You can not have a transaction within another transaction. This function helps the system determine if it should start a new transaction or if it is already in the middle of one.

    Returns:

      bool

  tx_release()
  tx_rollback()

class pylero.session.SoapNull

  Bases: `MessagePlugin`

  suds plugin that is called before any suds message is sent to the remote server. It adds the xsi:nil=true attribute to any element that is blank. Without this plugin, a number of functions that were supposed to accept null parameters did not work.

  add_nil(element)

    Used as a filter function with walk to add xsi:nil to blank attrs.

  marshalled(context)

    Suds is about to send the specified SOAP envelope.

    Provides the plugin with the opportunity to inspect/modify the envelope Document before it is sent.

    @param context: The send context.

      The I{envelope} is the envelope document.

    @type context: L{MessageContext}

pylero.session.create_ssl_context()

  this function creates a custom ssl context which is required for ssl connection in python-version >=2.7.10. this ssl context is customize to use certificate which is located in ‘CERT_PATH’.

## pylero.signature module

class pylero.signature.ArrayOfSignature(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.signature.Signature(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns4:Signature class

  signed_by
    Type:

      User

  signed_revision
    Type:

      string

  signer_role
    Type:

      string

  verdict
    Type:

      EnumOptionId

  verdict_time
    Type:

      dateTime

## pylero.signature_context module

class pylero.signature_context.ArrayOfSignatureContext(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.signature_context.SignatureContext(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns4:SignatureContext class

  signatures
    Type:

      ArrayOfSignature

  target_status_id
    Type:

      string

  transition_data_revision
    Type:

      string

  user
    Type:

      User

## pylero.signature_data module

class pylero.signature_data.SignatureData(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:SignatureData class

  target_status_id
    Type:

      string

  verdict
    Type:

      EnumOptionId

## pylero.subterra_uri module

class pylero.subterra_uri.ArrayOfSubterraURI

  Bases: `BasePolarion`

  __init__()

class pylero.subterra_uri.SubterraURI

  Bases: `BasePolarion`

  __init__()

## pylero.test_record module

class pylero.test_record.ArrayOfTestRecord(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.test_record.TestRecord(project_id=None, test_case_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:TestRecord class

  Attributes (for specific details, see Polarion):

    attachments (ArrayOfTestRunAttachment) comment (Text) defect_case_id (string) duration (float) executed (dateTime) executed_by (string) result (EnumOptionId) test_case_revision (string) test_case_id (string) test_step_results (ArrayOfTestStepResult)

  __init__(project_id=None, test_case_id=None, suds_object=None)

## pylero.test_run module

class pylero.test_run.TestRun(test_run_id=None, suds_object=None, project_id=None, uri=None)

  Bases: `BasePolarion`

  Object to manage the Polarion Test Management WS tns3:TestRun

  attachments
    Type:

      list of TestRunAttachments

  author

    user object of the Test Run Author

    Type:

      User

  created
    Type:

      datetime

  document
    Type:

      Module

  finished_on
    Type:

      datetime

  group_id
  is_template

    indicates if the TestRun object is a Template

    Type:

      bool

  keep_in_history
    Type:

      bool

  location
  project
    Type:

      Project

  query

    The Polarion query that the TestRun objects are based on.

    Type:

      str

  records
    Type:

      list of TestRecord objects

  select_test_cases_by
    The test cases can be:

      AUTOMATED_PROCESS DYNAMIC_QUERY DYNAMIC_LIVEDOC MANUAL_SELECTION STATIC_QUERY STATIC_LIVEDOC

    Type:

      EnumOptionId

  status
  summary_defect
    Type:

      _WorkItem

  template

    template that the TestRun is based on.

    Type:

      TestRun

  test_run_id

    Unique identifier of the test run within the project

    Type:

      str

  type
  updated
  custom_fields
  __init__(test_run_id=None, suds_object=None, project_id=None, uri=None)

    TestRun constructor.

    Parameters:

      - test_run_id – when given, the object is populated with the TestRuns. Requires project_id parameter

      - suds_object – Polarion TestRun object. When given, the object is populated by object data.

      - project_id – the Polarion project that the Test Run is located in. Required if test_run_id is passed in

      - uri – the uri that references the Polarion TestRun

    Notes

    Either test_run_id and project or suds_object or uri can be passed in or none of them. If none of the identifying parameters are passed in an empty object is created

    References

    test_management.getTestRunById test_management.getTestRunByUri

  add_attachment(path, title)

    method add_attachment adds the given attachment to the current test run

    Parameters:

      - path – file path to upload

      - title – u.User friendly name of the file

    Returns:

      None

    Notes

    Raises an error if the test run object is not populated

    References

    test_management.addAttachmentToTestRun

  add_attachment_to_test_record(test_case_id, path, title)

    method add_attachment_to_test_record, adds the given attachment to the specified test record

    Parameters:

      - test_case_id (str) – The id of the test case

      - path – file path to upload

      - title – u.User friendly name of the file

    Returns:

      None

    Notes

    Raises an error if the test case given is not in the TestRun or has not been executed yet.

    References

    test_management.addAttachmentToTestRecord

  add_attachment_to_test_step(test_case_id, test_step_index, path, title)

    method add_attachment_to_test_step, adds the given attachment to the specified test step of the specified test record

    Parameters:

      - test_case_id (str) – The id of the test case to the step is in

      - test_step_index (int) – The 0 based index of the test step

      - path – file path to upload

      - title – u.User friendly name of the file

    Returns:

      none

    Notes

    Raises an error if the record_index given is higher then the number of test records. or if the test_step_index is higher then the number of steps.

    References

    test_management.addAttachmentToTestStep

  add_test_record_by_fields(test_case_id, test_result, test_comment, executed_by, executed, duration, defect_work_item_id=None)

    method add_test_record_by_fields, adds a test record for the given test case based on the result fields passed in. When a test record is added, it changes the test run status to “inprogress” and when the last test record is run, it changes the status to done.

    Parameters:

      - test_case_id (str) – The id of the test case that was executed

      - test_result (str) – Must be one of the following values: passed failed blocked

      - test_comment (str or Text object) – may be None

      - executed_by (str) – user id

      - executed (datetime) –

      - duration (float) –

      - defect_work_item_id (str) – _WorkItem id of defect, default: None

    Returns:

      None

    References

    test_management.addTestRecordToTestRun

  add_test_record_by_object(test_record, manual_state_change=False)

    method add_test_record_by_object, adds a test record for the given test case based on the TestRecord object passed in. In addition, the test run is checked for completeness and the test run state will change accordingly. Test Run states are [“notrun”, “finished”, “inprogress”].

    Parameters:

      - test_record (TestRecord or Polarion TestRecord) –

      - manual_state_change (boolean) – Change test run state automatically or manual.

    Returns:

      None

    References

    test_management.addTestRecordToTestRun

  classmethod create(project_id, test_run_id=None, template=None, title=None, **kwargs)

    class method create for creating a new test run in Polarion

    Parameters:

      - project_id (string) – the Polarion project to create the test run in

      - test_run_id (string) – the unique identifier for the test run, If the Enable Generated Test Run IDs option is marked in the configuration, it will ignore this field. If it is None, the title will be used.

      - template (string) – the id of the template to base the test run on. cannot be None. Because of the existing order of params before adding title, it is given a default value of None, which will cause an error if it is not populated

      - title (string) – To create a test run with a title. In this case, if the id is not populated it will be autogen. If it is populated, it will use that.

      - **kwargs – keyword arguments. Test run attributes can be passed in to be set upon creation. Required fields must be passed in

    Returns:

      The created TestRun object

    References

    test_management.createTestRun

  create_summary_defect(defect_template_id=None)

    method create_summary_defect, adds a new summary _WorkItem for the test case based on the _WorkItem template id passed in. If not template is passed in, it creates it based on the default template.

    Parameters:

      - defect_template_id (str) – the _WorkItem template id to base the

      - default (new summary defect. can be null.) – None

    Returns:

      the created _WorkItem

    References

    test_management.createSummaryDefect

  classmethod create_template(project_id, template_id, parent_template_id='Empty', select_test_cases_by=None, query=None, doc_with_space=None, **kwargs)

    class method create_template for creating a new template in Polarion

    Parameters:

      - project_id (string) – the Polarion project to create the test run in

      - template_id (string) – the unique identifier for the template

      - parent_template_id – the template that this is based on Default: “Empty”

      - select_test_cases_by – the method used to choose test cases NOTE: It is currently not possible to select test cases manually via the API. Default: None

      - query – the Lucene query, for query methods, default None

      - doc_with_space – the space/doc_name, for document methods default: None

      - **kwargs – keyword arguments. Test run attributes can be passed in to be set upon creation. Required fields must be passed in

    Returns:

      The created TestRun Template object

    References

    test_management.createTestRun

  delete_attachment(filename)

    Deletes Test Run Attachment specified by attachment’s file name. Method is applicable also on Test Run Template.

    Parameters:

      filename – filename to delete

    Returns:

      None

    References

    test_management.deleteTestRunAttachment

  delete_attachment_from_test_record(test_case_id, filename)

    Deletes Test Record Attachment of specified record and attachment’s file name.

    Parameters:

      - test_case_id – The test case to delete the attachment from

      - filename – name of the file to delete

    Returns:

      None

    References

    test_management.deleteAttachmentFromTestRecord

  delete_attachment_from_test_step(test_case_id, test_step_index, filename)

    Deletes Test Step Attachment of the specified step in the specified test record.

    Parameters:

      - test_case_id – The test case to delete the attachment from

      - filename – name of the file to delete

    Returns:

      None

    References

    test_management.deleteAttachmentFromTestRecord

  get_attachment(filename)

    Gets Test Run Attachment specified by attachment’s file name. Method is applicable also on Test Run Template.

    Parameters:

      filename – filename to delete

    Returns:

      TestRunAttachment object

    References

    test_management.getTestRunAttachment

  get_attachments()

    method get_attachments returns all the attachments for the TestRun

    Parameters:

      None –

    Returns:

      ArrayOfTestRunAttachments object

    References

    test_management.getTestRunAttachments

  get_custom_field(field_name)

    gets custom field values.

    Parameters:

      field_name – name of the custom field

    Returns:

      value of the custom field.

    Note: Polarion WSDL currently does not publish the list of custom

      fields, so this function cannot do any verification if the field is valid.

  classmethod get_defined_custom_field_types(project_id)

    Gets all the custom fields defined for the specified project. the custom fields are all either of type CustomFieldType or EnumCustomFieldType in the case where the field is an enumeration. These 2 classes are mostly interchangeable.

    Parameters:

      project_id – the project to get the custom fields from

    Returns:

      list of all the custom fields

    References

    testmanagement.getDefinedTestRunCustomFieldTypes

  get_wiki_content()

    method get_wiki_content returns the wiki content for the Test Run

    Parameters:

      None –

    Returns:

      Text object containing the wiki content

    References

    test_management.getWikiContentForTestRun

  property records

    function to return all the test records of a TestRun. The records array for dynamic queries/documents only includes executed records. This returns the unexecuted ones as well.

    Parameters:

      None –

    Returns:

      list of TestRecords

  classmethod search(query, fields=['test_run_id'], sort='test_run_id', limit=None, search_templates=False, project_id=None)

    class method search executes the given query and returns the results

    Parameters:

      - query – the Polarion query used to find test runs

      - fields – test run fields that should be initialized, all other fields will be null. Field names are from the object’s attributes and not the Polarion field names, default [“test_run_id”]. If you want all of the fields to be returned, pass [] for this parameter.

      - sort – the field used to sort results, default is test_run_id

      - limit (int) – the maximum number of records to be returned, -1 for no limit, default None.

      - search_templates (bool) – if set, searches the templates instead of the test runs, default False

      - project_id – if set, searches the project id, else default project

    Returns:

      list of TestRun objects

    References

    test_management.searchTestRunTemplates test_management.searchTestRunTemplatesLimited test_management.searchTestRunTemplatesWithFields test_management.searchTestRunTemplatesWithFieldsLimited test_management.searchTestRuns test_management.searchTestRunLimited test_management.searchTestRunsWithFields test_management.searchTestRunsWithFieldsLimited

  update()

    method update updates the testRun object with the attribute values currently in the object.

    Parameters:

      None –

    Returns

      None

    References

    test_management.updateTestRun

  update_attachment(path, original_filename, title)

    method update_attachment updates the specified attachment to the current test run

    Parameters:

      - path – file path to upload

      - original_filename – The file that we want to overwrite with the new file

      - title – u.User friendly name of the file

    Returns:

      None

    Notes

    Raises an error if the test run object is not populated.

    References

    test_management.updateTestRunAttachment

  update_summary_defect(source, total_failures, total_errors, total_tests, defect_template_id)

    method update-summary_defect creates or updates the summary defect Work Item of a test run.

    Parameters:

      - source (string) – source of the summary defect, used to generate the description content.

      - total_failures (int) – amount of total failures in the test run, used to generate the description content.

      - total_errors (int) – amount of total errors in the test run, used to generate the description content.

      - total_tests (int) – amount of total tests in the test run, used to generate the description content.

      - defect_template_id – ID of the defect template Work Item to be used, the configured template will be used if None.

    Returns:

      the created or updated _WorkItem

    References

    test_management.updateSummaryDefect

  update_test_record_by_fields(test_case_id, test_result, test_comment, executed_by, executed, duration, defect_work_item_id=None)

    method update_test_record_by_fields updates a test record.

    Parameters:

      - test_case_id – id of the test case to update.

      - test_result – Must be one of the following values: passed failed blocked

      - test_comment – (str or Text object) - may be None

      - executed_by (str) – user id

      - executed – date when the test case has been executed

      - duration – duration of the test case execution, any negative value is treated as None.

      - defect_work_item_id – _WorkItem id of defect, can be None Default: None

    Returns:

      None

    Notes

    Only a test case that has already been executed may be updated using this function. To execute a test record use the add_test_record_by_fields function

    References

    test_management.updateTestRecord

  update_test_record_by_object(test_case_id, test_record, manual_state_change=False)

    method update_test_record_by_object, adds a test record for the given test case based on the TestRecord object passed in. In addition, the test run is checked for completeness and the test run state will change accordingly. Test Run states are [“notrun”, “finished”, “inprogress”].

    Parameters:

      - test_case_id (str) – the test case id that the record is related to.

      - test_record (TestRecord or Polarion TestRecord) –

      - manual_state_change (boolean) – Change the test run result automatically or manual.

    Returns:

      None

    References

    test_management.updateTestRecordAtIndex

  update_wiki_content(content)

    method update_wiki_content updates the wiki for the current TestRun

    Parameters:

      Content (str or Text object) –

    Returns:

      None

    References

    test_management.updateWikiContentForTestRun

  verify_params(**kwargs)

    function that checks if all the kwargs are valid attributes.

    Parameters:

      **kwargs – keyword arguments. Test run attributes can be passed in to be set upon creation. Required fields must be passed in

    Exceptions:

      PyleroLibException - if params are unknown

  verify_required()

    function that checks if all required fields are passed in

    Exceptions:

      PyleroLibException - if required params are not passed in

pylero.test_run.create_incident_report(test_run, test_record, test_case)

pylero.test_run.generate_description(test_run, test_case, test_record)

## pylero.test_run_attachment module

class pylero.test_run_attachment.ArrayOfTestRunAttachment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.test_run_attachment.TestRunAttachment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns4:TestRunAttachment class

  author
    Type:

      User

  file_name
    Type:

      string

  id
    Type:

      string

  length
    Type:

      long

  test_run_uri
    Type:

      SubterraURI

  title
    Type:

      string

  updated
    Type:

      dateTime

  url
    Type:

      string

## pylero.test_step module

class pylero.test_step.ArrayOfTestStep(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.test_step.TestStep(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:TestStep class

  values
    Type:

      ArrayOfText

## pylero.test_step_result module

class pylero.test_step_result.ArrayOfTestStepResult(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.test_step_result.TestStepResult(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:TestStepResult class

  attachments
    Type:

      ArrayOfTestRunAttachment

  comment
    Type:

      Text

  result
    Type:

      EnumOptionId

## pylero.test_steps module

class pylero.test_steps.TestSteps(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:TestSteps class

  keys
    Type:

      ArrayOfEnumOptionId

  steps
    Type:

      ArrayOfTestStep

## pylero.tests_configuration module

class pylero.tests_configuration.TestsConfiguration(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:TestsConfiguration class

  defect_auto_assignement_enabled
    Type:

      boolean

  defect_reuse_type
    Type:

      string

  defect_template
    Type:

      string

  defect_to_test_case_link_role_id
    Type:

      string

  defect_work_item_type
    Type:

      string

  defects_project
    Type:

      string

  fields_to_copy_from_test_case_to_defect
    Type:

      Properties

  fields_to_copy_from_test_run_to_linked_defect
    Type:

      Properties

  fields_to_copy_from_test_run_to_new_defect
    Type:

      Properties

  max_created_defects
    Type:

      int

  max_created_defects_percent
    Type:

      int

  result_error_enum_id
    Type:

      string

  result_failed_enum_id
    Type:

      string

  result_passed_enum_id
    Type:

      string

  retest_allowed
    Type:

      boolean

  status_error_enum_id
    Type:

      string

  status_failed_enum_id
    Type:

      string

  status_ok_enum_id
    Type:

      string

  summary_defect_severity
    Type:

      string

  test_case_id_custom_field
    Type:

      string

  test_case_template
    Type:

      string

  test_case_test_comment_field_id
    Type:

      string

  test_case_test_result_field_id
    Type:

      string

  test_case_work_item_type
    Type:

      string

  test_run_template
    Type:

      string

## pylero.text module

class pylero.text.ArrayOfText(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object containing list of Text objects

class pylero.text.Text(content=None, suds_object=None)

  Bases: `BasePolarion`

  Object to manage Polarion TestManagement WS tns2:Text

  Rich text object

  content

    the formatted text

    Type:

      str

  content_type

    indication of how content is formatted (eg. text/html)

    Type:

      str

  content_lossy
    Type:

      bool

  __init__(content=None, suds_object=None)

## pylero.time_point module

class pylero.time_point.TimePoint(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:TimePoint class

  closed
    Type:

      boolean

  description
    Type:

      Text

  earliest_planned_start
    Type:

      date

  time_point_id
    Type:

      string

  name
    Type:

      string

  time
    Type:

      date

## pylero.user module

class pylero.user.ArrayOfUser(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.user.User(user_id=None, suds_object=None, uri=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:User class

  description
    Type:

      Text

  disabled_notifications
    Type:

      boolean

  email
    Type:

      string

  user_id
    Type:

      string

  name
    Type:

      string

  vote_uris
    Type:

      ArrayOfSubterraURI

  watche_uris
    Type:

      ArrayOfSubterraURI

  __init__(user_id=None, suds_object=None, uri=None)

    User constructor.

    Parameters:

      - user_id – when given, the object is populated with user’s data

      - suds_object – Polarion User object. When given, the object is populated by object data.

      - uri – when given, the object is populated with user’s data

    Notes

    Either user_id, suds_object or uri can be passed in, not multiple

    References

    Project.getUser Project.getUserByUri

  classmethod create_user(user_id)

    class method create_user that creates a Polarion user.

    Parameters:

      user_id – the id of the user to create (login name)

    Returns

      new User object

    References

    Project.createUser(java.lang.String)

  get_context_roles(location)

    Returns the context (project) roles for the user at given location.

    Parameters:

      location – the location of the context (project/project group)

    Returns:

      list of roles

    References

    Security.getContextRolesForUser

  get_roles(location)

    Returns all global and context roles for the context at given location assigned to the user.

    Parameters:

      location –

    Returns:

      list of roles

    References

    Security.getRolesForUser

  get_user_avatar_url()

    method get_user_avatar_url, returns a string with the relative URL of the user’s avatar.

    Parameters:

      None –

    Notes

    Raises an error if the User is not populated.

    References

    Project.getUserAvatarURL

  classmethod get_user_from_token(token)

    Returns the username of the user that has the assigned token.

    Parameters:

      token –

    Returns:

      user_id

    References

    Security.getUserFromToken

  classmethod get_users()

    class method that returns all the system users

    Parameters:

      None –

    Returns:

      list containing User objects for all users.

    References

    Project.getUsers

  has_permission(permission, project_id)

    Checks if given permission is granted to the user.

    Parameters:

      - permission – the permission to check.

      - project_id – the id of the project to check the permission in, None to check global permissions.

    Returns:

      bool

    References

    Security.hasPermission

  update()

    method update, updates Polarion with the User attributes

    Parameters:

      None –

    Notes

    Raises an error if the User is not populated.

    References

    p.Project.updateUser

## pylero.wiki_page module

class pylero.wiki_page.WikiPage(fields=None, uri=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:WikiPage class

  attachments
    Type:

      ArrayOfWikiPageAttachment

  author
    Type:

      User

  created
    Type:

      dateTime

  home_page_content
    Type:

      Text

  wiki_page_id
    Type:

      string

  linked_page_uris
    Type:

      ArrayOfSubterraURI

  location
    Type:

      Location

  page_location
    Type:

      Location

  page_name
    Type:

      string

  project
    Type:

      Project

  space_id
    Type:

      string

  title
    Type:

      string

  type
    Type:

      string

  updated
    Type:

      dateTime

  updated_by
    Type:

      User

  __init__(fields=None, uri=None, suds_object=None)
    Parameters:

      fields – list of object fields to be returned in the object

    Returns:

      None

    References

    Tracker.getWikiPageByUri tracker.getWikiPageByUriWithFields

  classmethod get_wiki_pages(project_id, space_id, fields)

    Returns Wiki Pages from given project and space.

    Parameters:

      - project_id – project id (not null)

      - space_id – space id (not null)

    Returns:

      list of WikiPage objects

  classmethod query(query, is_sql=False, fields=['wiki_page_id'], sort='wiki_page_id', limit=-1, baseline_revision=None, query_uris=False)

    Searches for Wiki Pages .

    Parameters:

      - query – query, either Lucene or SQL

      - is_sql (bool) – determines if the query is SQL or Lucene

      - fields – list of field names to fill in the returned Modules/Documents (can be null). For nested structures in the lists you can use following syntax to include only subset of fields: myList.LIST.key (e.g. linkedWorkItems.LIST.role). For custom fields you can specify which fields you want to be filled using following syntax: customFields.CUSTOM_FIELD_ID (e.g. customFields.risk). default - list containing “wiki_page_id”

      - sort – Lucene sort string, default wiki_page_id

      - limit – how many results to return (-1 means everything (default))

      - baseline_revision (str) – if populated, query done in specified rev default - None

      - query_uris – returns a list of URI of the Modules found, instead of a list of WikiPage objects. default - False

    Returns:

      list of modules

    References

    queryWikiPageUris queryWikiPageUrisBySQL queryWikiPageUrisInBaseline queryWikiPageUrisInBaselineBySQL queryWikiPages queryWikiPagesBySQL queryWikiPagesInBaseline queryWikiPagesInBaselineBySQL

## pylero.wiki_page_attachment module

class pylero.wiki_page_attachment.ArrayOfWikiPageAttachment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.wiki_page_attachment.WikiPageAttachment(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:WikiPageAttachment class

  author
    Type:

      User

  file_name
    Type:

      string

  wiki_page_attachment_id
    Type:

      string

  length
    Type:

      long

  title
    Type:

      string

  updated
    Type:

      dateTime

  url
    Type:

      string

## pylero.work_item module

class pylero.work_item.BusinessCase(project_id=None, work_item_id=None, suds_object=None, uri=None, fields=None, revision=None)

  Bases: `_SpecificWorkItem`

class pylero.work_item.ChangeRequest(project_id=None, work_item_id=None, suds_object=None, uri=None, fields=None, revision=None)

  Bases: `_SpecificWorkItem`

class pylero.work_item.Defect(project_id=None, work_item_id=None, suds_object=None, uri=None, fields=None, revision=None)

  Bases: `_SpecificWorkItem`

class pylero.work_item.IncidentReport(project_id=None, work_item_id=None, suds_object=None, uri=None, fields=None, revision=None)

  Bases: `_SpecificWorkItem`

class pylero.work_item.Requirement(project_id=None, work_item_id=None, suds_object=None, uri=None, fields=None, revision=None)

  Bases: `_SpecificWorkItem`

class pylero.work_item.Risk(project_id=None, work_item_id=None, suds_object=None, uri=None, fields=None, revision=None)

  Bases: `_SpecificWorkItem`

class pylero.work_item.Task(project_id=None, work_item_id=None, suds_object=None, uri=None, fields=None, revision=None)

  Bases: `_SpecificWorkItem`

class pylero.work_item.TestCase(project_id=None, work_item_id=None, suds_object=None, uri=None, fields=None, revision=None)

  Bases: `_SpecificWorkItem`

class pylero.work_item.TestSuite(project_id=None, work_item_id=None, suds_object=None, uri=None, fields=None, revision=None)

  Bases: `_SpecificWorkItem`

pylero.work_item.newclass

  alias of `Risk`

## pylero.work_record module

class pylero.work_record.ArrayOfWorkRecord(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

class pylero.work_record.WorkRecord(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns5:WorkRecord class

  comment
    Type:

      string

  date
    Type:

      date

  work_record_id
    Type:

      string

  time_spent
    Type:

      duration

  type
    Type:

      EnumOptionId

  user
    Type:

      User

## pylero.workflow_action module

class pylero.workflow_action.WorkflowAction(obj_id=None, suds_object=None)

  Bases: `BasePolarion`

  Object to handle the Polarion WSDL tns3:WorkflowAction class

  action_id
    Type:

      int

  action_name
    Type:

      string

  cleaned_features
    Type:

      ArrayOf_xsd_string

  native_action_id
    Type:

      string

  required_features
    Type:

      ArrayOf_xsd_string

  suggested_features
    Type:

      ArrayOf_xsd_string

  target_status
    Type:

      EnumOptionId

  unavailability_message
    Type:

      string

## Module contents