

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
  <meta charset="utf-8">
  
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  <title>apache_beam.runners.dataflow.test_dataflow_runner module &mdash; Apache Beam  documentation</title>
  

  
  
  
  

  

  
  
    

  

  
  
    <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
  

  

  
        <link rel="index" title="Index"
              href="genindex.html"/>
        <link rel="search" title="Search" href="search.html"/>
    <link rel="top" title="Apache Beam  documentation" href="index.html"/>
        <link rel="up" title="apache_beam.runners.dataflow package" href="apache_beam.runners.dataflow.html"/>
        <link rel="next" title="apache_beam.runners.direct package" href="apache_beam.runners.direct.html"/>
        <link rel="prev" title="apache_beam.runners.dataflow.ptransform_overrides module" href="apache_beam.runners.dataflow.ptransform_overrides.html"/> 

  
  <script src="_static/js/modernizr.min.js"></script>

</head>

<body class="wy-body-for-nav" role="document">

   
  <div class="wy-grid-for-nav">

    
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search">
          

          
            <a href="index.html" class="icon icon-home"> Apache Beam
          

          
          </a>

          
            
            
          

          
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>

          
        </div>

        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
          
            
            
              
            
            
              <ul class="current">
<li class="toctree-l1"><a class="reference internal" href="apache_beam.coders.html">apache_beam.coders package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.internal.html">apache_beam.internal package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.io.html">apache_beam.io package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.metrics.html">apache_beam.metrics package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.options.html">apache_beam.options package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.portability.html">apache_beam.portability package</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="apache_beam.runners.html">apache_beam.runners package</a><ul class="current">
<li class="toctree-l2 current"><a class="reference internal" href="apache_beam.runners.html#subpackages">Subpackages</a><ul class="current">
<li class="toctree-l3 current"><a class="reference internal" href="apache_beam.runners.dataflow.html">apache_beam.runners.dataflow package</a><ul class="current">
<li class="toctree-l4"><a class="reference internal" href="apache_beam.runners.dataflow.html#subpackages">Subpackages</a></li>
<li class="toctree-l4 current"><a class="reference internal" href="apache_beam.runners.dataflow.html#submodules">Submodules</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="apache_beam.runners.direct.html">apache_beam.runners.direct package</a></li>
<li class="toctree-l3"><a class="reference internal" href="apache_beam.runners.interactive.html">apache_beam.runners.interactive package</a></li>
<li class="toctree-l3"><a class="reference internal" href="apache_beam.runners.internal.html">apache_beam.runners.internal package</a></li>
<li class="toctree-l3"><a class="reference internal" href="apache_beam.runners.job.html">apache_beam.runners.job package</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="apache_beam.runners.html#submodules">Submodules</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.testing.html">apache_beam.testing package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.tools.html">apache_beam.tools package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.transforms.html">apache_beam.transforms package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.typehints.html">apache_beam.typehints package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.utils.html">apache_beam.utils package</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.error.html">apache_beam.error module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.pipeline.html">apache_beam.pipeline module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.pvalue.html">apache_beam.pvalue module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.version.html">apache_beam.version module</a></li>
</ul>

            
          
        </div>
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
        
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="index.html">Apache Beam</a>
        
      </nav>


      
      <div class="wy-nav-content">
        <div class="rst-content">
          















<div role="navigation" aria-label="breadcrumbs navigation">

  <ul class="wy-breadcrumbs">
    
      <li><a href="index.html">Docs</a> &raquo;</li>
        
          <li><a href="apache_beam.runners.html">apache_beam.runners package</a> &raquo;</li>
        
          <li><a href="apache_beam.runners.dataflow.html">apache_beam.runners.dataflow package</a> &raquo;</li>
        
      <li>apache_beam.runners.dataflow.test_dataflow_runner module</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
            
            <a href="_sources/apache_beam.runners.dataflow.test_dataflow_runner.rst.txt" rel="nofollow"> View page source</a>
          
        
      </li>
    
  </ul>

  
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
            
  <div class="section" id="module-apache_beam.runners.dataflow.test_dataflow_runner">
