Gx_l B !0 jüo´l ÄÄp± f [n± S y s t e m . S t r i n g L{ f 8 a 5 8 4 6 6 - d 7 f 6 - 4 3 9 f - b b b 8 - d 4 6 0 0 e 4 1 d 0 9 9 } I m p l e m e n t a t i o n L{ 3 b 8 3 b 7 7 6 - f b 2 5 - 4 3 b 8 - 9 9 f 2 - 3 c 5 0 7 c 9 1 4 3 f c } T e x t D o c u m e n t L{ f 3 8 7 8 2 8 5 - 8 e 4 f - 4 9 0 b - b b 1 b - 9 a c b b 7 e b 0 4 d b } T e x t L i n e s L{ a 5 d e 0 b 0 b - 1 c b 5 - 4 9 1 3 - a c 2 1 - 9 d 7 0 2 9 3 e c 0 0 d } I d l o n g T a g T e x t :I F G V L . I g n o r e C u r r e n t T e s t T H E N R E T U R N ; E N D _ I F NA n y C o m p a r a t o r ( A n y V a l u e O n e : = E x p e c t e d , 4 A n y V a l u e T w o : = A c t u a l ) ; Ì( * F i r s t c h e c k w h e t h e r t h e i n p u t d a t a a r e a n y o f t h e s t a n d a r d d a t a t y p e s t h a t a r e s u p p o r t e d b y T c U n i t . Ô I n t h i s c a s e c a l l t h e s t a n d a r d A s s e r t - m e t h o d s f o r t h a t d a t a . B u t b e f o r e d o i n g t h a t w e n e e d t o m a k e s u r e J t h a t b o t h t h e e x p e c t e d a n d a c t u a l : B - H a v e b o t h t h e s a m e d a t a t y p e B - B o t h h a v e t h e s a m e d a t a s i z e * ) ¨I F N O T A n y C o m p a r a t o r . D a t a T y p e s N o t E q u a l s A N D N O T A n y C o m p a r a t o r . D a t a S i z e N o t E q u a l s T H E N ( * B O O L * ) I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ B O O L T H E N ¾ / / M E M C P Y ( d e s t A d d r : = A D R ( b o o l E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( B O O L ) ) ; ® M E M C P Y ( d e s t A d d r : = A D R ( b o o l E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( B O O L ) ) ; ² M E M C P Y ( d e s t A d d r : = A D R ( b o o l A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( B O O L ) ) ; ¼ A s s e r t E q u a l s _ B O O L ( E x p e c t e d : = b o o l E x p e c t e d , A c t u a l : = b o o l A c t u a l , M e s s a g e : = M e s s a g e ) ; R E T U R N ; ! E N D _ I F " ( * B Y T E * ) # I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ B Y T E T H E N $º M E M C P Y ( d e s t A d d r : = A D R ( b y t e E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( B Y T E ) ) ; %² M E M C P Y ( d e s t A d d r : = A D R ( b y t e A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( B Y T E ) ) ; &¼ A s s e r t E q u a l s _ B Y T E ( E x p e c t e d : = b y t e E x p e c t e d , A c t u a l : = b y t e A c t u a l , M e s s a g e : = M e s s a g e ) ; ' ( * D A T E * ) ( I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ D A T E T H E N )º M E M C P Y ( d e s t A d d r : = A D R ( d a t e E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( D A T E ) ) ; *² M E M C P Y ( d e s t A d d r : = A D R ( d a t e A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( D A T E ) ) ; +¼ A s s e r t E q u a l s _ D A T E ( E x p e c t e d : = d a t e E x p e c t e d , A c t u a l : = d a t e A c t u a l , M e s s a g e : = M e s s a g e ) ; ,. ( * D A T E _ A N D _ T I M E * ) -¬ I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ D A T E A N D T I M E T H E N .Ú M E M C P Y ( d e s t A d d r : = A D R ( d a t e A n d T i m e E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( D A T E _ A N D _ T I M E ) ) ; /Ò M E M C P Y ( d e s t A d d r : = A D R ( d a t e A n d T i m e A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( D A T E _ A N D _ T I M E ) ) ; 0ê A s s e r t E q u a l s _ D A T E _ A N D _ T I M E ( E x p e c t e d : = d a t e A n d T i m e E x p e c t e d , A c t u a l : = d a t e A n d T i m e A c t u a l , M e s s a g e : = M e s s a g e ) ; 1 ( * D I N T * ) 2 I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ D I N T T H E N 3º M E M C P Y ( d e s t A d d r : = A D R ( d i n t E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( D I N T ) ) ; 4² M E M C P Y ( d e s t A d d r : = A D R ( d i n t A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( D I N T ) ) ; 5¼ A s s e r t E q u a l s _ D I N T ( E x p e c t e d : = d i n t E x p e c t e d , A c t u a l : = d i n t A c t u a l , M e s s a g e : = M e s s a g e ) ; 6 ( * D W O R D * ) 7 I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ D W O R D T H E N 8¾ M E M C P Y ( d e s t A d d r : = A D R ( d w o r d E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( D W O R D ) ) ; 9¶ M E M C P Y ( d e s t A d d r : = A D R ( d w o r d A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( D W O R D ) ) ; : A s s e r t E q u a l s _ D W O R D ( E x p e c t e d : = d w o r d E x p e c t e d , A c t u a l : = d w o r d A c t u a l , M e s s a g e : = M e s s a g e ) ; ; ( * I N T * ) < I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ I N T T H E N =¶ M E M C P Y ( d e s t A d d r : = A D R ( i n t E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( I N T ) ) ; >® M E M C P Y ( d e s t A d d r : = A D R ( i n t A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( I N T ) ) ; ?¶ A s s e r t E q u a l s _ I N T ( E x p e c t e d : = i n t E x p e c t e d , A c t u a l : = i n t A c t u a l , M e s s a g e : = M e s s a g e ) ; @ ( * L I N T * ) A I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ L I N T T H E N Bº M E M C P Y ( d e s t A d d r : = A D R ( l i n t E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( L I N T ) ) ; C² M E M C P Y ( d e s t A d d r : = A D R ( l i n t A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( L I N T ) ) ; D¼ A s s e r t E q u a l s _ L I N T ( E x p e c t e d : = l i n t E x p e c t e d , A c t u a l : = l i n t A c t u a l , M e s s a g e : = M e s s a g e ) ; E ( * L R E A L * ) F I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ L R E A L T H E N G¾ M E M C P Y ( d e s t A d d r : = A D R ( l r e a l E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( L R E A L ) ) ; H¶ M E M C P Y ( d e s t A d d r : = A D R ( l r e a l A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( L R E A L ) ) ; IÞ A s s e r t E q u a l s _ L R E A L ( E x p e c t e d : = l r e a l E x p e c t e d , A c t u a l : = l r e a l A c t u a l , D e l t a : = 0 . 0 , M e s s a g e : = M e s s a g e ) ; J ( * L T I M E * ) K I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ L T I M E T H E N L¾ M E M C P Y ( d e s t A d d r : = A D R ( l t i m e E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( L T I M E ) ) ; M¶ M E M C P Y ( d e s t A d d r : = A D R ( l t i m e A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( L T I M E ) ) ; N A s s e r t E q u a l s _ L T I M E ( E x p e c t e d : = l t i m e E x p e c t e d , A c t u a l : = l t i m e A c t u a l , M e s s a g e : = M e s s a g e ) ; O ( * L W O R D * ) P I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ L W O R D T H E N Q¾ M E M C P Y ( d e s t A d d r : = A D R ( l w o r d E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( L W O R D ) ) ; R¶ M E M C P Y ( d e s t A d d r : = A D R ( l w o r d A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( L W O R D ) ) ; S A s s e r t E q u a l s _ L W O R D ( E x p e c t e d : = l w o r d E x p e c t e d , A c t u a l : = l w o r d A c t u a l , M e s s a g e : = M e s s a g e ) ; T ( * R E A L * ) U I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ R E A L T H E N Vº M E M C P Y ( d e s t A d d r : = A D R ( r e a l E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( R E A L ) ) ; W² M E M C P Y ( d e s t A d d r : = A D R ( r e a l A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( R E A L ) ) ; XØ A s s e r t E q u a l s _ R E A L ( E x p e c t e d : = r e a l E x p e c t e d , A c t u a l : = r e a l A c t u a l , D e l t a : = 0 . 0 , M e s s a g e : = M e s s a g e ) ; Y ( * S I N T * ) Z I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ S I N T T H E N [º M E M C P Y ( d e s t A d d r : = A D R ( s i n t E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( S I N T ) ) ; \² M E M C P Y ( d e s t A d d r : = A D R ( s i n t A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( S I N T ) ) ; ]¼ A s s e r t E q u a l s _ S I N T ( E x p e c t e d : = s i n t E x p e c t e d , A c t u a l : = s i n t A c t u a l , M e s s a g e : = M e s s a g e ) ; ^ ( * S T R I N G * ) _¢ I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ S T R I N G T H E N `â M E M C P Y ( d e s t A d d r : = A D R ( s t r i n g E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = D I N T _ T O _ U D I N T ( E x p e c t e d . d i S i z e ) ) ; aÖ M E M C P Y ( d e s t A d d r : = A D R ( s t r i n g A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = D I N T _ T O _ U D I N T ( A c t u a l . d i S i z e ) ) ; bÈ A s s e r t E q u a l s _ S T R I N G ( E x p e c t e d : = s t r i n g E x p e c t e d , A c t u a l : = s t r i n g A c t u a l , M e s s a g e : = M e s s a g e ) ; c ( * T I M E * ) d I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ T I M E T H E N eº M E M C P Y ( d e s t A d d r : = A D R ( t i m e E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( T I M E ) ) ; f² M E M C P Y ( d e s t A d d r : = A D R ( t i m e A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( T I M E ) ) ; g¼ A s s e r t E q u a l s _ T I M E ( E x p e c t e d : = t i m e E x p e c t e d , A c t u a l : = t i m e A c t u a l , M e s s a g e : = M e s s a g e ) ; h* ( * T I M E _ O F _ D A Y * ) i¨ I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ T I M E O F D A Y T H E N jÒ M E M C P Y ( d e s t A d d r : = A D R ( t i m e O f D a y E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( T I M E _ O F _ D A Y ) ) ; kÊ M E M C P Y ( d e s t A d d r : = A D R ( t i m e O f D a y A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( T I M E _ O F _ D A Y ) ) ; lÞ A s s e r t E q u a l s _ T I M E _ O F _ D A Y ( E x p e c t e d : = t i m e O f D a y E x p e c t e d , A c t u a l : = t i m e O f D a y A c t u a l , M e s s a g e : = M e s s a g e ) ; m ( * U D I N T * ) n I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ U D I N T T H E N o¾ M E M C P Y ( d e s t A d d r : = A D R ( u d i n t E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( U D I N T ) ) ; p¶ M E M C P Y ( d e s t A d d r : = A D R ( u d i n t A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( U D I N T ) ) ; q A s s e r t E q u a l s _ U D I N T ( E x p e c t e d : = u d i n t E x p e c t e d , A c t u a l : = u d i n t A c t u a l , M e s s a g e : = M e s s a g e ) ; r ( * U I N T * ) s I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ U I N T T H E N tº M E M C P Y ( d e s t A d d r : = A D R ( u i n t E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( U I N T ) ) ; u² M E M C P Y ( d e s t A d d r : = A D R ( u i n t A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( U I N T ) ) ; v¼ A s s e r t E q u a l s _ U I N T ( E x p e c t e d : = u i n t E x p e c t e d , A c t u a l : = u i n t A c t u a l , M e s s a g e : = M e s s a g e ) ; w ( * U L I N T * ) x I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ U L I N T T H E N y¾ M E M C P Y ( d e s t A d d r : = A D R ( u l i n t E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( U L I N T ) ) ; z¶ M E M C P Y ( d e s t A d d r : = A D R ( u l i n t A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( U L I N T ) ) ; { A s s e r t E q u a l s _ U L I N T ( E x p e c t e d : = u l i n t E x p e c t e d , A c t u a l : = u l i n t A c t u a l , M e s s a g e : = M e s s a g e ) ; | ( * U S I N T * ) } I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ U S I N T T H E N ~¾ M E M C P Y ( d e s t A d d r : = A D R ( u s i n t E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( U S I N T ) ) ; ¶ M E M C P Y ( d e s t A d d r : = A D R ( u s i n t A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( U S I N T ) ) ;  A s s e r t E q u a l s _ U S I N T ( E x p e c t e d : = u s i n t E x p e c t e d , A c t u a l : = u s i n t A c t u a l , M e s s a g e : = M e s s a g e ) ; ( * W O R D * ) I F U D I N T _ T O _ I N T ( E x p e c t e d . T y p e C l a s s ) = I B a s e L i b r a r y . T y p e C l a s s . T Y P E _ W O R D T H E N º M E M C P Y ( d e s t A d d r : = A D R ( w o r d E x p e c t e d ) , s r c A d d r : = E x p e c t e d . p V a l u e , n : = S I Z E O F ( W O R D ) ) ; ² M E M C P Y ( d e s t A d d r : = A D R ( w o r d A c t u a l ) , s r c A d d r : = A c t u a l . p V a l u e , n : = S I Z E O F ( W O R D ) ) ; ¼ A s s e r t E q u a l s _ W O R D ( E x p e c t e d : = w o r d E x p e c t e d , A c t u a l : = w o r d A c t u a l , M e s s a g e : = M e s s a g e ) ; è( * I f w e '