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

ChristianTremblay / pyhaystack / 115
40%

Build:
DEFAULT BRANCH: master
Ran 30 Nov 2016 03:25AM UTC
Jobs 5
Files 48
Run time 3min
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
115

push

travis-ci

web-flow
Release 0.91 (#33)

* client.http.base: Send Content-Length as a string.

`requests` tries to do a regex match or similar on the values of
headers, and this requires the input to be a string.  It barfs when you
give it an `int`.

* client.ops.vendor.widesky: Fix typo in create entity operation.

* client.ops.entity: Add loggers, handle empty grid.

* client.ops.his: Handle write of empty series.

* client.ops.his: Handle no columns in write_his_frame.

* WC-241: revive multi-hist mixin.

* WC-241: initialize timestamp column for write grid

* WC-241: Added a simple application that uses the pyhaystack library

Edit by Stuart Longland <stuartl@vrt.com.au>: Removal of default
credentials!

* WC-237: Re-locate manual mutli-his-read-write test script.

Manually run test scripts can go under tests/manual, until such time as
they get automated.

* WC-237: client.session: Add storage for grid cache.

Some grids are unlikely to change in the course of a session.  Examples
of these are the 'about', 'formats' and 'ops' grids, which indicate the
features that the Haystack server supports.  We should cache these for a
limited period of time so that the results can be used for enabling
features depending on server version.

* WC-237: client.ops.grid: Implement cache support

* WC-237: client.session: Enable caching for about, ops, formats.

* WC-237: client.mixins: Remove defunct classes from __init__

* WC-237: client.session: Fix typos

* WC-237: client.session: Add "has_feature" operation.

Used to detect extension features in the Haystack server.  Some servers
implement extension featurs that the standard Haystack API makes
difficult to expose.

Sometimes a feature is a "new" feature in a particular release of a
server, as such, it should be disabled if the version is found to be
below a certain threshold.  (e.g. multi-point hisRead/hisWrite is
supported in WideSky v0.5.0 but not earlier)

This allows a run-time check to take place in the relevant state
machines to decide how to tackle the problem.

* WC-237: client.ops.feature: Add HasFeatureOperation base implementation.

* WC-237: client.ops.feature: Fix some state machine bugs, typos.

* WC-237: client.session: Use base class for HasFeaturesOperation

* WC-237: client.ops.vendor.widesky: Add detection of WideSky extensions

* WC-237: client.widesky: Enable detection of WideSky extensions

* WC-237: client.ops.his: Probe multi-point hisRead

* WC-237: client.ops.his: Implement probing of multi-hisWrite

* WC-237: Pull in semver for WideSky version checking

* WC-237: client.ops.his: Fix multi-point hisRead/hisWrite issues.

* client.http.dummy: Dummy HTTP Client/Server

This is a "HTTP Server" class and matching "Client" that we can drive
like a puppet for writing test cases.

* tests: Bring test case for 'about' method.

* client.http.base: Handle 'str' input on Python3.

If we're given an 'str', we might safely assume that the body is in fact
decoded already.

* tests.util: Add some utility functions

* tests.client.test_base: Check output of about()

* tests.client.test_base: Add ops test

* tests.client.test_base: Add formats() test

* tests.client.test_base: More tests for read by ID, etc.

* Bugfix: Handle missing entities in multi-entity read requests (#26)

* WC-366: client.ops.entity: Handle missing entities in read response.

If an entity does not exist, and we are requesting more than one, the
missing entity appears in the grid as a row of nulls:

    DEBUG:pyhaystack.client.WideskyHaystackSession.get_entity:Received grid: <Grid>
        Columns:
            id
            dis
            status
            user
        Row    0: id=Ref(u'test_user4', u'test_user4', True), dis=u'Test User4', status=u'inactive', user=MARKER
        Row    1: id=None, dis=None, status=None, user=None
        Row    2: id=Ref(u'test_user2', u'test_user2', True), dis=u'Test User2', status=u'inactive', user=MARKER
        Row    3: id=Ref(u'test_user3', u'test_user3', True), dis=u'Test User3', status=u'inactive', user=MARKER
    </Grid>

which then results in this exception:

      File "pyhaystack/client/ops/entity.py", line 51, in _on_read
        entity_id = row.pop('id').name  # Should be a Ref
    AttributeError: 'NoneType' object has no attribute 'name'

We should skip rows that have a null 'id'.

* WC-366: client entity tests: Test retrieval of entities by id.

* WC-366: client entity tests: Python 3 support

* Changed version to 0.91

Signed-off-by: Christian Tremblay <christian.tremblay@servisys.com>

939 of 2148 relevant lines covered (43.72%)

2.16 hits per line

Jobs
ID Job ID Ran Files Coverage
1 115.1 30 Nov 2016 03:25AM UTC 0
43.67
Travis Job 115.1
2 115.2 30 Nov 2016 03:29AM UTC 0
43.16
Travis Job 115.2
3 115.3 30 Nov 2016 03:25AM UTC 0
43.16
Travis Job 115.3
4 115.4 30 Nov 2016 03:25AM UTC 0
43.16
Travis Job 115.4
5 115.5 30 Nov 2016 03:26AM UTC 0
43.16
Travis Job 115.5
Source Files on build 115
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #115
  • 3b3d1870 on github
  • Prev Build on master (#88)
  • Next Build on master (#116)
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