ó
ã™xTc           @   s7  d  d l  m Z d „  Z d Z d e Z d e Z d e Z d e Z d e Z d	 Z	 d
 Z
 d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d Z d  Z  d! Z! d" Z" d# „  Z# d$ Z$ d% Z% d& Z& d' Z' d( Z( d) „  Z) e* d* k r3e) ƒ  n  d+ S(,   iÿÿÿÿ(   t   divisionc          C   s  d d l  m }  m } |  t ƒ } | j t d ƒ k s= t ‚ |  t ƒ } | j t d ƒ k sd t ‚ |  t ƒ } | j t d ƒ k s‹ t ‚ |  t	 ƒ } | j t d ƒ k s² t ‚ |  t
 ƒ } | j t d ƒ k sÙ t ‚ |  t ƒ } | sò t ‚ |  t ƒ } t | ƒ t | d d	 d
 ƒf ƒ k s+t ‚ |  t ƒ } t | ƒ t | d d	 d ƒf ƒ k sdt ‚ |  t ƒ } t | ƒ t | d d	 d ƒf ƒ k s�t ‚ |  t ƒ } t | ƒ t | d d	 d
 ƒf ƒ k sÖt ‚ |  t ƒ } t | ƒ t | d d	 d
 ƒ| d d	 d ƒf ƒ k st ‚ |  t ƒ } t | ƒ t | d d	 d
 ƒf ƒ k sWt ‚ |  t ƒ } t | ƒ t | d d	 d
 ƒf ƒ k s�t ‚ |  t ƒ } | s©t ‚ |  t ƒ } t | ƒ t | d d	 d ƒf ƒ k sât ‚ |  t ƒ } | sút ‚ |  t d d ƒ} | st ‚ |  t ƒ } | s2t ‚ |  t ƒ } t | ƒ t | d d	 d
 ƒf ƒ k skt ‚ |  t ƒ } t | ƒ t | d d	 d
 ƒf ƒ k s¤t ‚ |  t ƒ } t | ƒ t | d d	 d
 ƒf ƒ k sÝt ‚ |  t ƒ } | söt ‚ |  t ƒ } | st ‚ |  t ƒ } | s(t ‚ |  t ƒ } | sAt ‚ |  t ƒ } | sZt ‚ |  t ƒ } | sst ‚ |  t  ƒ } | sŒt ‚ |  t! ƒ } | s¤t ‚ |  t! d d ƒ} | sÃt ‚ |  t" ƒ } | sÜt ‚ |  t# ƒ } | sõt ‚ |  t$ ƒ } | st ‚ d  S(   Niÿÿÿÿ(   t   unused_importst   imported_namet   foot   fart   closet   bazt   barbart   bozbozt   linenoi   i   t   bari   i
   t   ignored_importss   libtbx.load_envt"   ignore_imports_flagged_by_commentss   # import dependency(   R   R   s   closeR   R   R   (   R   s   closeR   R   R   (   R   R   s   closeR   R   (   R   s   closeR   R   (   R   s   closeR   R   R   (   s   libtbx.load_env(   s   # import dependency(%   t   libtbx.python_code_parsingR   R   t   unused_imports_test_case_1_1t   namest   sett   AssertionErrort   unused_imports_test_case_1_2t   unused_imports_test_case_1_3t   unused_imports_test_case_1_4t   unused_imports_test_case_1_5t   unused_imports_test_case_2t   unused_imports_test_case_3t   unused_imports_test_case_4t   unused_imports_test_case_5t   unused_imports_test_case_6t   unused_imports_test_case_7t   unused_imports_test_case_7_bist   unused_imports_test_case_8t   unused_imports_test_case_9t   unused_imports_test_case_10t   unused_imports_test_case_11t   unused_imports_test_case_12t   unused_imports_test_case_13t   unused_imports_test_case_14t   unused_imports_test_case_15t   unused_imports_test_case_16t   unused_imports_test_case_17t   unused_imports_test_case_18t   unused_imports_test_case_19t   unused_imports_test_case_20t   unused_imports_test_case_21t   unused_imports_test_case_22t   unused_imports_test_case_23t   unused_imports_test_case_24t   unused_imports_test_case_25t   unused_imports_test_case_26(   R   R   t   unused(    (    sL   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/libtbx/tst_python_code_parsing.pyt   exercise_unused_imports   s˜    					----!---		---	sw   import foo
