29 lines
597 B
Plaintext
29 lines
597 B
Plaintext
|
#!/usr/bin/env ruby
|
||
|
# frozen_string_literal: true
|
||
|
|
||
|
require "w3c_validators"
|
||
|
|
||
|
def validator(file)
|
||
|
extension = File.extname(file)
|
||
|
if extension == ".html"
|
||
|
W3CValidators::NuValidator.new
|
||
|
elsif extension == ".css"
|
||
|
W3CValidators::CSSValidator.new
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def validate(file)
|
||
|
puts "Checking #{file}..."
|
||
|
|
||
|
path = File.expand_path "../_site/#{file}", __dir__
|
||
|
results = validator(file).validate_file(path)
|
||
|
|
||
|
return puts "Valid!" if results.errors.empty?
|
||
|
|
||
|
results.errors.each { |err| puts err.to_s }
|
||
|
exit 1
|
||
|
end
|
||
|
|
||
|
validate "index.html"
|
||
|
validate File.join "assets", "css", "style.css"
|