ó
ù`]c           @  sÃ   d  Z  d d l m Z d d l Z d d l Z 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 j ƒ  e j Z e j Z d	 e j f d
 „  ƒ  YZ d S(   uG   
Unit tests for nltk.corpus.wordnet
See also nltk/test/wordnet.doctest
iÿÿÿÿ(   t   unicode_literalsN(   t   SkipTest(   t   WordNetCorpusReader(   t   wordnet(   t
   wordnet_ic(   t   findt   WordnNetDemoc           B  s}   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 RS(   c         C  sq   t  d ƒ } |  j | j ƒ  d ƒ |  j | j ƒ  d d g ƒ |  j | j ƒ  d ƒ |  j | j ƒ  d g ƒ d  S(   Nu   go.v.21u	   move.v.15u   moveu   gou&   have a turn; make one's move in a gameu   Can I go now?(   t   St   assertEqualt   namet   lemma_namest
   definitiont   examples(   t   selft   move_synset(    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   test_retrieve_synset   s    c         C  s{   |  j  t t j d d d ƒƒ t d ƒ g ƒ |  j  t t j d d d ƒƒ t d ƒ t d ƒ t d ƒ t d	 ƒ g ƒ d  S(
   Nu   zapt   posu   nu   zap.n.01u   vu   microwave.v.01u	   nuke.v.01u   zap.v.01u   zap.v.02(   R   t   sortedt   wnt   synsetsR   (   R   (    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   test_retrieve_synsets$   s    .c         C  sÏ  |  j  t d ƒ j ƒ  g  ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  g  ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ t d ƒ t d ƒ t d ƒ t d	 ƒ t d
 ƒ g } |  j  t t d ƒ j ƒ  d  ƒ | ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ t d ƒ t d ƒ t d ƒ t d ƒ t d ƒ g } |  j  t d ƒ j ƒ  d  | ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ t d ƒ g ƒ d  S(   Nu   travel.v.01u   travel.v.02u   travel.v.03u   breakfast.n.1u	   meal.n.01u   banquet.n.02u	   bite.n.04u   breakfast.n.01u   brunch.n.01u   buffet.n.02u   meal.n.1i   u
   Austen.n.1u   writer.n.01u   ambrose.n.01u	   bach.n.01u   barber.n.01u   bartok.n.01u   beethoven.n.01u   composer.n.1u   person.n.01u   entity.n.01u	   sail.v.01u	   fall.v.12u   act.v.01u	   fall.v.17(   R   R   t	   hypernymsR   t   hyponymst   instance_hypernymst   instance_hyponymst   root_hypernyms(   R   t   first_five_meal_hypot   first_five_composer_hypo(    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   test_hyperhyponyms+   s,    %%				&%				%%c         C  s   |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  g  ƒ d  S(   Nu   zap.v.03.nukeu   atomic_warhead.n.01.nukeu   zap.v.03.atomizeu   atomization.n.02.atomizationu   zap.v.03.atomiseu   atomization.n.02.atomisationu   zap.v.03.zap(   R   t   Lt   derivationally_related_forms(   R   (    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt!   test_derivationally_related_formsN   s    c         C  sk  |  j  t d ƒ j ƒ  t d ƒ t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d	 ƒ j ƒ  t d
 ƒ t d ƒ t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ t d ƒ t d ƒ t d ƒ g ƒ d  S(   Nu   dog.n.01u
   canis.n.01u	   pack.n.06u	   flag.n.07u   faculty.n.2u   professor.n.01u   copilot.n.1u	   crew.n.01u	   table.n.2u   leg.n.03u   tabletop.n.01u   tableware.n.01u
   course.n.7u	   meal.n.01u	   water.n.1u   hydrogen.n.01u   oxygen.n.01u   gin.n.1u   gin_and_it.n.01u   gin_and_tonic.n.01u   martini.n.01u   pink_lady.n.01(   R   R   t   member_holonymst   part_meronymst   member_meronymst   part_holonymst   substance_meronymst   substance_holonyms(   R   (    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   test_meronyms_holonyms^   s"    (%%%"%(			c         C  sN   |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ d  S(   Nu   leader.n.1.leaderu   follower.n.01.followeru   increase.v.1.increaseu   decrease.v.01.decrease(   R   R   t   antonyms(   R   (    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   test_antonyms{   s    c      
   C  só   |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ t d ƒ t d ƒ t d ƒ t d ƒ t d	 ƒ t d
 ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ d  S(   Nu	   snore.v.1u
   sleep.v.01u	   heavy.a.1u
   dense.s.03u   doughy.s.01u   heavier-than-air.s.01u
   hefty.s.02u   massive.s.04u   non-buoyant.s.01u   ponderous.s.02u	   light.a.1u   weight.n.01u   English.a.1.Englishu   england.n.01.England(   R   R   t   entailmentst   similar_tost
   attributesR   t
   pertainyms(   R   (    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   test_misc_relations„   s    %						%%c         C  s`   |  j  t d ƒ j t d ƒ ƒ t d ƒ g ƒ |  j  t d ƒ j t d ƒ ƒ t d ƒ g ƒ d  S(   Nu   person.n.01u   dog.n.01u   organism.n.01u
   woman.n.01u   girlfriend.n.02(   R   R   t   lowest_common_hypernyms(   R   (    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   test_lch›   s    c         C  ss   |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ |  j  t d ƒ j ƒ  t d ƒ g ƒ d  S(   Nu	   code.n.03u   computer_science.n.01u
   pukka.a.01u
   india.n.01u   freaky.a.01u
   slang.n.02(   R   R   t   topic_domainst   region_domainst   usage_domains(   R   (    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   test_domains¦   s    %%c         C  sv   |  j  t d ƒ j ƒ  d t d ƒ ƒ |  j  t d ƒ j ƒ  d t d ƒ ƒ |  j  t d ƒ j ƒ  d t d	 ƒ ƒ d  S(
   Nu   computer_science.n.01i    u   access.n.05u   germany.n.01i   u   trillion.n.02u
   slang.n.02i   u   airhead.n.01(   R   R   t   in_topic_domainst   in_region_domainst   in_usage_domains(   R   (    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   test_in_topic_domains¬   s     &c         C  s  |  j  t d ƒ j t d ƒ ƒ d ƒ |  j  t d ƒ j t d ƒ ƒ d ƒ |  j  t d ƒ j t d ƒ ƒ d d d ƒ|  j  t d ƒ j t d ƒ ƒ d d d ƒt j d	 ƒ } |  j  t d ƒ j t d ƒ | ƒ d
 d d ƒt j d ƒ } |  j  t d ƒ j t d ƒ | ƒ d d d ƒd  S(   Nu   cat.n.01g      ð?u   dog.n.01gš™™™™™É?gÓMbX9 @t   placesi   gèÙ¬ú\më?u   ic-brown.datg€·@‚âÇÜ?u   ic-semcor.datgÍ;NÑ‘\ì?(	   t   assertAlmostEqualR   t   path_similarityt   lch_similarityt   wup_similarityt   wnict   ict   jcn_similarityt   lin_similarity(   R   t   brown_ict	   semcor_ic(    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   test_wordnet_similarities´   s    %%%%(c         C  s8   d d d d g } |  j  t d ƒ j d d ƒ | ƒ d  S(   Nu   popolna_sprememba_v_miÅ¡ljenjuu   popoln_obratu   preobratu   preobrat_v_miÅ¡ljenjuu   about-face.n.02t   langu   slv(   R   R   R
   (   R   t   expected(    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt%   test_omw_lemma_no_trailing_underscoreÈ   s
    	c         C  sÐ   t  j d d ƒ } t  j d d ƒ } |  j t | d ƒ ƒ |  j t | d ƒ p[ t | d ƒ ƒ |  j | j ƒ  | k ƒ |  j t | d ƒ ƒ |  j t | d ƒ p¯ t | d ƒ ƒ |  j | j ƒ  | k ƒ d  S(   NRD   u   catu   engu   __iter__u   __next__u   next(   R   t   all_lemma_namest
   assertTruet   hasattrt   __iter__(   R   t
   cat_lemmast
   eng_lemmas(    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt&   test_iterable_type_for_all_lemma_namesÑ   s    %%(   t   __name__t
   __module__R   R   R   R   R&   R(   R-   R/   R3   R7   RC   RF   RM   (    (    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyR      s   				#											(   t   __doc__t
   __future__R    t   collectionst   ost   unittestt   noseR   t   nltk.corpus.reader.wordnetR   t   nltk.corpusR   R   R   R=   t	   nltk.dataR   t	   find_datat   ensure_loadedt   synsetR   t   lemmaR   t   TestCaseR   (    (    (    s:   lib/python2.7/site-packages/nltk/test/unit/test_wordnet.pyt   <module>   s   
		