using Inspectron.Epson.PrintServer.Telemetry; namespace Inspectron.Epson.Tests.Telemetry; public class InsinMessageFormatterTests { [Fact] public void Format_single_pair_no_spaces() { var result = InsinMessageFormatter.Format(("printer", "192.168.1.10")); Assert.Equal("printer=192.168.1.10", result); } [Fact] public void Format_multiple_pairs_joined_by_space() { var result = InsinMessageFormatter.Format( ("printer", "192.168.1.10"), ("jobId", "42")); Assert.Equal("printer=192.168.1.10 jobId=42", result); } [Fact] public void Format_quotes_value_containing_space() { var result = InsinMessageFormatter.Format(("error", "paper end detected")); Assert.Equal("error=\"paper end detected\"", result); } [Fact] public void Format_escapes_embedded_double_quote() { var result = InsinMessageFormatter.Format(("error", "he said \"nope\"")); Assert.Equal("error=\"he said \\\"nope\\\"\"", result); } [Fact] public void Format_treats_null_or_empty_value_as_empty_string() { var result = InsinMessageFormatter.Format(("model", (string?)null), ("name", "")); Assert.Equal("model= name=", result); } [Fact] public void Format_omits_pairs_with_null_or_empty_key() { var result = InsinMessageFormatter.Format( ("", "ignored"), ("printer", "192.168.1.10")); Assert.Equal("printer=192.168.1.10", result); } }