tree: f1a007517704fb1f0778f3b0a1ebf86b3dd4ecb2 [path history] [tgz]
  1. bad_module.py
  2. good_module.py
  3. notebook.ipynb
  4. README.md
  5. run.py
examples/validation/static_validator/README.md

Example showing graph validation

This uses the StaticValidator class to validate a graph.

This specifically show how, for example, you can validate tags on functions.

  • run.py shows the validator and how to wire it in
  • good_module.py shows a node with the correct tags
  • bad_module.py shows a node with the wrong tags
  • notebook.ipynb shows how to run the same code in a notebook

To run the example, run python run.py and you should see the following output:

# good_module.py ran
{'foo': 'Hello, world!'}

# bad_module.py didn't have the right tags so graph building errored out
...
Hamilton.lifecycle.base.ValidationException: Node validation failed! 1 errors encountered:
  foo: Node bad_module.foo is an output node, but does not have a table_name tag.

Alternatively you can run this all via the notebook.ipynb.