Sha256: 72b17f59bf197e0ee77f4f059d700ac6311ad8f0df94f8fbfc973f0e217f19e1

Contents?: true

Size: 970 Bytes

Versions: 17

Compression:

Stored size: 970 Bytes

Contents

module Souls
  module Api::Generate
    ## Generate Rspec Model
    def self.rspec_model(class_name: "user")
      file_dir = "./spec/models/"
      FileUtils.mkdir_p(file_dir) unless Dir.exist?(file_dir)
      file_path = "./spec/models/#{class_name}_spec.rb"
      return "RspecModel already exist! #{file_path}" if File.exist?(file_path)

      File.open(file_path, "w") do |f|
        f.write(<<~TEXT)
          RSpec.describe "#{class_name.camelize} Model テスト", type: :model do
            describe "#{class_name.camelize} データを書き込む" do
              it "valid #{class_name.camelize} Model" do
                expect(FactoryBot.build(:#{class_name.singularize})).to be_valid
              end
            end
          end
        TEXT
      end
      puts(Paint % ["Created file! : %{white_text}", :green, { white_text: [file_path.to_s, :white] }])
      file_path
    rescue StandardError => e
      raise(StandardError, e)
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
souls-0.51.2 lib/souls/api/generate/rspec_model.rb
souls-0.51.1 lib/souls/api/generate/rspec_model.rb
souls-0.51.0 lib/souls/api/generate/rspec_model.rb
souls-0.50.0 lib/souls/api/generate/rspec_model.rb
souls-0.49.0 lib/souls/api/generate/rspec_model.rb
souls-0.48.2 lib/souls/api/generate/rspec_model.rb
souls-0.48.1 lib/souls/api/generate/rspec_model.rb
souls-0.48.0 lib/souls/api/generate/rspec_model.rb
souls-0.47.1 lib/souls/api/generate/rspec_model.rb
souls-0.47.0 lib/souls/api/generate/rspec_model.rb
souls-0.46.1 lib/souls/api/generate/rspec_model.rb
souls-0.46.0 lib/souls/api/generate/rspec_model.rb
souls-0.45.4 lib/souls/api/generate/rspec_model.rb
souls-0.45.3 lib/souls/api/generate/rspec_model.rb
souls-0.45.2 lib/souls/api/generate/rspec_model.rb
souls-0.45.1 lib/souls/api/generate/rspec_model.rb
souls-0.45.0 lib/souls/api/generate/rspec_model.rb