summaryrefslogtreecommitdiffhomepage
path: root/tests/encoding.rb
diff options
context:
space:
mode:
authorJohn Gabriele <jgabriele@fastmail.fm>2018-09-10 02:05:03 -0400
committerJohn Gabriele <jgabriele@fastmail.fm>2018-09-10 02:05:03 -0400
commit3cfdf5777266d780a211cdad1c52755170097cc8 (patch)
tree8a269e1679f14ceac7a10c0592fa14bb947e5208 /tests/encoding.rb
parent60eac5d50054ddae92bd23fb51f3acc1c306a762 (diff)
parent6d087ae0f289e7013807639cbd609f991f968166 (diff)
Merge remote-tracking branch 'origin/master' into patch-1
Diffstat (limited to 'tests/encoding.rb')
-rw-r--r--tests/encoding.rb32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/encoding.rb b/tests/encoding.rb
new file mode 100644
index 00000000..a0b3b184
--- /dev/null
+++ b/tests/encoding.rb
@@ -0,0 +1,32 @@
+#!/usr/bin/env ruby
+require 'charlock_holmes'
+$file_count = 0;
+markdown_files = Dir["./**/*.html.markdown"]
+markdown_files.each do |file|
+ begin
+ contents = File.read(file)
+ detection = CharlockHolmes::EncodingDetector.detect(contents)
+ case detection[:encoding]
+ when 'UTF-8'
+ $file_count = $file_count + 1
+ when 'ISO-8859-1'
+ $file_count = $file_count + 1
+ when /ISO-8859/
+ puts "Notice: #{file} was detected as #{detection[:encoding]} encoding. Everything is probably fine."
+ $file_count = $file_count + 1
+ else
+ puts "WARNING #{file} was detected as #{detection[:encoding]} encoding. Please save the file in UTF-8!"
+ end
+ rescue Exception => msg
+ puts msg
+ end
+end
+files_failed = markdown_files.length - $file_count
+if files_failed != 0
+ puts "FAILURE!!! #{files_failed} files were unable to be validated as UTF-8!"
+ puts "Please resave the file as UTF-8."
+ exit 1
+else
+ puts "Success. All #{$file_count} files passed UTF-8 validity checks."
+ exit 0
+end