d i f f   - - g i t   a / a i o p u l s e / e r r o r s . p y   b / a i o p u l s e / e r r o r s . p y 
 
 i n d e x   8 d d a a e b . . 9 0 b 6 d 4 d   1 0 0 6 4 4 
 
 - - -   a / a i o p u l s e / e r r o r s . p y 
 
 + + +   b / a i o p u l s e / e r r o r s . p y 
 
 @ @   - 1 , 1 0   + 1 , 1 6   @ @ 
 
   " " " E r r o r   c l a s s e s   o f   a i o p u l s e   m o d u l e . " " " 
 
 + f r o m   _ _ f u t u r e _ _   i m p o r t   a n n o t a t i o n s 
 
   
 
   
 
   c l a s s   H u b B a s e E x c e p t i o n ( E x c e p t i o n ) : 
 
           " " " B a s e   E x c e p t i o n   f o r   p r o t o c o l . " " " 
 
   
 
 -         p a s s 
 
 +         d e f   _ _ i n i t _ _ ( 
 
 +                 s e l f ,   m e s s a g e :   s t r   =   " " ,   r e s p o n s e :   b y t e s   |   N o n e   =   N o n e 
 
 +         )   - >   N o n e : 
 
 +                 " " " I n i t i a l i z e   e x c e p t i o n   w i t h   o p t i o n a l   r e s p o n s e   c o n t e x t . " " " 
 
 +                 s u p e r ( ) . _ _ i n i t _ _ ( m e s s a g e ) 
 
 +                 s e l f . r e s p o n s e   =   r e s p o n s e 
 
   
 
   
 
   c l a s s   N o t C o n n e c t e d E x c e p t i o n ( H u b B a s e E x c e p t i o n ) : 
 
 d i f f   - - g i t   a / t e s t s / t e s t _ e r r o r s . p y   b / t e s t s / t e s t _ e r r o r s . p y 
 
 i n d e x   4 3 9 e 2 7 7 . . 1 4 8 f c e 7   1 0 0 6 4 4 
 
 - - -   a / t e s t s / t e s t _ e r r o r s . p y 
 
 + + +   b / t e s t s / t e s t _ e r r o r s . p y 
 
 @ @   - 4 1 , 3   + 4 1 , 4 5   @ @   c l a s s   T e s t E r r o r s : 
 
                   a s s e r t   i s s u b c l a s s ( C a n n o t C o n n e c t E x c e p t i o n ,   H u b B a s e E x c e p t i o n ) 
 
                   a s s e r t   i s s u b c l a s s ( I n v a l i d R e s p o n s e E x c e p t i o n ,   H u b B a s e E x c e p t i o n ) 
 
                   a s s e r t   i s s u b c l a s s ( H u b B a s e E x c e p t i o n ,   E x c e p t i o n ) 
 
 + 
 
 + 
 
 + c l a s s   T e s t H u b B a s e E x c e p t i o n : 
 
 +         d e f   t e s t _ b a s i c _ c r e a t i o n ( s e l f ) : 
 
 +                 e x c   =   H u b B a s e E x c e p t i o n ( " t e s t   m e s s a g e " ) 
 
 +                 a s s e r t   s t r ( e x c )   = =   " t e s t   m e s s a g e " 
 
 + 
 
 +         d e f   t e s t _ w i t h _ r e s p o n s e _ c o n t e x t ( s e l f ) : 
 
 +                 r e s p o n s e   =   b " \ x 0 0 \ x 0 1 \ x 0 2 \ x 0 3 " 
 
 +                 e x c   =   H u b B a s e E x c e p t i o n ( " t e s t   m e s s a g e " ,   r e s p o n s e = r e s p o n s e ) 
 
 +                 a s s e r t   e x c . r e s p o n s e   = =   r e s p o n s e 
 
 + 
 
 + 
 
 + c l a s s   T e s t I n v a l i d R e s p o n s e E x c e p t i o n : 
 
 +         d e f   t e s t _ b a s i c _ c r e a t i o n ( s e l f ) : 
 
 +                 e x c   =   I n v a l i d R e s p o n s e E x c e p t i o n ( " i n v a l i d   r e s p o n s e " ) 
 
 +                 a s s e r t   s t r ( e x c )   = =   " i n v a l i d   r e s p o n s e " 
 
 +                 a s s e r t   e x c . r e s p o n s e   i s   N o n e 
 
 + 
 
 +         d e f   t e s t _ w i t h _ r e s p o n s e ( s e l f ) : 
 
 +                 r e s p o n s e   =   b " \ x f f \ x f f \ x f f \ x f f " 
 
 +                 e x c   =   I n v a l i d R e s p o n s e E x c e p t i o n ( " i n v a l i d   h e a d e r " ,   r e s p o n s e = r e s p o n s e ) 
 
 +                 a s s e r t   e x c . r e s p o n s e   = =   r e s p o n s e 
 
 +                 a s s e r t   b " \ x f f \ x f f "   i n   e x c . r e s p o n s e 
 
 + 
 
 + 
 
 + c l a s s   T e s t N o t C o n n e c t e d E x c e p t i o n : 
 
 +         d e f   t e s t _ b a s i c _ c r e a t i o n ( s e l f ) : 
 
 +                 e x c   =   N o t C o n n e c t e d E x c e p t i o n ( " n o t   c o n n e c t e d " ) 
 
 +                 a s s e r t   s t r ( e x c )   = =   " n o t   c o n n e c t e d " 
 
 + 
 
 + 
 
 + c l a s s   T e s t C a n n o t C o n n e c t E x c e p t i o n : 
 
 +         d e f   t e s t _ b a s i c _ c r e a t i o n ( s e l f ) : 
 
 +                 e x c   =   C a n n o t C o n n e c t E x c e p t i o n ( " c o n n e c t i o n   r e f u s e d " ) 
 
 +                 a s s e r t   s t r ( e x c )   = =   " c o n n e c t i o n   r e f u s e d " 
 
 + 
 
 + 
 
 + c l a s s   T e s t N o t R u n n i n g E x c e p t i o n : 
 
 +         d e f   t e s t _ b a s i c _ c r e a t i o n ( s e l f ) : 
 
 +                 e x c   =   N o t R u n n i n g E x c e p t i o n ( " n o t   r u n n i n g " ) 
 
 +                 a s s e r t   s t r ( e x c )   = =   " n o t   r u n n i n g " 
 
 