Skip to content

Output of the example for grouping in docs is wrong #333

@wchliao

Description

@wchliao

Hello.

In the Group Commands section (https://github.com/google/python-fire/blob/master/docs/guide.md#grouping-commands), the example code is

class IngestionStage(object):

  def run(self):
    return 'Ingesting! Nom nom nom...'

class DigestionStage(object):

  def run(self, volume=1):
    return ' '.join(['Burp!'] * volume)

  def status(self):
    return 'Satiated.'

class Pipeline(object):

  def __init__(self):
    self.ingestion = IngestionStage()
    self.digestion = DigestionStage()

  def run(self):
    self.ingestion.run()
    self.digestion.run()
    return 'Pipeline complete'

if __name__ == '__main__':
  fire.Fire(Pipeline)

and according to the guide

$ python example.py run
Ingesting! Nom nom nom...
Burp!

However, the output is wrong. It should be

$ python example.py run
Pipeline complete

This can be easily fixed.
However, in order to demonstrate the pipeline functionality, I would suggest to change the example to

class IngestionStage(object):

  def run(self):
    return 'Ingesting! Nom nom nom...'

class DigestionStage(object):

  def run(self, volume=1):
    return ' '.join(['Burp!'] * volume)

  def status(self):
    return 'Satiated.'

class Pipeline(object):

  def __init__(self):
    self.ingestion = IngestionStage()
    self.digestion = DigestionStage()

  def run(self):
    ingestion_output = self.ingestion.run()
    digestion_output = self.digestion.run()
    return ingestion_output + digestion_output

if __name__ == '__main__':
  fire.Fire(Pipeline)

and accordingly the output should be

$ python example.py run
Ingesting! Nom nom nom...Burp!

I would like to know which change @dbieber would like.
Thank you.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions