File: format.rb

package info (click to toggle)
ruby-spreadsheet 1.3.4-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 8,980 kB
  • sloc: ruby: 6,939; makefile: 10
file content (116 lines) | stat: -rw-r--r-- 4,262 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#!/usr/bin/env ruby
# TestFormat -- Spreadsheet -- 06.11.2012 -- mina.git@naguib.ca

$: << File.expand_path("../lib", File.dirname(__FILE__))

require "test/unit"
require "spreadsheet"

module Spreadsheet
  class TestFormat < Test::Unit::TestCase
    def setup
      @format = Format.new
    end

    def test_date?
      assert_equal false, @format.date?
      @format.number_format = "hms"
      assert_equal false, @format.date?
      @format.number_format = "Y"
      assert_equal true, @format.date?
      @format.number_format = "YMD"
      assert_equal true, @format.date?
      @format.number_format = "[$-409]YMD"
      assert_equal true, @format.date?
      @format.number_format = "\\$#,##0.00_);[RED]\"($\"#,##0.00\\)"
      assert_equal false, @format.date?
      @format.number_format = "0.00;[RED]\\-0.00"
      assert_equal false, @format.date?
      @format.number_format = "[$-C0A]dd\\-mmm\\-yy"
      assert_equal true, @format.date?
    end

    def test_date_or_time?
      assert_equal false, @format.date_or_time?
      @format.number_format = "hms"
      assert_equal true, @format.date_or_time?
      @format.number_format = "YMD"
      assert_equal true, @format.date_or_time?
      @format.number_format = "hmsYMD"
      assert_equal true, @format.date_or_time?
      @format.number_format = "[$-409]hmsYMD"
      assert_equal true, @format.date_or_time?
      @format.number_format = "\\$#,##0.00_);[RED]\"($\"#,##0.00\\)"
      assert_equal false, @format.date_or_time?
      @format.number_format = "0.00;[RED]\\-0.00)"
      assert_equal false, @format.date_or_time?
    end

    def test_datetime?
      assert_equal false, @format.datetime?
      @format.number_format = "H"
      assert_equal false, @format.datetime?
      @format.number_format = "S"
      assert_equal false, @format.datetime?
      @format.number_format = "Y"
      assert_equal false, @format.datetime?
      @format.number_format = "HSYMD"
      assert_equal true, @format.datetime?
      @format.number_format = "\\$#,##0.00_);[RED]\"($\"#,##0.00\\)"
      assert_equal false, @format.datetime?
      @format.number_format = "0.00;[RED]\\-0.00)"
      assert_equal false, @format.datetime?
    end

    def test_time?
      assert_equal false, @format.time?
      @format.number_format = "YMD"
      assert_equal false, @format.time?
      @format.number_format = "hmsYMD"
      assert_equal true, @format.time?
      @format.number_format = "h"
      assert_equal true, @format.time?
      @format.number_format = "hm"
      assert_equal true, @format.time?
      @format.number_format = "[$-409]hms"
      assert_equal true, @format.time?
      @format.number_format = "hms"
      assert_equal true, @format.time?
      @format.number_format = "\\$#,##0.00_);[RED]\"($\"#,##0.00\\)"
      assert_equal false, @format.time?
      @format.number_format = "0.00;[RED]\\-0.00)"
      assert_equal false, @format.time?
    end

    def test_borders?
      assert_equal [:none, :none, :none, :none], @format.border
      @format.border = :thick
      assert_equal [:thick, :thick, :thick, :thick], @format.border
      @format.left = :hair
      assert_equal [:thick, :thick, :thick, :hair], @format.border
      @format.right = :hair
      assert_equal [:thick, :thick, :hair, :hair], @format.border
      @format.top = :hair
      assert_equal [:thick, :hair, :hair, :hair], @format.border
      @format.bottom = :hair
      assert_equal [:hair, :hair, :hair, :hair], @format.border
      assert_raises(ArgumentError) do
        @format.bottom = :bogus
      end
      assert_equal [:black, :black, :black, :black], @format.border_color
      @format.border_color = :green
      assert_equal [:green, :green, :green, :green], @format.border_color
      @format.left_color = :red
      assert_equal [:green, :green, :green, :red], @format.border_color
      @format.right_color = :red
      assert_equal [:green, :green, :red, :red], @format.border_color
      @format.top_color = :red
      assert_equal [:green, :red, :red, :red], @format.border_color
      @format.bottom_color = :red
      assert_equal [:red, :red, :red, :red], @format.border_color
      assert_raises(ArgumentError) do
        @format.bottom_color = :bogus
      end
    end
  end
end