• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

aiidateam / aiida_core / 4926
70%
develop: 74%

Build:
Build:
LAST BUILD BRANCH: fix_3032_doc_working_importexport
DEFAULT BRANCH: develop
Ran 18 Jan 2019 07:57AM UTC
Jobs 3
Files 397
Run time 9min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
4926

push

travis-ci

web-flow
Redesign the Parser class (#2397)

Now that job calculations are directly implemented as processes, by sub
classing the `CalcJob` process, a lot of functionality has been removed
from the `CalcJobNode` that did not belong there. However, quite a bit
of attributes and methods remain there that are used by the `Parser`
that parses results attached to the node, such as names for retrieved
links. These should, just like the input and output nodes, be specified
on the `Process` class.

We redesign the `Parser` class to get this the information it needs from
the `Process` class which can be gotten through the `CalcJobNode` as a
proxy. Sub sequently, it can directly get information like default
output node labels as well as exit codes from the process class. The
base method that will be called by the engine to trigger parsing of a
retrieved job calculation is the `parse` method. The engine will pass
the nodes that the parser needs for parsing as keyword arguments. The
engine knows which nodes to pass as they have been marked as such by the
`CalcJob` process spec.

The `Parser` class exposes a convenience method `parse_from_node` that
can be called outside of the engine, passing in a `CalcJobNode`. This
will trigger the `parse` method to be called again, but it will be
wrapped in a `calcfunction` ensuring that the produced outputs will be
connected to a `ProcessNode` in the provenance graph.

Finally, what was the `CalculationResultManager` has been renamed to
`CalcJobResultManager` and has been moved to `aiida.orm.utils`. The
interface has also been adapted and it now no longer goes through the
parser class to get the information it needs but rather through the
`CalcJob` class that can be retrieved from the `CalcJobNode` for which
it is constructed.

24026 of 34521 relevant lines covered (69.6%)

1.87 hits per line

Jobs
ID Job ID Ran Files Coverage
5 4926.5 (TEST_AIIDA_BACKEND=django TEST_TYPE="tests") 18 Jan 2019 07:57AM UTC 0
63.37
Travis Job 4926.5
7 4926.7 (TEST_AIIDA_BACKEND=sqlalchemy TEST_TYPE="tests") 18 Jan 2019 08:04AM UTC 0
62.07
Travis Job 4926.7
8 4926.8 (TEST_AIIDA_BACKEND=sqlalchemy TEST_TYPE="tests") 18 Jan 2019 08:07AM UTC 0
62.01
Travis Job 4926.8
Source Files on build 4926
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #4926
  • 423523ce on github
  • Prev Build on provenance_redesign (#4921)
  • Next Build on provenance_redesign (#4928)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc