From b6d556a0eb10b1e4dde021282945a40fbdbbc242 Mon Sep 17 00:00:00 2001
From: Borja Outerelo
Date: Thu, 28 Feb 2019 16:18:08 +0100
Subject: [PATCH 1/3] Add testing tools
---
Gemfile | 6 +++++-
scripts/cibuild | 5 +++++
2 files changed, 10 insertions(+), 1 deletion(-)
create mode 100755 scripts/cibuild
diff --git a/Gemfile b/Gemfile
index 44b4d8fe..d313333c 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,3 +1,7 @@
source 'https://rubygems.org'
gem 'github-pages', group: :jekyll_plugins
-#gemspec
+
+# Testing utilities
+gem "html-proofer"
+
+#gemspec
\ No newline at end of file
diff --git a/scripts/cibuild b/scripts/cibuild
new file mode 100755
index 00000000..4d5702d7
--- /dev/null
+++ b/scripts/cibuild
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+set -e # halt script on error
+
+bundle exec jekyll build
+bundle exec htmlproofer ./_site
\ No newline at end of file
From bc9bde0abb10b092811575f8e900f760100f36e5 Mon Sep 17 00:00:00 2001
From: Borja Outerelo
Date: Thu, 28 Feb 2019 16:31:59 +0100
Subject: [PATCH 2/3] Add testing instructions
---
README.md | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/README.md b/README.md
index fc4065cb..b7c22d0b 100644
--- a/README.md
+++ b/README.md
@@ -18,6 +18,27 @@ After installing Jekyll, install all dependencies by running
bundle install
```
+## Testing generated site
+
+To test the generated HTML site, you can use `html-proofer` gem.
+This Ruby gem checks and validates the jekyll generated HTML files.
+It checks a broad set of points: internal and external links existence (alerting of possible 404 errors), HTML attributes of the images and so on.
+
+To install it, It has been incorporated in the Gemfile so the previous dependency install command would have already installed it.
+
+You can run the following gem to tests the generated site.
+
+```bash
+bundle exec jekyll build
+bundle exec htmlproofer ./_site
+```
+
+A utility script has also been included to run these checks in a CI system smoothly.
+
+```bash
+./scripts/cibuild
+```
+
## License
Released under [the Apache Public License 2.0](LICENSE).
From fec5f72f3591d5a350a2d8cb9cfee315c306c9cd Mon Sep 17 00:00:00 2001
From: Borja Outerelo
Date: Thu, 28 Feb 2019 16:32:36 +0100
Subject: [PATCH 3/3] Fix broken links
---
_docs/embedded_tf/index.md | 2 +-
_docs/index.md | 8 ++++----
index.html | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/_docs/embedded_tf/index.md b/_docs/embedded_tf/index.md
index feaded2d..5415a33d 100644
--- a/_docs/embedded_tf/index.md
+++ b/_docs/embedded_tf/index.md
@@ -9,7 +9,7 @@ Table of contents
- [Introduction and Goal](#introduction-and-goal)
- [Requirements](#requirements)
- [Design](#design)
-- [Implementation of tf2_filter](#implementation-of-tf2filter)
+- [Implementation of tf2_filter](#implementation-of-tf2_filter)
- [Roadmap](#roadmap)
- [Acknowledgments](#acknowledgments)
diff --git a/_docs/index.md b/_docs/index.md
index dfd13b7d..f8e153f3 100644
--- a/_docs/index.md
+++ b/_docs/index.md
@@ -17,12 +17,12 @@ We're basically following the ROS2 architecture and make use of its middleware p
## Concept Documentation
- - Predictable scheduling and execution: [real-time_executor](real-time_executor/)
- - System modes and system hierarchy: [system_modes](system_modes/)
- - Embedded transform (tf) library: [embedded_tf](embedded_tf/)
+ - Predictable scheduling and execution: [real-time_executor](/docs/real-time_executor/)
+ - System modes and system hierarchy: [system_modes](/docs/system_modes/)
+ - Embedded transform (tf) library: [embedded_tf](/docs/embedded_tf/)
- Reference hardware: [https://github.com/microROS/hardware](https://github.com/microROS/hardware)
- Build infrastructure for embedded development using docker: [https://github.com/microROS/docker](https://github.com/microROS/docker)
- - FIWARE interoperability: [FIROS2](FIROS2/)
+ - FIWARE interoperability: [FIROS2](/docs/FIROS2)
## Source Code Repositories
diff --git a/index.html b/index.html
index 086413b2..fcf7325e 100644
--- a/index.html
+++ b/index.html
@@ -41,7 +41,7 @@
Getting Started
To get you started quickly, header over to the tutorial section. The basic ones
can even be done without a micro-controller. For more background and details, see the
- documentation.
+ documentation.