Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bump pytest to read pyproject.toml #71

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[![Build Status](https://travis-ci.org/yakutovicha/aiida-raspa.svg?branch=develop)](https://travis-ci.org/yakutovicha/aiida-raspa)
[![Build Status](https://github.com/yakutovicha/aiida-raspa/workflows/ci/badge.svg)](https://github.com/yakutovicha/aiida-raspa/actions)
[![Coverage Status](https://coveralls.io/repos/github/yakutovicha/aiida-raspa/badge.svg?branch=develop)](https://coveralls.io/github/yakutovicha/aiida-raspa?branch=develop)
[![PyPI version](https://badge.fury.io/py/aiida-raspa.svg)](https://badge.fury.io/py/aiida-raspa)

Expand Down
25 changes: 9 additions & 16 deletions aiida_raspa/parsers/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
from aiida.engine import ExitCode
from aiida.orm import Dict, List
from aiida.parsers.parser import Parser
from aiida_raspa.utils import parse_base_output
from aiida_raspa.utils import parse_base_output_fobj

# parser
# --------------------------------------------------------------------------------------------
Expand All @@ -19,12 +19,12 @@ class RaspaParser(Parser):
def parse(self, **kwargs): # pylint: disable=too-many-locals
"""Receives in input a dictionary of retrieved nodes. Does all the logic here."""
try:
out_folder = self.retrieved
self.retrieved
except NotExistent:
return self.exit_codes.ERROR_NO_RETRIEVED_FOLDER
output_folder_name = self.node.process_class.OUTPUT_FOLDER

if output_folder_name not in out_folder._repository.list_object_names(): # pylint: disable=protected-access
if output_folder_name not in self.retrieved.list_object_names():
return self.exit_codes.ERROR_NO_OUTPUT_FILE

output_parameters = {}
Expand All @@ -33,27 +33,20 @@ def parse(self, **kwargs): # pylint: disable=too-many-locals
for system_id, system_name in enumerate(self.node.get_extra('system_order')):
# specify the name for the system
system = "System_{}".format(system_id)
fname = out_folder._repository.list_object_names(os.path.join(output_folder_name, system))[0] # pylint: disable=protected-access
fname = self.retrieved.list_object_names(os.path.join(output_folder_name, system))[0] # pylint: disable=protected-access

# get absolute path of the output file
output_abs_path = os.path.join(
out_folder._repository._get_base_folder().abspath, # pylint: disable=protected-access
self.node.process_class.OUTPUT_FOLDER,
system,
fname)

# Check for possible errors
with open(output_abs_path) as fobj:
with self.retrieved.open(os.path.join(system, fname)) as fobj:
content = fobj.read()
if "Starting simulation" not in content:
return self.exit_codes.ERROR_SIMULATION_DID_NOT_START
if "Simulation finished" not in content:
return self.exit_codes.TIMEOUT

# parse output parameters and warnings
parsed_parameters, parsed_warnings = parse_base_output(output_abs_path, system_name, ncomponents)
output_parameters[system_name] = parsed_parameters
warnings += parsed_warnings
# parse output parameters and warnings
parsed_parameters, parsed_warnings = parse_base_output_fobj(fobj, system_name, ncomponents)
output_parameters[system_name] = parsed_parameters
warnings += parsed_warnings

self.out("output_parameters", Dict(dict=output_parameters))
self.out("warnings", List(list=warnings))
Expand Down
2 changes: 1 addition & 1 deletion aiida_raspa/utils/__init__.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
"""Raspa utils."""
from .base_parser import parse_base_output
from .base_parser import parse_base_output, parse_base_output_fobj
from .base_input_generator import RaspaInput
from .inspection_tools import add_write_binary_restart, modify_number_of_cycles, increase_box_lenght
Loading