public static bool TryParse(string line, out TripDescription tripDescription) { tripDescription = null; if (string.IsNullOrWhiteSpace(line)) { return false; } var parts = line.Split(','); if (parts.Length < 2) { throw new ArgumentException("Not enough CSV parts.", "line"); } tripDescription = new TripDescription {Vehicle = parts[0], Description = parts[1]}; return true; }
public void AddDescriptionFor(String vehicle, String description) { if (String.IsNullOrWhiteSpace(vehicle)) { throw new ArgumentException("Must provide a vehicle.", "vehicle"); } if (String.IsNullOrWhiteSpace(description)) { return; } var list = Load(vehicle).ToList(); var matches = from td in list where td.Description.Trim().Equals(description.Trim(), StringComparison.OrdinalIgnoreCase) select td; if (matches.Any()) { return; } var newTripDescription = new TripDescription {Vehicle = vehicle, Description = description}; list.Add(newTripDescription); WriteListToTextFile(list); }
public void ToCsv_should_create_string_when_description_is_missing() { var td = new TripDescription() { Vehicle = "My Car", Description = null }; var csv = td.ToCsv(); csv.Should().Be("My Car,"); }
public void ToCsv_should_create_string_when_vehicle_is_missing() { var td = new TripDescription() { Vehicle = String.Empty, Description = "Trip to nowhere" }; var csv = td.ToCsv(); csv.Should().Be(",Trip to nowhere"); }
public void ToCSV_should_create_string() { var td = new TripDescription() {Vehicle = "My Car", Description = "Trip to nowhere"}; var csv = td.ToCsv(); csv.Should().Be("My Car,Trip to nowhere"); }