Skip to content

Commit

Permalink
update all double quotes to single quotes
Browse files Browse the repository at this point in the history
  • Loading branch information
mackenzie-grimes-noaa committed Jun 22, 2023
1 parent 0c6ea23 commit 4701f7b
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 35 deletions.
8 changes: 4 additions & 4 deletions python/idsse_common/idsse/common/aws_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,10 +53,10 @@ def aws_ls(self, path: str, prepend_path: bool = True) -> Sequence[str]:
Sequence[str]: The results sent to stdout from executing an 'ls' on passed path
"""
try:
commands = ["s5cmd", "--no-sign-request", "ls", path]
commands = ['s5cmd', '--no-sign-request', 'ls', path]
commands_result = exec_cmd(commands)
except FileNotFoundError:
commands = ["aws", "s3", "--no-sign-request", "ls", path]
commands = ['aws', 's3', '--no-sign-request', 'ls', path]
commands_result = exec_cmd(commands)
except PermissionError:
return []
Expand All @@ -76,13 +76,13 @@ def aws_cp(self, path: str, dest: str) -> bool:
"""
try:
logger.debug('First attempt with s5cmd')
commands = ["s5cmd", "--no-sign-request", "cp", path, dest]
commands = ['s5cmd', '--no-sign-request', 'cp', path, dest]
exec_cmd(commands)
return True
except FileNotFoundError:
try:
logger.debug('Second attempt with aws command line')
commands = ["aws", "s3", "--no-sign-request", "cp", path, dest]
commands = ['aws', 's3', '--no-sign-request', 'cp', path, dest]
exec_cmd(commands)
return True
except:
Expand Down
14 changes: 7 additions & 7 deletions python/idsse_common/test/test_aws_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,14 +51,14 @@ def mock_exec_cmd(monkeypatch: MonkeyPatch) -> Mock:

def test_get_path(aws_utils: AwsUtils):
result_path = aws_utils.get_path(EXAMPLE_ISSUE, EXAMPLE_VALID)
assert result_path == f"{EXAMPLE_DIR}/blend.t12z.core.f002.co.grib2"
assert result_path == f'{EXAMPLE_DIR}/blend.t12z.core.f002.co.grib2'


def test_aws_ls(aws_utils: AwsUtils, mock_exec_cmd):
result = aws_utils.aws_ls(EXAMPLE_DIR)

assert len(result) == len(EXAMPLE_FILES)
assert result[0] == f"{EXAMPLE_DIR}/{EXAMPLE_FILES[0]}"
assert result[0] == f'{EXAMPLE_DIR}/{EXAMPLE_FILES[0]}'
mock_exec_cmd.assert_called_once()


