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

frictionlessdata / goodtables-py / 649 / 4
81%
master: 81%

Build:
DEFAULT BRANCH: master
Ran 19 Feb 2018 06:36PM UTC
Files 41
Run time 4s
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

19 Feb 2018 06:34PM UTC coverage: 92.02% (+0.8%) from 91.218%
649.4

push

travis-ci

web-flow
Simplify error, cells, and checks signature, and add report validation JSON Schema

* Extract error dict into Error class and don't modify received "errors" argument

By using a class, we keep the knowledge on what fields the error dict
contains into a single place, making it easier both to document the format, and
to modify it if needed.

Regarding the "errors" argument, I modified the code to return the errors found
instead of appending to an output variable. This makes the functions closer to
being idempotent (some still modify the "cells" array), and are more Pythonic
overall.

* Add JSON Schema for validation report

It allow us not only to validate the report, but can also be used as a basis to
document it.

* Move cell creation to goodtables.cells and simplify @check arguments

This reduces the repetition on cell creation, and creates a single place to add
functions that handle cells.

Initially, I created a `Cell` class to handle this. However, as noted by @roll,
this creates performance issues as we're creating an object for each cell in a
potentially large table. Using built-in structures is faster.

I also added the `row-number` to the cell itself, and renamed `number` to
`column-number`. To avoid breaking other people's codes, `number` still exists,
but our code only uses `column-number`. We can remove it in the future.

Regarding @check, I modified it to not need to pass the `type` and `context` on
the default checks, as they're already defined in the spec.json. This should
have been a separate commit.

1084 of 1178 relevant lines covered (92.02%)

0.92 hits per line

Source Files on job 649.4
  • Tree
  • List 0
  • Changed 28
  • Source Changed 28
  • Coverage Changed 27
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 1
  • Travis Job 649.4
  • 18bd6888 on github
  • Prev Job for on master (#637.4)
  • Next Job for on master (#656.4)
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

© 2026 Coveralls, Inc