Skip to content

Add representation

payno requested to merge payno/pypushflow:add_representation into master

Goal

embed 'representation' in pypushflow

TODO

  • add a setup.py ...
  • define concrete scenarii and use case
  • add some unittest
    • add structure for unit test
    • add unit test dedicated to representation
    • add general unit test for pypushflow
  • include representation in the project
  • define clearly the user API
  • add some tutorial
  • add some documentation
  • add unit test for
    • executable class
    • class with handlers
    • function
    • script with a run function

extra

close #1 (closed)

Details

Good


- add representation submodule (so you should now clone the project with --recursive option or if already clone you can go for git submodule update --init --recursive)
- add some unittest
- add documentation (at least the structure but there is plenty of TODO and uncomented function / class...)
- add automatic generation of the documentation. Once a PR is merge on the master it will call automatic generation of documentation and store it in https://workflow.gitlab-pages.esrf.fr/pypushflow/.
For now it has only be generated on my side. You can view it here: https://payno.gitlab-pages.esrf.fr/pypushflow/
- add ci
- some PEP8

Bad
```

- turn off the 'mongoDB' stuff for now. But as we discuss this should be an add-on. Once this part is done I can try to have a look at it.
- fail to execute the unit test from 'TestWorkflows' but it looks like it need to have mongodb install. So for now it is off.
- for the 'TestPythonActor' the full name of the script is given ('pypushflow.test.pythonActorTest.py'). PythonActor originally expect the given script contains a 'run' function to be executed. But from the 'representation' design it should be 'pypushflow.test.pythonActorTest.run' instead. But for now we let the 'script' variable. So when using this variable we make a workaround to translate in order to keep compatibility. But this workaround and the 'script' parameter should be removed and replace by giving directly the representation.scheme.node.Node class. Current workaround allows to keep code compatibility.
- maybe actor name need to be rework a bit.
Edited by payno

Merge request reports