Expand Down Expand Up @@ -93,8 +93,8 @@ def test_aws_ls_returns_empty_array_on_error(aws_utils: AwsUtils, monkeypatch: M


def test_aws_cp_succeeds(aws_utils: AwsUtils, mock_exec_cmd):
path = f"{EXAMPLE_DIR}/file.grib2.idx"
dest = f"{EXAMPLE_DIR}/new_file.grib2.idx"
path = f'{EXAMPLE_DIR}/file.grib2.idx'
dest = f'{EXAMPLE_DIR}/new_file.grib2.idx'

copy_success = aws_utils.aws_cp(path, dest)
assert copy_success
Expand Down Expand Up @@ -153,15 +153,15 @@ def test_get_valids_all(aws_utils: AwsUtils, mock_exec_cmd):
result = aws_utils.get_valids(EXAMPLE_ISSUE)

assert len(result) == 2
assert result[1] == ((EXAMPLE_VALID + timedelta(hours=1)), f"{EXAMPLE_DIR}/{EXAMPLE_FILES[1]}")
assert result[1] == ((EXAMPLE_VALID + timedelta(hours=1)), f'{EXAMPLE_DIR}/{EXAMPLE_FILES[1]}')


def test_get_valids_with_start_filter(aws_utils: AwsUtils, mock_exec_cmd):
valid_start = EXAMPLE_VALID + timedelta(hours=1)
result = aws_utils.get_valids(EXAMPLE_ISSUE, valid_start=valid_start)

assert len(result) == 1
assert result[0] == (valid_start, f"{EXAMPLE_DIR}/{EXAMPLE_FILES[1]}")
assert result[0] == (valid_start, f'{EXAMPLE_DIR}/{EXAMPLE_FILES[1]}')


def test_get_valids_with_start_and_end_filer(aws_utils: AwsUtils, mock_exec_cmd):
Expand All @@ -170,4 +170,4 @@ def test_get_valids_with_start_and_end_filer(aws_utils: AwsUtils, mock_exec_cmd)
result = aws_utils.get_valids(EXAMPLE_ISSUE, valid_start=valid_start, valid_end=valid_end)

assert len(result) == 1
assert result[0] == (valid_end, f"{EXAMPLE_DIR}/{EXAMPLE_FILES[0]}")
assert result[0] == (valid_end, f'{EXAMPLE_DIR}/{EXAMPLE_FILES[0]}')
48 changes: 24 additions & 24 deletions python/idsse_common/test/test_path_builder.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,86 +20,86 @@
# pylint: disable=invalid-name

def test_from_dir_filename_creates_valid_pathbuilder():
directory = "./test_directory"
filename ="some_file.txt"
directory = './test_directory'
filename ='some_file.txt'
path_builder = PathBuilder.from_dir_filename(directory, filename)

assert isinstance(path_builder, PathBuilder)
assert path_builder._basedir == directory
assert path_builder._file_ext == ""
assert path_builder._file_ext == ''

def test_from_path_creates_valid_pathbuilder():
base_dir = "./test_directory"
path_builder = PathBuilder.from_path(f"{base_dir}/some_file.txt")
base_dir = './test_directory'
path_builder = PathBuilder.from_path(f'{base_dir}/some_file.txt')

assert isinstance(path_builder, PathBuilder)
assert path_builder._basedir == base_dir
assert path_builder._file_base == base_dir
assert path_builder._file_ext == ""
assert path_builder._file_ext == ''

# properties
EXAMPLE_BASE_DIR = "./some/directory"
EXAMPLE_SUB_DIR = "another/directory"
EXAMPLE_FILE = "my_file"
EXAMPLE_FILE_EXT = ".txt"
EXAMPLE_BASE_DIR = './some/directory'
EXAMPLE_SUB_DIR = 'another/directory'
EXAMPLE_FILE = 'my_file'
EXAMPLE_FILE_EXT = '.txt'

@pytest.fixture
def local_path_builder() -> PathBuilder:
# create example Pa†hBuilder instance using test strings
return PathBuilder(EXAMPLE_BASE_DIR, EXAMPLE_SUB_DIR, EXAMPLE_FILE, EXAMPLE_FILE_EXT)

def test_dir_fmt(local_path_builder: PathBuilder):
assert local_path_builder.dir_fmt == f"{EXAMPLE_BASE_DIR}/{EXAMPLE_SUB_DIR}"
assert local_path_builder.dir_fmt == f'{EXAMPLE_BASE_DIR}/{EXAMPLE_SUB_DIR}'

def test_filename_fmt(local_path_builder: PathBuilder):
assert local_path_builder.filename_fmt == f"{EXAMPLE_FILE}{EXAMPLE_FILE_EXT}"
assert local_path_builder.filename_fmt == f'{EXAMPLE_FILE}{EXAMPLE_FILE_EXT}'

def test_file_ext(local_path_builder: PathBuilder):
assert local_path_builder.file_ext == EXAMPLE_FILE_EXT

def test_path_fmt(local_path_builder: PathBuilder):
assert local_path_builder.path_fmt == f"{EXAMPLE_BASE_DIR}/{EXAMPLE_SUB_DIR}/{EXAMPLE_FILE}{EXAMPLE_FILE_EXT}"
assert local_path_builder.path_fmt == f'{EXAMPLE_BASE_DIR}/{EXAMPLE_SUB_DIR}/{EXAMPLE_FILE}{EXAMPLE_FILE_EXT}'

# methods
EXAMPLE_ISSUE = datetime(1970, 10, 3, 12) # a.k.a. issued at
EXAMPLE_VALID = datetime(1970, 10, 3, 14) # a.k.a. valid until
EXAMPLE_LEAD = TimeDelta(EXAMPLE_VALID - EXAMPLE_ISSUE) # a.k.a. duration of time that issue lasts

EXAMPLE_FULL_PATH = "~/blend.19701003/12/core/blend.t12z.core.f002.co.grib2.idx"
EXAMPLE_FULL_PATH = '~/blend.19701003/12/core/blend.t12z.core.f002.co.grib2.idx'

@pytest.fixture
def path_builder() -> PathBuilder:
subdirectory_pattern = "blend.{issue.year:04d}{issue.month:02d}{issue.day:02d}/{issue.hour:02d}/core/"
file_base_pattern = "blend.t{issue.hour:02d}z.core.f{lead.hour:03d}.co"
return PathBuilder("~", subdirectory_pattern, file_base_pattern, "grib2.idx")
subdirectory_pattern = 'blend.{issue.year:04d}{issue.month:02d}{issue.day:02d}/{issue.hour:02d}/core/'
file_base_pattern = 'blend.t{issue.hour:02d}z.core.f{lead.hour:03d}.co'
return PathBuilder('~', subdirectory_pattern, file_base_pattern, 'grib2.idx')

def test_build_dir_gets_issue_valid_and_lead(path_builder: PathBuilder):
result_dict = path_builder.build_dir(issue=EXAMPLE_ISSUE)
assert result_dict == "~/blend.19701003/12/core/"
assert result_dict == '~/blend.19701003/12/core/'

def test_build_dir_fails_without_issue(path_builder: PathBuilder):
result_dict = path_builder.build_dir(issue=None)
assert result_dict is None

def test_build_filename(path_builder: PathBuilder):
result_filename = path_builder.build_filename(issue=EXAMPLE_ISSUE, lead=EXAMPLE_LEAD)
assert result_filename == "blend.t12z.core.f002.co.grib2.idx"
assert result_filename == 'blend.t12z.core.f002.co.grib2.idx'

def test_build_path(path_builder: PathBuilder):
result_filepath = path_builder.build_path(issue=EXAMPLE_ISSUE, valid=EXAMPLE_VALID)
assert result_filepath == "~/blend.19701003/12/core/blend.t12z.core.f002.co.grib2.idx"
assert result_filepath == '~/blend.19701003/12/core/blend.t12z.core.f002.co.grib2.idx'

def test_parse_dir(path_builder: PathBuilder):
result_dict = path_builder.parse_dir(EXAMPLE_FULL_PATH)

assert result_dict.keys() != []
assert result_dict["issue.year"] == 1970
assert result_dict["issue.day"] == 3
assert result_dict['issue.year'] == 1970
assert result_dict['issue.day'] == 3

def test_parse_filename(path_builder: PathBuilder):
result_dict = path_builder.parse_filename(EXAMPLE_FULL_PATH)
assert result_dict.keys() != []
assert result_dict["lead.hour"] == 2
assert result_dict['lead.hour'] == 2

def test_get_issue(path_builder: PathBuilder):
actual_issue: datetime = path_builder.get_issue(EXAMPLE_FULL_PATH)
Expand All @@ -112,7 +112,7 @@ def test_get_valid_from_issue_and_lead(path_builder: PathBuilder):
assert result_valid == EXAMPLE_VALID

def test_get_valid_returns_none_when_issue_or_lead_failed(path_builder: PathBuilder):
path_with_invalid_lead = "~/blend.19701003/12/core/blend.t12z.core.f000.co.grib2.idx"
path_with_invalid_lead = '~/blend.19701003/12/core/blend.t12z.core.f000.co.grib2.idx'
result_valid = path_builder.get_valid(path_with_invalid_lead)

assert result_valid is None
Expand Down

0 comments on commit 4701f7b

Please sign in to comment.