Skip to content

Commit 4d9655d

Browse files
authored
Merge pull request #172 from aodn/fix_function_arg_modification
Fix functions that modify files_to_agg argument in place
2 parents 9098f6a + 7eb3f3e commit 4d9655d

6 files changed

Lines changed: 10 additions & 1 deletion

File tree

aodntools/timeseries_products/aggregated_timeseries.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#!/usr/bin/env python3
22

33
import argparse
4+
from copy import deepcopy
45
import json
56
import os
67
import shutil
@@ -225,6 +226,7 @@ def main_aggregator(files_to_agg, var_to_agg, site_code, input_dir='', output_di
225226
rejected_files.append(file)
226227

227228
## remove bad files form the list and sort in chronological order
229+
files_to_agg = deepcopy(files_to_agg)
228230
for file in bad_files.keys():
229231
files_to_agg.remove(file)
230232
if len(files_to_agg) == 0:

aodntools/timeseries_products/velocity_aggregated_timeseries.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import os
22
import tempfile
33
import shutil
4+
from copy import deepcopy
5+
46
from netCDF4 import Dataset, num2date, stringtochar
57
import numpy as np
68
import json
@@ -83,6 +85,7 @@ def velocity_aggregated(files_to_agg, site_code, input_dir='', output_dir='./',
8385
bad_files.update({file: error_list})
8486

8587
# remove bad files form the list and sort in chronological order
88+
files_to_agg = deepcopy(files_to_agg)
8689
for file in bad_files.keys():
8790
files_to_agg.remove(file)
8891
if len(files_to_agg) == 0:

aodntools/timeseries_products/velocity_hourly_timeseries.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import os
44
import shutil
55
import tempfile
6+
from copy import deepcopy
67

78
import numpy as np
89
import pandas as pd
@@ -117,6 +118,7 @@ def velocity_hourly_aggregated(files_to_agg, site_code, input_dir='', output_dir
117118
print(" ")
118119

119120
## remove bad files form the list
121+
files_to_agg = deepcopy(files_to_agg)
120122
for file in bad_files.keys():
121123
files_to_agg.remove(file)
122124
if len(files_to_agg) == 0:

test_aodntools/timeseries_products/test_aggregated_timeseries.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ def test_main_aggregator(self):
2929
output_file, bad_files = main_aggregator(INPUT_FILES, 'TEMP', 'NRSROT', input_dir=TEST_ROOT,
3030
output_dir='/tmp')
3131

32+
self.assertEqual(4, len(INPUT_FILES))
3233
self.assertEqual(1, len(bad_files))
3334
for file, errors in bad_files.items():
3435
self.assertEqual(BAD_FILE, file)

test_aodntools/timeseries_products/test_velocity_aggregated_timeseries.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ class TestVelocityAggregatedTimeseries(BaseTestCase):
3333
def test_velocity_aggregated(self):
3434
output_file, bad_files = velocity_aggregated(INPUT_FILES, 'NRSROT', input_dir=TEST_ROOT, output_dir='/tmp')
3535

36+
self.assertEqual(4, len(INPUT_FILES))
3637
self.assertEqual(1, len(bad_files))
3738
for file, errors in bad_files.items():
3839
self.assertEqual(BAD_FILE, file)

test_aodntools/timeseries_products/test_velocity_hourly_timeseries.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class TestVelocityHourlyTimeseries(BaseTestCase):
3737
def test_velocity_hourly(self):
3838
output_file, bad_files = velocity_hourly_aggregated(INPUT_FILES, 'NRSROT',
3939
input_dir=TEST_ROOT, output_dir='/tmp')
40-
40+
self.assertEqual(4, len(INPUT_FILES))
4141
self.assertEqual(1, len(bad_files))
4242
for file, errors in bad_files.items():
4343
self.assertEqual(BAD_FILE, file)

0 commit comments

Comments
 (0)