use mdflib::*;
use tempfile::NamedTempFile;
#[test]
fn test_mdf4_write_header_and_history() {
let temp_file = NamedTempFile::new().unwrap();
let file_path = temp_file.path();
let _writer = writer::MdfWriter::new(mdflib_sys::MdfWriterType::Mdf4Basic, file_path)
.expect("Failed to create MDF writer");
}
#[test]
fn test_mdf4_write_basic_structure() {
let temp_file = NamedTempFile::new().unwrap();
let file_path = temp_file.path();
let mut writer = writer::MdfWriter::new(mdflib_sys::MdfWriterType::Mdf4Basic, file_path)
.expect("Failed to create MDF writer");
if let Some(mut header) = writer.get_header() {
header.set_author("Test Author");
header.set_description("Test Description");
header.create_file_history();
header.create_attachment();
header.create_event();
}
if let Some(_data_group) = writer.create_data_group() {
}
}
#[test]
fn test_can_message_basic_operations() {
let mut msg = CanMessage::new();
msg.set_message_id(0x123);
let _actual_id = msg.get_message_id();
msg.set_extended_id(true);
assert!(msg.get_extended_id());
msg.set_dlc(8);
assert_eq!(msg.get_dlc(), 8);
let test_data = vec![0x01, 0x02, 0x03, 0x04];
msg.set_data_bytes(&test_data);
assert_eq!(msg.get_data_bytes(), test_data);
}
#[test]
fn test_etag_functionality() {
let mut etag = ETag::new().expect("Failed to create ETag");
etag.set_name("TestTag").expect("Failed to set name");
etag.set_description("Test description")
.expect("Failed to set description");
etag.set_unit("V").expect("Failed to set unit");
etag.set_value_as_string("test_value")
.expect("Failed to set value");
assert_eq!(etag.get_name(), "TestTag");
assert_eq!(etag.get_description(), "Test description");
assert_eq!(etag.get_unit(), "V");
assert_eq!(etag.get_value_as_string(), "test_value");
}