ó
V¾÷Xc           @` s*  d  Z  d d l m Z d d l m Z d d l m Z d d l Z e e d ƒ r‰ e e d ƒ r‰ d d l Z e j e j	 ƒ  e j
 Bƒ n  d d l Z d d l m Z d d	 l m Z d d
 l m Z d d l m Z d d l m Z e Z d „  Z d e j f d „  ƒ  YZ e d k r&e j ƒ  n  d S(   s   Tests for 2D LSTMs.i    (   t   absolute_import(   t   division(   t   print_functionNt   getdlopenflagst   setdlopenflags(   t   lstm2d(   t   constant_op(   t	   test_util(   t	   variables(   t   testc          G` s   t  j j d |  ƒ j d ƒ S(   Nt   sizet   f(   t   npt   randomt   uniformt   astype(   R
   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm2d_test.pyt   _rand'   s    t
   Lstm2DTestc           B` s>   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   c      
   C` sy   |  j  ƒ  g t j t d d d d ƒ ƒ } t j | ƒ } t j ƒ  j ƒ  | j	 ƒ  } |  j
 t | j ƒ d ƒ Wd  QXd  S(   Ni   i   i   i   i   (   i   i   i   (   t   test_sessionR   t   constantR   R   t   images_to_sequenceR   t   global_variables_initializert   runt   evalt   assertEqualt   tuplet   shape(   t   selft   inputst   outputst   result(    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm2d_test.pyt   testImagesToSequenceDims-   s    c      
   C` sy   |  j  ƒ  g t j t d d d ƒ ƒ } t j | d ƒ } t j ƒ  j ƒ  | j	 ƒ  } |  j
 t | j ƒ d ƒ Wd  QXd  S(   Ni   i   i   i   i   (   i   i   i   i   (   R   R   R   R   R   t   sequence_to_imagesR   R   R   R   R   R   R   (   R   R   R   R   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm2d_test.pyt   testSequenceToImagesDims5   s    c         C` sŒ   |  j  ƒ  z d } t j t | Œ  ƒ } t j | ƒ } t j | | d ƒ } t j ƒ  j	 ƒ  | j
 ƒ  } |  j t | j ƒ | ƒ Wd  QXd  S(   Ni   i   i   i   i    (   i   i   i   i   (   R   R   R   R   R   R   R    R   R   R   R   R   R   R   (   R   R
   R   t   sequenceR   R   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm2d_test.pyt   testImagesAndSequenceDims=   s    c      
   C` s|   |  j  ƒ  j t j t d d d d ƒ ƒ } t j | d ƒ } t j ƒ  j ƒ  | j	 ƒ  } |  j
 t | j ƒ d ƒ Wd  QXd  S(   Ni   i   i   i   i   (   i   i   i   i   (   R   R   R   R   R   t   separable_lstmR   R   R   R   R   R   R   (   R   R   R   R   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm2d_test.pyt   testSeparableLstmDimsG   s    c      
   C` s|   |  j  ƒ  j t j t d d d d ƒ ƒ } t j | d ƒ } t j ƒ  j ƒ  | j	 ƒ  } |  j
 t | j ƒ d ƒ Wd  QXd  S(   Ni   i   i   i   i   (   i   i   i   (   R   R   R   R   R   t   reduce_to_sequenceR   R   R   R   R   R   R   (   R   R   R   R   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm2d_test.pyt   testReduceToSequenceDimsO   s    c      
   C` s   |  j  ƒ  m t j t d d d d ƒ ƒ } t j | d d ƒ } t j ƒ  j ƒ  | j	 ƒ  } |  j
 t | j ƒ d ƒ Wd  QXd  S(   Ni   i   i   i   i   i   (   i   i   (   R   R   R   R   R   t   reduce_to_finalR   R   R   R   R   R   R   (   R   R   R   R   (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm2d_test.pyt   testReduceToFinalDimsW   s    (   t   __name__t
   __module__R   R!   R#   R%   R'   R)   (    (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm2d_test.pyR   +   s   			
		t   __main__(   t   __doc__t
   __future__R    R   R   t   syst   hasattrt   ctypesR   R   t   RTLD_GLOBALt   numpyR   t    tensorflow.contrib.ndlstm.pythonR   t
   lstm2d_libt   tensorflow.python.frameworkR   R   t   tensorflow.python.opsR   t   tensorflow.python.platformR	   R   t   TensorFlowTestCaseR   R*   t   main(    (    (    sn   /tmp/pip-build-h1VYrz/tensorflow/tensorflow-1.0.1.data/purelib/tensorflow/contrib/ndlstm/python/lstm2d_test.pyt   <module>   s$   	5