use crate::{Category, Difficulty, Question};
pub fn questions() -> Vec<Question> {
vec![
Question {
id: 12001,
category: Category::Validation,
difficulty: Difficulty::Beginner,
text: "What is the purpose of photometric file validation?".into(),
options: vec![
"To make the file smaller".into(),
"To detect errors, inconsistencies, and data quality issues".into(),
"To convert between file formats".into(),
"To encrypt the data".into(),
],
correct_index: 1,
explanation: "Validation checks photometric files for errors (corrupt data, missing fields), inconsistencies (mismatched values), and quality warnings (unusual patterns).".into(),
reference: None,
},
Question {
id: 12002,
category: Category::Validation,
difficulty: Difficulty::Intermediate,
text: "What does a validation warning about 'zero-dimension luminaire' indicate?".into(),
options: vec![
"The file is corrupted".into(),
"The luminaire has no physical dimensions specified (length/width/height all zero)".into(),
"The intensity values are all zero".into(),
"The file has no C-planes".into(),
],
correct_index: 1,
explanation: "A zero-dimension warning means the luminaire's physical size is unspecified (0×0×0mm), which may be intentional for point sources but is often an omission.".into(),
reference: None,
},
Question {
id: 12003,
category: Category::Validation,
difficulty: Difficulty::Intermediate,
text: "What could cause a 'LOR exceeds 100%' validation error?".into(),
options: vec![
"A very efficient luminaire".into(),
"Data entry error or measurement artifact".into(),
"The luminaire amplifies light".into(),
"The file uses absolute photometry".into(),
],
correct_index: 1,
explanation: "LOR > 100% is physically impossible (a luminaire cannot emit more light than its lamps produce). This indicates a data entry error or measurement artifact.".into(),
reference: None,
},
Question {
id: 12004,
category: Category::Validation,
difficulty: Difficulty::Expert,
text: "What does a 'non-uniform gamma spacing' warning indicate?".into(),
options: vec![
"The file has too many gamma angles".into(),
"Gamma angles are not evenly distributed, which may indicate measurement issues".into(),
"The gamma range is too narrow".into(),
"The file uses the wrong angle convention".into(),
],
correct_index: 1,
explanation: "While non-uniform spacing is technically valid, it may indicate measurement artifacts, manually edited data, or conversion issues from another format.".into(),
reference: None,
},
Question {
id: 12005,
category: Category::Validation,
difficulty: Difficulty::Beginner,
text: "What is the difference between a validation warning and a validation error?".into(),
options: vec![
"There is no difference".into(),
"Warnings are informational; errors indicate the file may be unusable".into(),
"Errors are informational; warnings indicate problems".into(),
"Warnings apply to IES files; errors apply to LDT files".into(),
],
correct_index: 1,
explanation: "Warnings highlight potential issues that don't prevent usage (e.g., missing metadata). Errors indicate structural problems that may make the data unreliable.".into(),
reference: None,
},
Question {
id: 12006,
category: Category::Validation,
difficulty: Difficulty::Expert,
text: "What does 'intensity discontinuity' mean in photometric validation?".into(),
options: vec![
"A sudden jump in intensity between adjacent angles with no physical explanation".into(),
"The intensity values are all the same".into(),
"The file has missing intensity values".into(),
"The intensity exceeds the maximum scale".into(),
],
correct_index: 0,
explanation: "An intensity discontinuity is a sudden, unreasonably large change between adjacent measurement angles, which may indicate a data error or measurement artifact.".into(),
reference: None,
},
Question {
id: 12007,
category: Category::Validation,
difficulty: Difficulty::Intermediate,
text: "What should you check when a file reports 0 lumens total flux?".into(),
options: vec![
"Nothing — 0 lumens is normal".into(),
"Whether absolute photometry mode is being used".into(),
"Whether the file uses metric units".into(),
"Whether the file is encrypted".into(),
],
correct_index: 1,
explanation: "0 total flux may be valid in absolute photometry mode (negative lamp count). Otherwise, it indicates missing lamp data or a calculation error.".into(),
reference: None,
},
Question {
id: 12008,
category: Category::Validation,
difficulty: Difficulty::Expert,
text: "What validation check detects asymmetric data in a file declared as symmetric?".into(),
options: vec![
"Format version check".into(),
"Comparing intensity values across mirrored C-planes".into(),
"Checking the total flux calculation".into(),
"Verifying the file header".into(),
],
correct_index: 1,
explanation: "If a file declares symmetry (e.g., Isym=4) but the stored data shows significant differences across the expected mirror planes, this indicates incorrect symmetry classification.".into(),
reference: None,
},
]
}