<commit_before>module Cnab240::Arquivo
	class Arquivo

		attr_accessor :header
		attr_accessor :lotes
		attr_accessor :trailer
		attr_accessor :versao

		def initialize(versao = "V86")
			@versao = versao
			@header = eval("Cnab240::#{versao}::Arquivo::Header").new
			@trailer = eval("Cnab240::#{versao}::Arquivo::Trailer").new
			@lotes = []
		end

		def linhas
			self.auto_fill if Cnab240.auto_fill_enabled
			a = []
			a << @header.linha
			@lotes.each do |lote|
				lote.linhas.each do |linha|
					a << linha
				end
			end 
			a << @trailer.linha
			a
		end

		def <<(lote)
			lote.arquivo = self
			@lotes << lote
		end

		def string
			linhas.join("\r\n") << "\r\n" 
		end

		def save_to_file(filename)
			begin
				File.delete(filename) # LoL
			rescue
			end
			File.open(filename, 'w') {|f| f.write(string) }
		end

		def self.load_from_file(file, version)
			Cnab240::Builder.new(file, version).arquivos
		end


		def auto_fill
			trailer.totais_qtde_lotes = lotes.length.to_s
			qtd_registros = lotes.length * 2 # header e trailer de cada lote
			lotes.each { |l| qtd_registros += l.segmentos.length } # segmentos
			qtd_registros += 2 # header e trailer de arquivo
			trailer.totais_qtde_registros = qtd_registros.to_s
		end

	end

end<commit_msg>Fix test<commit_after>module Cnab240::Arquivo
	class Arquivo

		attr_accessor :header
		attr_accessor :lotes
		attr_accessor :trailer
		attr_accessor :versao

		def initialize(versao = "V86")
			@versao = versao
			@header = eval("Cnab240::#{versao}::Arquivo::Header").new
			@trailer = eval("Cnab240::#{versao}::Arquivo::Trailer").new
			@lotes = []
		end

		def linhas
			self.auto_fill if Cnab240.auto_fill_enabled
			a = []
			a << @header.linha
			@lotes.each do |lote|
				lote.linhas.each do |linha|
					a << linha
				end
			end 
			a << @trailer.linha
			a
		end

		def <<(lote)
			lote.arquivo = self
			@lotes << lote
		end

		def string
			linhas.join("\r\n") << "\r\n" 
		end

		def save_to_file(filename)
			begin
				File.delete(filename) # LoL
			rescue
			end
			File.open(filename, 'w') {|f| f.write(string) }
		end

		def self.load_from_file(file, version = nil)
			Cnab240::Builder.new(file, version).arquivos
		end


		def auto_fill
			trailer.totais_qtde_lotes = lotes.length.to_s
			qtd_registros = lotes.length * 2 # header e trailer de cada lote
			lotes.each { |l| qtd_registros += l.segmentos.length } # segmentos
			qtd_registros += 2 # header e trailer de arquivo
			trailer.totais_qtde_registros = qtd_registros.to_s
		end

	end

end
{'fraction_non_alphanumeric': 0.11990502572220024, 'fraction_numerical': 0.015037593984962405, 'mean_word_length': 3.1716171617161715, 'pattern_counts': {'":': 0, '<': 27, '<?xml version=': 0, '>': 3, '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': '6250041', 'n_tokens_mistral': 1220, 'n_tokens_neox': 1021, 'n_words': 211}