From 563c16c7cbccc2f3a088139bfb855865a51b027e Mon Sep 17 00:00:00 2001 From: Ryuta Kamizono Date: Fri, 2 Jun 2017 04:43:08 +0900 Subject: Add JSON attribute test cases for SQLite3 adapter --- .../test/cases/adapters/sqlite3/json_test.rb | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 activerecord/test/cases/adapters/sqlite3/json_test.rb (limited to 'activerecord/test/cases/adapters/sqlite3') diff --git a/activerecord/test/cases/adapters/sqlite3/json_test.rb b/activerecord/test/cases/adapters/sqlite3/json_test.rb new file mode 100644 index 0000000000..568a524058 --- /dev/null +++ b/activerecord/test/cases/adapters/sqlite3/json_test.rb @@ -0,0 +1,29 @@ +# frozen_string_literal: true + +require "cases/helper" +require "cases/json_shared_test_cases" + +class SQLite3JSONTest < ActiveRecord::SQLite3TestCase + include JSONSharedTestCases + + def setup + super + @connection.create_table("json_data_type") do |t| + t.column "payload", :json, default: {} + t.column "settings", :json + end + end + + def test_default + @connection.add_column "json_data_type", "permissions", column_type, default: { "users": "read", "posts": ["read", "write"] } + klass.reset_column_information + + assert_equal({ "users" => "read", "posts" => ["read", "write"] }, klass.column_defaults["permissions"]) + assert_equal({ "users" => "read", "posts" => ["read", "write"] }, klass.new.permissions) + end + + private + def column_type + :json + end +end -- cgit v1.2.3