Sha256: 9dd11563aed68f4dd666ec1f988649d92b1e8851f161a73266250c5b5ac4737d
Contents?: true
Size: 914 Bytes
Versions: 3
Compression:
Stored size: 914 Bytes
Contents
# frozen_string_literal: true module Spout module Tests module DomainFormat # Verifies the format of a domain. def assert_domain_format(item) result = begin json = JSON.parse(File.read(item, encoding: "utf-8")) if json.is_a?(Array) json.empty? || json.select { |o| !o.is_a?(Hash) }.empty? else false end rescue JSON::ParserError false end message = \ "Must be an array of choice hashes. Ex:\n[\n {\n \"value\": "\ " \"1\",\n \"display_name\": \"Option 1\",\n \"description\""\ ": \"...\"\n },\n { ... },\n ...\n]" assert result, message end Dir.glob("domains/**/*.json").each do |file| define_method("test_domain_format: #{file}") do assert_domain_format file end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
spout-1.0.0 | lib/spout/tests/domain_format.rb |
spout-1.0.0.beta3 | lib/spout/tests/domain_format.rb |
spout-1.0.0.beta2 | lib/spout/tests/domain_format.rb |