Giter VIP home page Giter VIP logo

Comments (8)

rimmartin avatar rimmartin commented on July 22, 2024 1

well built and ran the unit tests on https://travis-ci.org/
https://travis-ci.org/HDF-NI/hdf5.node

It was a ubuntu build. From their docs it may be possible to build on mac as well.

from hdf5.node.

vincent-tr avatar vincent-tr commented on July 22, 2024

Hi,

Can you try :
./node_modules/.bin/mocha test
I think we may change the package.json test section to use locally installed mocha version, installed as devDependency as above.

When you execute npm install does it execute (and build) without errors ?

from hdf5.node.

vincent-tr avatar vincent-tr commented on July 22, 2024

Concerning automated integration tests, I don't know what to think.
I was using already existing tests, just added the one for the changed I made.
If the project is growing up, it can be a good idea.

from hdf5.node.

shumway avatar shumway commented on July 22, 2024

Thanks! It looks like the problem I had was that I was using node from MacPorts. The permissions appear to be set up funny, so that npm install wasn't working and I had to use sudo npm install -g.

I downloaded node v4.4.1 LTS for mac, which installed node in /usr/local/node, then I ran:

npm install --hdf5_home_mac=/opt/local

to build with the MacPorts HDF5 installed in my /opt/local directory. That worked well, though it took me several minutes to figure out the --hdf5_home_mac flag (--hdf5_home_linux didn't work). Perhaps --hdf5_home would be simpler—I don't know what we gain by including the OS in the flag.

Once that was installed, running npm test worked well. I see 64 test passing, 5 pending, and one HDF5-DIAG error:

$ npm test
...
  testing c++ interface 
    create an h5 and group 
      ✓ should be >0 
      ✓ reopen of pmc should be >0
      ✓ should be >0 
      ✓ initial should be >0 
      ✓ move should be 1 
      ✓ move should be pmcservices 
      ✓ should have one child of type group 
HDF5-DIAG: Error detected in HDF5 (1.8.16) thread 0:
  #000: H5T.c line 2146 in H5Tset_size(): size must be positive
    major: Invalid arguments to routine
    minor: Bad value
      ✓ should add an attribute to the file 


  64 passing (328ms)
  5 pending

from hdf5.node.

shumway avatar shumway commented on July 22, 2024

The advantages I've seen for continuous integration on travis-ci:

  • It's a backup check on the test status with multiple developers (not crucial right now)
  • It documents the build instructions for a new system. I've found this very useful for C++ packages with dependencies on linux distros, but it's not as crucial with npm modules. The HDF5 dependency and different build instructions for mac, windows, and linux may make this worthwhile for hdf5.node.
  • It may be useful to check for regressions if we support several node versions.
  • It can be useful for generating distributable binaries. Not sure how this complements or duplicates AWS.
  • New users may like the peace of mind seeing “build:passing” at the top of the README, with a link to the latest travis-ci build / test log. I find it's a nice sanity check if I'm having trouble installing a package on my machine.

No urgency, just offering to add travis-ci support if/when we want it.

from hdf5.node.

vincent-tr avatar vincent-tr commented on July 22, 2024

Indeed that could be a great advantage :)

from hdf5.node.

rimmartin avatar rimmartin commented on July 22, 2024

Is this https://travis-ci.org/?

I'm looking into it; and how it works with native code or if it could be made to work with prebuilts

from hdf5.node.

rimmartin avatar rimmartin commented on July 22, 2024

mac is testing on travis-ci as well

from hdf5.node.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.