<commit_before>namespace :db do
  desc "Erase and fill database"
  task :populate => :environment do
    class Range
      def random
        to_a.sample
      end
    end


    [Pagina, Caja, Sidebar, Navegacion].each(&:delete_all)

    20.times do
      caja = Caja.new
      caja.titulo = Faker::Lorem.words((1..3).random).join(' ').titleize
      caja.cuerpo = Faker::Lorem.paragraphs((1..3).random).join("\n\n")
      caja.save(false)
    end

    caja_ids = Caja.all.map(&:id)

    15.times do
      pagina = Pagina.new
      pagina.titulo = Faker::Lorem.words((1..4).random).join(' ').titleize
      pagina.cuerpo = Faker::Lorem.paragraphs((4..10).random).join("\n\n")
      pagina.save(false)

      posibles_ids = caja_ids.clone
      orden = 1

      (1..3).random.times do
        sidebar = Sidebar.new
        sidebar.pagina_id = pagina.id
        sidebar.orden = orden
        sidebar.caja_id = posibles_ids.delete(posibles_ids.sample)
        sidebar.save
        orden += 1
      end
    end

    ['Nuestros valores', 'Ámbitos de actuación', 'Participamos', 'Ubicación', 'Contacto'].each_with_index do |titulo, index|
      pagina = Pagina.new(:titulo => titulo)
      pagina.cuerpo = Faker::Lorem.paragraphs((4..10).random).join("\n\n")<commit_msg>Más datos de prueba para probar bien la paginación.<commit_after>namespace :db do
  desc "Erase and fill database"
  task :populate => :environment do
    class Range
      def random
        to_a.sample
      end
    end


    [Pagina, Caja, Sidebar, Navegacion].each(&:delete_all)

    40.times do
      caja = Caja.new
      caja.titulo = Faker::Lorem.words((1..3).random).join(' ').titleize
      caja.cuerpo = Faker::Lorem.paragraphs((1..3).random).join("\n\n")
      caja.save(false)
    end

    caja_ids = Caja.all.map(&:id)

    75.times do
      pagina = Pagina.new
      pagina.titulo = Faker::Lorem.words((1..4).random).join(' ').titleize
      pagina.cuerpo = Faker::Lorem.paragraphs((4..10).random).join("\n\n")
      pagina.save(false)

      posibles_ids = caja_ids.clone
      orden = 1

      (1..3).random.times do
        sidebar = Sidebar.new
        sidebar.pagina_id = pagina.id
        sidebar.orden = orden
        sidebar.caja_id = posibles_ids.delete(posibles_ids.sample)
        sidebar.save
        orden += 1
      end
    end

    ['Nuestros valores', 'Ámbitos de actuación', 'Participamos', 'Ubicación', 'Contacto'].each_with_index do |titulo, index|
      pagina = Pagina.new(:titulo => titulo)
      pagina.cuerpo = Faker::Lorem.paragraphs((4..10).random).join("\n\n")
{'fraction_non_alphanumeric': 0.1445830085736555, 'fraction_numerical': 0.01558846453624318, 'mean_word_length': 2.5068306010928962, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '320412', 'n_tokens_mistral': 940, 'n_tokens_neox': 911, 'n_words': 169}