1. 11 May, 2016 6 commits
    • Chris Kitching's avatar
      Install the test binary and test data. Fixes #241 · 527a69bb
      Chris Kitching authored
      The resulting install tree, when tests are enabled, looks like this:
      
      ```
      .
      ├── cmake
      │   ├── nlohmann_jsonConfig.cmake
      │   ├── nlohmann_jsonConfigVersion.cmake
      │   └── nlohmann_jsonTargets.cmake
      ├── include
      │   └── nlohmann
      │       └── json.hpp
      └── test
          ├── bin
          │   └── json_unit
          └── data
              ├── json_nlohmann_tests
              │   ├── all_unicode.json
              │   └── bom.json
              ├── json.org
              │   ├── 1.json
              │   ├── ...
              ├── json_roundtrip
              │   ├── roundtrip01.json
              │   ├── roundtrip02.json
              │   └── ...
              ├── json_tests
              │   ├── fail10.json
              │   └── ...
              └── json_testsuite
                  └── sample.json
      ```
      
      It has the property that you can invoke the test binary from the
      root of the install tree and the tests work correctly (you no
      longer depend on the test binary being run inside the source
      tree).
      
      If tests are disabled, the entire `test/` subtree is omitted.
      Notice how that yields exactly what you want for using this
      library in other projects.
      
      I do not believe I need to update travis due to this change, as the
      evil Makefile continues to do in-tree builds. I expect I'll find
      out soon enough.
      527a69bb
    • Chris Kitching's avatar
      Introduce structure to the test/ directory · af76508f
      Chris Kitching authored
      This introduces a clear separation between test data and test
      binaries. Test data is moved into test/data, and the test binaries
      move into test/src. A new CMake script specific to building the
      tests is introduced in /test to slightly clean up the toplevel
      one.
      
      As well as tidying things up, this makes the next step trivial...
      af76508f
    • Chris Kitching's avatar
      Use definitely-unique target/project name · 4e6aacda
      Chris Kitching authored
      There exist lots of json libraries, and project/target names must
      be globally unique. If someone integrated with this library in a
      particularly stupid way, using a generic name like "json" might
      cause a problem.
      4e6aacda
    • Chris Kitching's avatar
      Don't use variable for the test target name · b6becce8
      Chris Kitching authored
      I'm not sure that using a variable for target names really helps
      with clarity. Unlike paths, target names aren't really something
      you change. In a sense, targets are themselves a sort of variable,
      so having a variable to name a variable seems just a bit gnarly.
      b6becce8
    • Chris Kitching's avatar
      Unset execute bit on sample.json · bf7b6d15
      Chris Kitching authored
      bf7b6d15
    • Chris Kitching's avatar
  2. 08 May, 2016 2 commits
  3. 07 May, 2016 3 commits
  4. 30 Apr, 2016 1 commit
  5. 29 Apr, 2016 17 commits
  6. 26 Apr, 2016 4 commits
  7. 25 Apr, 2016 4 commits
  8. 24 Apr, 2016 3 commits