You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flagon.apache.org by jk...@apache.org on 2023/10/04 17:38:36 UTC
[flagon-distill] 05/06: test(test_segment): adds specified default for the newline behavior on the exported csv in export_segment; changes the file opener in test_segment to a proper context manager so the file closes on context exit
This is an automated email from the ASF dual-hosted git repository.
jky pushed a commit to branch 0.0.6
in repository https://gitbox.apache.org/repos/asf/flagon-distill.git
commit d53211c6b27d002b6ebb4c60748f3dba7e324420
Author: Evan Jones <ev...@gmail.com>
AuthorDate: Tue Oct 3 16:34:16 2023 -0400
test(test_segment): adds specified default for the newline behavior on the exported csv in export_segment; changes the file opener in test_segment to a proper context manager so the file closes on context exit
closes #37
---
distill/segmentation/segment.py | 51 ++++++++++++++++++++---------------------
tests/test_segment.py | 22 +++++++++---------
2 files changed, 36 insertions(+), 37 deletions(-)
diff --git a/distill/segmentation/segment.py b/distill/segmentation/segment.py
index 4bcdef1..a8d4e5a 100644
--- a/distill/segmentation/segment.py
+++ b/distill/segmentation/segment.py
@@ -648,30 +648,29 @@ def export_segments(path, segments):
:param segments: A Segments object containing Segment objects.
"""
- file = open(path, "w")
- writer = csv.writer(file)
-
- # Populate the csv row by row
- # TODO: Make sure this is the right format
- header_row = [
- "Segment Name",
- "Start Time",
- "End Time",
- "Number of Logs",
- "Generate Field Name",
- "Generate Matched Values",
- "Segment Type",
- ]
- writer.writerow(header_row)
- for segment in segments:
- row = [
- segment.segment_name,
- str(segment.start_end_val[0]),
- str(segment.start_end_val[1]),
- segment.num_logs,
- segment.generate_field_name,
- segment.generate_matched_values,
- segment.segment_type,
+ with open(path, "w", newline="") as file:
+ writer = csv.writer(file)
+
+ # Populate the csv row by row
+ # TODO: Make sure this is the right format
+ header_row = [
+ "Segment Name",
+ "Start Time",
+ "End Time",
+ "Number of Logs",
+ "Generate Field Name",
+ "Generate Matched Values",
+ "Segment Type",
]
- writer.writerow(row)
- file.close()
+ writer.writerow(header_row)
+ for segment in segments:
+ row = [
+ segment.segment_name,
+ str(segment.start_end_val[0]),
+ str(segment.start_end_val[1]),
+ segment.num_logs,
+ segment.generate_field_name,
+ segment.generate_matched_values,
+ segment.segment_type,
+ ]
+ writer.writerow(row)
diff --git a/tests/test_segment.py b/tests/test_segment.py
index 6b7eee7..5b01b0d 100644
--- a/tests/test_segment.py
+++ b/tests/test_segment.py
@@ -1421,17 +1421,17 @@ def test_export_segments():
distill.export_segments("./test.csv", result)
# Read from file
- file = open("./test.csv", "r")
- lines = file.readlines()
+ with open("./test.csv", "r") as file:
+ lines = file.readlines()
- assert len(lines) == 4
- assert (
- lines[0]
- == "Segment Name,Start Time,End Time,Number of Logs,Generate Field"
- " Name,Generate Matched Values,Segment Type\n"
- )
- assert lines[1] == "0,1623691890459,1623691994888,7,,,Segment_Type.DEADSPACE\n"
- assert lines[2] == "1,1623691991900,1623693994900,15,,,Segment_Type.DEADSPACE\n"
- assert lines[3] == "2,1623693994550,1623697997550,3,,,Segment_Type.DEADSPACE\n"
+ assert len(lines) == 4
+ assert (
+ lines[0]
+ == "Segment Name,Start Time,End Time,Number of Logs,Generate Field"
+ " Name,Generate Matched Values,Segment Type\n"
+ )
+ assert lines[1] == "0,1623691890459,1623691994888,7,,,Segment_Type.DEADSPACE\n"
+ assert lines[2] == "1,1623691991900,1623693994900,15,,,Segment_Type.DEADSPACE\n"
+ assert lines[3] == "2,1623693994550,1623697997550,3,,,Segment_Type.DEADSPACE\n"
os.remove("./test.csv")