diff --git a/db/migrate/20240627142613_create_content_block_documents.rb b/db/migrate/20240627142613_create_content_block_documents.rb new file mode 100644 index 00000000000..c7a06f2905a --- /dev/null +++ b/db/migrate/20240627142613_create_content_block_documents.rb @@ -0,0 +1,11 @@ +class CreateContentBlockDocuments < ActiveRecord::Migration[7.1] + def change + create_table :content_block_documents do |t| + t.string :content_id + t.string :title + t.string :block_type + t.datetime "created_at", precision: nil + t.datetime "updated_at", precision: nil + end + end +end diff --git a/db/schema.rb b/db/schema.rb index d56457a226e..e5fecc9e88f 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[7.1].define(version: 2024_06_18_164903) do +ActiveRecord::Schema[7.1].define(version: 2024_06_27_142613) do create_table "assets", charset: "utf8mb3", force: :cascade do |t| t.string "asset_manager_id", null: false t.string "variant", null: false @@ -191,6 +191,14 @@ t.index ["contactable_id", "contactable_type"], name: "index_contacts_on_contactable_id_and_contactable_type" end + create_table "content_block_documents", charset: "utf8mb3", force: :cascade do |t| + t.string "content_id" + t.string "title" + t.string "block_type" + t.datetime "created_at", precision: nil + t.datetime "updated_at", precision: nil + end + create_table "data_migration_records", id: :integer, charset: "utf8mb3", force: :cascade do |t| t.string "version" t.index ["version"], name: "index_data_migration_records_on_version", unique: true diff --git a/lib/engines/content_object_store/app/models/content_object_store/content_block_document.rb b/lib/engines/content_object_store/app/models/content_object_store/content_block_document.rb new file mode 100644 index 00000000000..d3b0c8c1661 --- /dev/null +++ b/lib/engines/content_object_store/app/models/content_object_store/content_block_document.rb @@ -0,0 +1,2 @@ +class ContentObjectStore::ContentBlockDocument < ApplicationRecord +end diff --git a/lib/engines/content_object_store/test/factories/content_block_document.rb b/lib/engines/content_object_store/test/factories/content_block_document.rb new file mode 100644 index 00000000000..428c1be3fe8 --- /dev/null +++ b/lib/engines/content_object_store/test/factories/content_block_document.rb @@ -0,0 +1,9 @@ +FactoryBot.define do + factory :content_block_document, class: "ContentObjectStore::ContentBlockDocument" do + sequence(:content_id) { SecureRandom.uuid } + title { "Title" } + block_type { "Type" } + created_at { Time.zone.now.utc } + updated_at { Time.zone.now.utc } + end +end diff --git a/lib/engines/content_object_store/test/unit/app/models/content_block_document_test.rb b/lib/engines/content_object_store/test/unit/app/models/content_block_document_test.rb new file mode 100644 index 00000000000..f43513c504c --- /dev/null +++ b/lib/engines/content_object_store/test/unit/app/models/content_block_document_test.rb @@ -0,0 +1,20 @@ +require "test_helper" + +class ContentObjectStore::ContentBlockDocumentTest < ActiveSupport::TestCase + test "content_block_document exists with required data" do + content_block_document = create( + :content_block_document, + content_id: "52084b2d-4a52-4e69-ba91-3052b07c7eb6", + title: "Title", + block_type: "Type", + created_at: Time.zone.local(2000, 12, 31, 23, 59, 59).utc, + updated_at: Time.zone.local(2000, 12, 31, 23, 59, 59).utc, + ) + + assert_equal "52084b2d-4a52-4e69-ba91-3052b07c7eb6", content_block_document.content_id + assert_equal "Title", content_block_document.title + assert_equal "Type", content_block_document.block_type + assert_equal Time.zone.local(2000, 12, 31, 23, 59, 59).utc, content_block_document.created_at + assert_equal Time.zone.local(2000, 12, 31, 23, 59, 59).utc, content_block_document.updated_at + end +end