@@ -155,23 +155,27 @@ fn bench_memory_usage(c: &mut Criterion) {
155155
156156/// Helper function to create benchmark data
157157fn setup_benchmark_data ( filename : & str , rows : usize ) -> Result < ( ) , Box < dyn std:: error:: Error > > {
158+ use rand:: Rng ;
158159 use std:: fs:: File ;
159160 use std:: io:: Write ;
160161
161162 let mut file = File :: create ( filename) ?;
162163
163164 // Write header
164- writeln ! ( file, "gene_id,gene_name,chromosome,expression,p_value" ) ?;
165+ writeln ! ( file, "gene_id,gene_name,chromosome,expression,p_value,condition,group " ) ?;
165166
166167 // Generate test data
168+ let mut rng = rand:: thread_rng ( ) ;
167169 let data = ( 0 ..rows) . map ( |i| {
168170 let gene_id = format ! ( "GENE_{}" , i) ;
169171 let gene_name = format ! ( "Name_{}" , i) ;
170172 let chr = format ! ( "chr{}" , ( i % 23 ) + 1 ) ;
171- let expression = ( i as f64 % 100.0 ) + 0.1 ;
172- let p_value = ( i as f64 + 1.0 ) . recip ( ) ;
173+ let expression = rng. gen_range ( 0.0 ..100.0 ) ;
174+ let p_value = rng. gen_range ( 0.0 ..1.0 ) ;
175+ let condition = if i % 2 == 0 { "control" } else { "treated" } ;
176+ let group = rng. gen_range ( 1 ..=5 ) ;
173177
174- format ! ( "{},{},{},{:.2},{:.4}" , gene_id, gene_name, chr, expression, p_value)
178+ format ! ( "{},{},{},{:.2},{:.4},{},{} " , gene_id, gene_name, chr, expression, p_value, condition , group )
175179 } ) . collect :: < Vec < _ > > ( ) . join ( "\n " ) ;
176180
177181 file. write_all ( data. as_bytes ( ) ) ?;
0 commit comments