<span id="apache-beam-runners-dataflow-test-dataflow-runner-module"></span><h1>apache_beam.runners.dataflow.test_dataflow_runner module<a class="headerlink" href="#module-apache_beam.runners.dataflow.test_dataflow_runner" title="Permalink to this headline">¶</a></h1>
<p>Wrapper of Beam runners that’s built for running and verifying e2e tests.</p>
<dl class="class">
<dt id="apache_beam.runners.dataflow.test_dataflow_runner.TestDataflowRunner">
<em class="property">class </em><code class="descclassname">apache_beam.runners.dataflow.test_dataflow_runner.</code><code class="descname">TestDataflowRunner</code><span class="sig-paren">(</span><em>cache=None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/runners/dataflow/test_dataflow_runner.html#TestDataflowRunner"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.dataflow.test_dataflow_runner.TestDataflowRunner" title="Permalink to this definition">¶</a></dt>
<dd><p>Bases: <a class="reference internal" href="apache_beam.runners.dataflow.dataflow_runner.html#apache_beam.runners.dataflow.dataflow_runner.DataflowRunner" title="apache_beam.runners.dataflow.dataflow_runner.DataflowRunner"><code class="xref py py-class docutils literal"><span class="pre">apache_beam.runners.dataflow.dataflow_runner.DataflowRunner</span></code></a></p>
<dl class="method">
<dt id="apache_beam.runners.dataflow.test_dataflow_runner.TestDataflowRunner.run_pipeline">
<code class="descname">run_pipeline</code><span class="sig-paren">(</span><em>pipeline</em>, <em>options</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/runners/dataflow/test_dataflow_runner.html#TestDataflowRunner.run_pipeline"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.dataflow.test_dataflow_runner.TestDataflowRunner.run_pipeline" title="Permalink to this definition">¶</a></dt>
<dd><p>Execute test pipeline and verify test matcher</p>
</dd></dl>

<dl class="method">
<dt id="apache_beam.runners.dataflow.test_dataflow_runner.TestDataflowRunner.build_console_url">
<code class="descname">build_console_url</code><span class="sig-paren">(</span><em>options</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/runners/dataflow/test_dataflow_runner.html#TestDataflowRunner.build_console_url"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.dataflow.test_dataflow_runner.TestDataflowRunner.build_console_url" title="Permalink to this definition">¶</a></dt>
<dd><p>Build a console url of Dataflow job.</p>
</dd></dl>

<dl class="method">
<dt id="apache_beam.runners.dataflow.test_dataflow_runner.TestDataflowRunner.wait_until_in_state">
<code class="descname">wait_until_in_state</code><span class="sig-paren">(</span><em>expected_state</em>, <em>timeout=600</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/runners/dataflow/test_dataflow_runner.html#TestDataflowRunner.wait_until_in_state"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.dataflow.test_dataflow_runner.TestDataflowRunner.wait_until_in_state" title="Permalink to this definition">¶</a></dt>
<dd><p>Wait until Dataflow pipeline enters a certain state.</p>
</dd></dl>

</dd></dl>

</div>


           </div>
           <div class="articleComments">
            
           </div>
          </div>
          <footer>
  
    <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
      
        <a href="apache_beam.runners.direct.html" class="btn btn-neutral float-right" title="apache_beam.runners.direct package" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
      
      
        <a href="apache_beam.runners.dataflow.ptransform_overrides.html" class="btn btn-neutral" title="apache_beam.runners.dataflow.ptransform_overrides module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
      
    </div>
  

  <hr/>

  <div role="contentinfo">
    <p>
        &copy; Copyright .

    </p>
  </div>
  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. 

</footer>

        </div>
      </div>

    </section>

  </div>
  


  

    <script type="text/javascript">
        var DOCUMENTATION_OPTIONS = {
            URL_ROOT:'./',
            VERSION:'',
            COLLAPSE_INDEX:false,
            FILE_SUFFIX:'.html',
            HAS_SOURCE:  true,
            SOURCELINK_SUFFIX: '.txt'
        };
    </script>
      <script type="text/javascript" src="_static/jquery.js"></script>
      <script type="text/javascript" src="_static/underscore.js"></script>
      <script type="text/javascript" src="_static/doctools.js"></script>

  

  
  
    <script type="text/javascript" src="_static/js/theme.js"></script>
  

  
  
  <script type="text/javascript">
      jQuery(function () {
          SphinxRtdTheme.StickyNav.enable();
      });
  </script>
   

</body>
</html>