Gx_l !0 jüoCp c¡íQ ÃÜ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 HI F G V L _ C f U n i t . 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 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 ) ) ; /ê 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 ) ; 0 ( * D I N T * ) 1 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 2º 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 ) ) ; 3² 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 ) ) ; 4¼ 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 ) ; 5 ( * D W O R D * ) 6 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 7¾ 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 ) ) ; 8¶ 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 ) ) ; 9 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 * ) @ 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 Aº 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 ) ) ; B² 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 ) ) ; C¼ 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 ) ; D ( * L R E A L * ) 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 _ L R E A L T H E N F¾ 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 ) ) ; G¶ 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 ) ) ; HÞ 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 ) ; I ( * L T I M E * ) J 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 K¾ 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 ) ) ; L¶ 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 ) ) ; M 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 ) ; N ( * L W O R D * ) O 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 P¾ 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 ) ) ; Q¶ 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 ) ) ; R 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 ) ; S ( * R E A L * ) 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 _ R E A L T H E N Uº 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 ) ) ; V² 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 ) ) ; WØ 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 ) ; X ( * S I N T * ) Y 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 Zº 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 ) ) ; `Ö 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 ) ) ; aÈ 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 ) ; b ( * T I M E * ) c 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 dº 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 ) ) ; e² 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 ) ) ; f¼ 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 ) ; g* ( * T I M E _ O F _ D A Y * ) h¨ 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 iÒ 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 ) ) ; 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 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 ) ) ; kÞ 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 ) ; l ( * U D I N T * ) m 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 n¾ 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 ) ) ; o¶ 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 ) ) ; p 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 ) ; q ( * U I N T * ) r 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 sº 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 ) ) ; t² 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 ) ) ; u¼ 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 ) ; v ( * U L I N T * ) w 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 x¾ 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 ) ) ; y¶ 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 ) ) ; z 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 '