Note
This module provides tests to check the compatibility of the client with the WSDL description got from the ICAT server. It is mainly useful for the package maintainer.
Bases: object
Provide checks for the ICAT schema from a given server.
Check that the entities defined in the ICAT client are in sync with the WSDL schema got from the ICAT server.
Return a list of the types defined in the WSDL.
Search for entities defined at the server.
Return a dict with type names as keys and EntityInfo objects as values.
Check consistency of the ICAT client with the server schema.
Report any abnormalities as warnings to the logger. Returns the number of warnings emitted.
Generate Python source code matching the ICAT schema.
Generate source code for a set of classes that match the entity info found at the server. The source code is returned as a string.
The Python classes are created as a hierarchy. It is assumed that there is one abstract base type which is the root of the genealogy tree. In the case of the ICAT 4.2.* schema, this assumptions holds, the base is suds.sudsobject.entityBaseBean.
Entity classes having children in the hierarchy are assumed to be abstract. In this case the attribut icat.entity.Entity.BeanName is set to None.
| Parameters: |
|
|---|---|
| Returns: | Python source. |
| Return type: | str |
| Raises GenealogyError: | |
if the genealogy tree defined by genealogyrules is not consistent. |
|