Coverage for intelligence_toolkit/anonymize_case_data/synthesizability_statistics.py: 100%

11 statements  

« prev     ^ index     » next       coverage.py v7.10.7, created at 2025-10-16 13:41 -0300

1# Copyright (c) 2024 Microsoft Corporation. All rights reserved. 

2# Licensed under the MIT license. See LICENSE file in the project. 

3 

4class SynthesizabilityStatistics: 

5 def __init__( 

6 self, 

7 num_cols: int, 

8 overall_att_count: int, 

9 possible_combinations: int, 

10 possible_combinations_per_row: float, 

11 mean_vals_per_record: float, 

12 max_combinations_per_record: float, 

13 excess_combinations_ratio: float 

14 ) -> None: 

15 self.num_cols = num_cols 

16 self.overall_att_count = overall_att_count 

17 self.possible_combinations = possible_combinations 

18 self.possible_combinations_per_row = possible_combinations_per_row 

19 self.mean_vals_per_record = mean_vals_per_record 

20 self.max_combinations_per_record = max_combinations_per_record 

21 self.excess_combinations_ratio = excess_combinations_ratio 

22 

23 def __repr__(self) -> str: 

24 return f"SynthesizabilityStatistics(num_cols={self.num_cols}, overall_att_count={self.overall_att_count}, possible_combinations={self.possible_combinations}, possible_combinations_per_row={self.possible_combinations_per_row}, mean_vals_per_record={self.mean_vals_per_record}, max_combinations_per_record={self.max_combinations_per_record}, excess_combinations_ratio={self.excess_combinations_ratio})"