Ticket #4929: bug_4929.patch

File bug_4929.patch, 3.3 KB (added by Upasana, 19 months ago)
  • twisted/words/test/test_irc.py

     
    20012001        return transport.value().split('\r\n')[-2] 
    20022002 
    20032003 
     2004    def test_channel_list(self): 
     2005        """ 
     2006        L{IRCClient.channel_list} sends LIST command to the server 
     2007        """ 
     2008        self.protocol.channel_list() #for getting list of all the channels from the server 
     2009        self.protocol.channel_list("#foo") # specifying channel name 
     2010        self.protocol.channel_list("#foo", "server") #specifying channel name and target both 
     2011 
     2012        expected = ["LIST",  
     2013                    "LIST #foo",  
     2014                    "LIST #foo server", 
     2015                    ''] 
     2016 
     2017        self.assertEqual(self.transport.value().split('\r\n'),  
     2018                                                       expected) 
     2019 
     2020 
    20042021    def test_away(self): 
    20052022        """ 
    20062023        L{IRCClient.away} sends an AWAY command with the specified message. 
  • twisted/words/protocols/irc.py

     
    18151815        return nickname + '_' 
    18161816 
    18171817 
     1818    def channel_list(self, channel=None, target=None): 
     1819        """ 
     1820        The list command is used to list channels and their topics.   
     1821        @type channel: C{str} 
     1822        @param channel: If the channel parameter is used, only the status of that channel is displayed. 
     1823 
     1824        @type target: C{str} 
     1825        @param target: If the target parameter is specified, the request is forwarded to that server which will generate the reply. 
     1826         
     1827        """ 
     1828        if channel and target: 
     1829            self.sendLine("LIST %s %s" % (channel, target) ) 
     1830        elif channel: 
     1831            self.sendLine("LIST %s" % (channel)) 
     1832        else: 
     1833            # print "Sending list" 
     1834            self.sendLine("LIST") 
     1835 
     1836 
     1837    def irc_RPL_LIST(self, prefix, params): 
     1838        """ 
     1839        Called when we get LIST of channels from the server, output of LIST Command 
     1840        """ 
     1841        # print "In irc_RPL_LIST" 
     1842        # print "prefix : %s" % (prefix) 
     1843        # print "params : %s" % (params) 
     1844        #deleting nick from params,so that params will contain channel name,number of users on the channel and topic of the channel 
     1845        del params[0] 
     1846        self.gotChannelList(params ) 
     1847 
     1848 
     1849    def irc_RPL_LISTEND(self, prefix, params): 
     1850        """ 
     1851        Called when output of /LIST ends 
     1852        """ 
     1853        # print "prefix : %s" % ( prefix ) 
     1854        # print "params : %s" % ( params ) 
     1855        del params[0] 
     1856        self.channelListEnd(params) 
     1857 
     1858 
     1859    def gotChannelList(self, params): 
     1860        """ 
     1861        @type params: C{[str, str, str]} 
     1862        @return a list like this: [channel, number of users, topic of the channel]  
     1863        """ 
     1864        return params 
     1865 
     1866 
     1867    def channelListEnd(self, param): 
     1868        """ 
     1869        Returns End of /LIST 
     1870        @type param: C[{str}] 
     1871        @return : C{str} 
     1872        """ 
     1873        return params[0] 
     1874 
     1875 
    18181876    def irc_ERR_ERRONEUSNICKNAME(self, prefix, params): 
    18191877        """ 
    18201878        Called when we try to register or change to an illegal nickname.