Sha256: dac40ae74a24752d0c3826c5db5429e64cacdf808d0affa68b22f6898a0b1341
Contents?: true
Size: 1.99 KB
Versions: 1
Compression:
Stored size: 1.99 KB
Contents
class DevSystem::TestCommand < DevSystem::Command def self.call args log "args = #{args.inspect}" App.load_all now = Time.now test_classes = Liza::Test.descendants _call_silence_base_units if Lizarb::IS_APP_DIR test_classes = test_classes.select { |tc| tc.source_location[0].include? Lizarb::APP_DIR } end test_classes = _call_sort test_classes log "Testing #{test_classes}" _call_testing test_classes log "Done Testing (#{now.diff}s)" puts log "Counting #{test_classes.count} Test Classes" _call_counting test_classes log "Done Counting (#{now.diff}s)" end def self._call_silence_base_units [ Liza::Box, Liza::Panel, Liza::Controller, ].each do |x| def x.log(...) end def x.puts(...) end end end def self._call_sort test_classes test_classes.sort_by! &:name proc_namespaced = proc { |tc| tc.name.include? "::" } proc_liza = proc { |tc| tc.name[0..3] == "Liza" } tc_app = test_classes.reject(&proc_namespaced) tc_namespaced = test_classes.select(&proc_namespaced) tc_liza = tc_namespaced.select(&proc_liza) tc_system = tc_namespaced.reject(&proc_liza) tc_app.sort_by! &:source_location tc_liza.sort_by! &:source_location [tc_liza, tc_system, tc_app].flatten end def self._call_testing test_classes i, count = 0, test_classes.count for test_class in test_classes test_class.call i+=1, count end end def self._call_counting test_classes puts totals = Hash.new { 0 } last_namespace = nil test_classes.each do |test_class| namespace = test_class.first_namespace puts if last_namespace != namespace last_namespace = namespace test_class.totals.each do |k, v| totals[k] += v.size end Liza.log " #{"#{test_class}.totals".ljust 60} #{test_class.totals.map { |k, v| [k, v.size] }.to_h}" end puts Liza.log " #{"Total".ljust 60} #{totals}" puts end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
lizarb-1.0.4 | lib/dev_system/dev/controllers/command/test_command.rb |