import far, near as close
from bar import baz
from foobar import barbar, bazbaz as bozboz
from buz import *
s   %s
s   %s
print foo.z
s   %s
print baz.x
s   %s
print foo.z
print baz.x
s   %s
print foo.baz
s#   import foo

def f():
  print foo.z
s'   import foo

def f():
  print bar.foo.z
s4   import bar

def f():
  import foo
  print bar.foo.z
sL   import bar

def f():
  import foo
  def g():
    print bar.foo.z
  return g
sH   import bar

def f():
  import foo
  def g():
    print foo.z
  return g
sH   import bar

def f():
  def g():
    print foo.z
  import foo
  return g
sf   import bar

def f():
  def g():
    print foo.z
  import foo
  def h():
    print foo.y
  return g, h
sI   import foo, bar

class klass(object):

  def f(self):
    self.x = bar.z
sY   import foo, bar

class klass(object):

  attr = foo.x

  def f(self):
    self.x = bar.z
s`   import bar

class klass(object):

  attr = foo.x

  def f(self):
    self.x = bar.z

import foo
sG   import libtbx.load_env

def run():
  libtbx.env.build_options.report()
s   import foo.bar
print foo.bar.x
s"   import foo, bar
print foo.moo.maz
s$   import foo, bar
print foo.moo().moz
s%   import foo, bar
print foo.moo[5].moz
s"   from foo import bobar
print bobar
s'   import foobar
print '.'.join(foobar.z)
s+   import foz
def faaz(arg=foz.x.yyy):
  pass
s)   import foo.barr
hasattr(foo.barr, 'bok')
s:   import foo.barr
class bokka(kool, foo.barr.klass):
  pass
sF   from foo.bar import bakar
import foo.bar.bakar.baaz

print bakar.baaz
s7   from foo.bar import boz
def f():
  print g( boz(q) ).k
s9   from scitbx.array_family import flex # import dependency
sL   from foo.bar import boz
import baz.buz
def f():
  boz.x = 1
  baz.buz.y = 2
s:   from foo.bar import boz

def f():
  return g(a=boz.h()).x
sn   from foo.bar import boz
import fooo.baz

def f():
  return g[boz.h()].x

def h():
  return g[fooo.baz.x:1000]
c          C   s  d d l  m }  m } |  t ƒ } | j t d	 ƒ k s= t ‚ |  t ƒ } | j t ƒ  k sa t ‚ |  t ƒ } | j t d
 ƒ k sˆ t ‚ |  t	 ƒ } t | ƒ t | d d d d ƒ | d d d d ƒ f ƒ k sÖ t ‚ |  t
 ƒ } | j t d ƒ k sý t ‚ d  S(   Niÿÿÿÿ(   t   find_old_style_classest   old_style_classR   R
   t   nameR	   i   i   (   s   foo(   s   bar(   s   foo(   R   R2   R3   t   old_style_class_test_case_1R   R   R   t   old_style_class_test_case_2t   old_style_class_test_case_3t   old_style_class_test_case_4t   old_style_class_test_case_5(   R2   R3   t	   old_style(    (    sL   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/libtbx/tst_python_code_parsing.pyt   exercise_old_style_classes7  s    $s   class foo:
  pass
s   class foo(object):
  pass
s*   class bar:
  pass

class foo(bar):
  pass
s'   class bar:
  pass

class foo():
  pass
s!   def bar():
  class foo:
    pass
c           C   s   t  ƒ  t ƒ  d GHd  S(   Nt   OK(   R1   R;   (    (    (    sL   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/libtbx/tst_python_code_parsing.pyt   rune  s    t   __main__N(+   t
   __future__R    R1   t!   unused_imports_test_case_1_headerR   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R    R!   R"   R#   R$   R%   R&   R'   R(   R)   R*   R+   R,   R-   R.   R/   R;   R5   R6   R7   R8   R9   R=   t   __name__(    (    (    sL   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/libtbx/tst_python_code_parsing.pyt   <module>   sT   	U







			