VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /var/lib/gems/2.5.0/gems/tins-1.28.0/tests/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //var/lib/gems/2.5.0/gems/tins-1.28.0/tests/unit_test.rb
require 'test_helper'
require 'tins'

module Tins
  class UnitTest < Test::Unit::TestCase
    include Tins::Unit

    def test_prefixes
      assert_equal %i[ foo ], prefixes(%i[ foo ])
      assert_equal Tins::Unit::PREFIX_LC, prefixes(1000)
      assert_equal Tins::Unit::PREFIX_LC, prefixes(:lc)
      assert_equal Tins::Unit::PREFIX_LC, prefixes(:lowercase)
      assert_equal Tins::Unit::PREFIX_UC, prefixes(1024)
      assert_equal Tins::Unit::PREFIX_UC, prefixes(:uc)
      assert_equal Tins::Unit::PREFIX_UC, prefixes(:uppercase)
      assert_equal Tins::Unit::PREFIX_F, prefixes(0.001)
      assert_equal Tins::Unit::PREFIX_F, prefixes(:f)
      assert_equal Tins::Unit::PREFIX_F, prefixes(:fraction)
      assert_equal nil, prefixes(:nix)
    end

    def test_0_format
      assert_equal '0 b', format(0, format: '%d %U')
    end

    def test_format_multipliers
      assert_equal '23 Kb',
        format(23 * 1024, format: '%d %U')
      assert_equal '-23 Kb',
        format(-23 * 1024, format: '%d %U')
      assert_equal '23.1 Kb',
        format(23 * 1024 + 111, format: '%.1f %U')
      assert_equal 'Kbps: 23',
        format(23 * 1024, format: '%U: %d', unit: 'bps')
      assert_equal 'kbps: 23.12',
        format(23 * 1000 + 120, prefix: 1000, format: '%U: %.2f', unit: 'bps')
    end

    def test_format_fractions
      assert_equal '0.123 mS',
        format(0.000_123, format: '%.3f %U', prefix: 0.001, unit: ?S)
      assert_equal '0.123 µF',
        format(0.000_000_123, format: '%.3f %U', prefix: :f, unit: ?F)
    end

    def test_parse
      assert_in_delta 17_301_504, parse('16.5 Mb').to_i, 1e-5
      assert_in_delta 16_500_000, parse('16.5 mbps', unit: 'bps').to_i, 1e-5
      assert_in_delta 0.1234e-5, parse('1.234 µS', unit: ?S, prefix: :f).to_s, 1e-5
      assert_raise(ParserError) { parse('16.5 nix', unit: ?b) }
      assert_raise(ParserError) { parse('nix Mb') }
      assert_in_delta 17_301_504, parse('16.5 % Mb', format: '%f %% %U').to_i, 1e-5
      assert_raise(ParserError) { parse('16.5 Mb', format: '%f %% %U') }
      assert_raise(ParserError) { parse('16.5 Mb foo', format: '%f %U') }
      assert_raise(ParserError) { parse('16.5 Mb', format: '%f %U foo') }
    end

    def test_parse_predicate
      assert_in_delta 17_301_504, parse?('16.5 Mb').to_i, 1e-5
      assert_nil parse?('16.5 nix', unit: ?b)
    end
  end
end

VaKeR 2022