Broaden chairman governance event coverage

This commit is contained in:
Jan Petykiewicz 2026-04-16 16:36:48 -07:00
commit f8350a48c5
18 changed files with 1939 additions and 13 deletions

View file

@ -351,6 +351,12 @@ mod tests {
track_piece_counts: RuntimeTrackPieceCounts::default(),
active: true,
available_track_laying_capacity: None,
linked_chairman_profile_id: None,
book_value_per_share: 0,
investor_confidence: 0,
management_attitude: 0,
takeover_cooldown_year: None,
merger_cooldown_year: None,
}],
selected_company_id: Some(42),
players: Vec::new(),

View file

@ -78,6 +78,12 @@ pub struct ExpectedRuntimeSummary {
#[serde(default)]
pub selected_chairman_profile_id: Option<u32>,
#[serde(default)]
pub linked_chairman_company_count: Option<usize>,
#[serde(default)]
pub company_takeover_cooldown_count: Option<usize>,
#[serde(default)]
pub company_merger_cooldown_count: Option<usize>,
#[serde(default)]
pub train_count: Option<usize>,
#[serde(default)]
pub active_train_count: Option<usize>,
@ -473,6 +479,30 @@ impl ExpectedRuntimeSummary {
));
}
}
if let Some(count) = self.linked_chairman_company_count {
if actual.linked_chairman_company_count != count {
mismatches.push(format!(
"linked_chairman_company_count mismatch: expected {count}, got {}",
actual.linked_chairman_company_count
));
}
}
if let Some(count) = self.company_takeover_cooldown_count {
if actual.company_takeover_cooldown_count != count {
mismatches.push(format!(
"company_takeover_cooldown_count mismatch: expected {count}, got {}",
actual.company_takeover_cooldown_count
));
}
}
if let Some(count) = self.company_merger_cooldown_count {
if actual.company_merger_cooldown_count != count {
mismatches.push(format!(
"company_merger_cooldown_count mismatch: expected {count}, got {}",
actual.company_merger_cooldown_count
));
}
}
if let Some(count) = self.train_count {
if actual.train_count != count {
mismatches.push(format!(