Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: Arduino-CI/arduino_ci
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.1.14
Choose a base ref
...
head repository: Arduino-CI/arduino_ci
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.1.15
Choose a head ref
  • 6 commits
  • 7 files changed
  • 1 contributor

Commits on Jan 2, 2019

  1. Copy the full SHA
    a087a19 View commit details
  2. Copy the full SHA
    c4c1691 View commit details
  3. Copy the full SHA
    6f9bc67 View commit details
  4. Copy the full SHA
    d05cdca View commit details

Commits on Jan 4, 2019

  1. Copy the full SHA
    3d989f4 View commit details
  2. v0.1.15 bump

    ianfixes committed Jan 4, 2019
    Copy the full SHA
    80cbfa8 View commit details
Showing with 26 additions and 9 deletions.
  1. +11 −1 CHANGELOG.md
  2. +1 −1 README.md
  3. +6 −2 REFERENCE.md
  4. +4 −2 exe/arduino_ci_remote.rb
  5. +1 −1 lib/arduino_ci/ci_config.rb
  6. +2 −1 lib/arduino_ci/cpp_library.rb
  7. +1 −1 lib/arduino_ci/version.rb
12 changes: 11 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -18,6 +18,15 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
### Security


## [0.1.15] - 2019-01-04
### Added
- Checking for (empty) set of platforms to build now precedes the check for examples to build; this avoids assuming that all libraries will have an example and dumping the file set when none are found

### Fixed
- Spaces in the names of project directores no longer cause unit test binaries to fail execution
- Configuration file overrides with `nil`s (or empty arrays) now properly override their base configuration


## [0.1.14] - 2018-09-21
### Added
- Arduino command wrapper now natively supports board manager URLs
@@ -254,7 +263,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Skeleton for gem with working unit tests


[Unreleased]: https://github.com/ianfixes/arduino_ci/compare/v0.1.14...HEAD
[Unreleased]: https://github.com/ianfixes/arduino_ci/compare/v0.1.15...HEAD
[0.1.15]: https://github.com/ianfixes/arduino_ci/compare/v0.1.14...v0.1.15
[0.1.14]: https://github.com/ianfixes/arduino_ci/compare/v0.1.13...v0.1.14
[0.1.13]: https://github.com/ianfixes/arduino_ci/compare/v0.1.12...v0.1.13
[0.1.12]: https://github.com/ianfixes/arduino_ci/compare/v0.1.11...v0.1.12
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

# ArduinoCI Ruby gem (`arduino_ci`) [![Gem Version](https://badge.fury.io/rb/arduino_ci.svg)](https://rubygems.org/gems/arduino_ci) [![Documentation](http://img.shields.io/badge/docs-rdoc.info-blue.svg)](http://www.rubydoc.info/gems/arduino_ci/0.1.14)
# ArduinoCI Ruby gem (`arduino_ci`) [![Gem Version](https://badge.fury.io/rb/arduino_ci.svg)](https://rubygems.org/gems/arduino_ci) [![Documentation](http://img.shields.io/badge/docs-rdoc.info-blue.svg)](http://www.rubydoc.info/gems/arduino_ci/0.1.15)

You want your Arduino library to be automatically built and tested every time someone contributes code to your project on GitHub, but the Arduino IDE lacks the ability to run unit tests. [Arduino CI](https://github.com/ianfixes/arduino_ci) provides that ability.

8 changes: 6 additions & 2 deletions REFERENCE.md
Original file line number Diff line number Diff line change
@@ -174,12 +174,16 @@ unittest(pin_history)
digitalWrite(myPin, HIGH);
// pin history is queued in case we want to analyze it later.
// we expect 6 values in that queue.
// we expect 6 values in that queue (5 that we set plus one
// initial value), which we'll hard-code here for convenience.
// (we'll actually assert those 6 values in the next block)
assertEqual(6, state->digitalPin[1].size());
bool expected[6] = {LOW, HIGH, LOW, LOW, HIGH, HIGH};
bool actual[6];
// convert history queue into an array so we can verify it
// convert history queue into an array so we can verify it.
// while we're at it, check that we received the amount of
// elements that we expected.
int numMoved = state->digitalPin[myPin].toArray(actual, 6);
assertEqual(6, numMoved);
6 changes: 4 additions & 2 deletions exe/arduino_ci_remote.rb
Original file line number Diff line number Diff line change
@@ -263,8 +263,10 @@ def display_files(pathname)
end
end

if library_examples.empty?
inform_multiline("Skipping libraries; no examples found in #{installed_library_path}") do
if config.platforms_to_build.empty?
inform("Skipping builds") { "no platforms were requested" }
elsif library_examples.empty?
inform_multiline("Skipping builds; no examples found in #{installed_library_path}") do
display_files(installed_library_path)
end
else
2 changes: 1 addition & 1 deletion lib/arduino_ci/ci_config.rb
Original file line number Diff line number Diff line change
@@ -93,7 +93,7 @@ def validate_data(rootname, source, schema)
if !schema.include?(ksym)
puts "Warning: unknown field '#{ksym}' under definition for #{rootname}"
elsif value.nil?
# unspecificed, that's fine
good_data[ksym] = nil
elsif value.class != expected_type
puts "Warning: expected field '#{ksym}' of #{rootname} to be '#{expected_type}', got '#{value.class}'"
else
3 changes: 2 additions & 1 deletion lib/arduino_ci/cpp_library.rb
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
require 'find'
require "arduino_ci/host"
require 'pathname'
require 'shellwords'

HPP_EXTENSIONS = [".hpp", ".hh", ".h", ".hxx", ".h++"].freeze
CPP_EXTENSIONS = [".cpp", ".cc", ".c", ".cxx", ".c++"].freeze
@@ -287,7 +288,7 @@ def run_test_file(executable)
@last_cmd = executable
@last_out = ""
@last_err = ""
Host.run_and_output(executable.to_s)
Host.run_and_output(executable.to_s.shellescape)
end

end
2 changes: 1 addition & 1 deletion lib/arduino_ci/version.rb
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module ArduinoCI
VERSION = "0.1.14".freeze
VERSION = "0.1.15".freeze
end