rgb2hex 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +21 -0
  3. data/Rakefile +8 -0
  4. data/test/test_rgb2hex.rb +91 -0
  5. metadata +27 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1474523d4c622b237ad432a718914fa7d20c6ec7
4
- data.tar.gz: 8f05a4333e7078dab321489447576815278c56bd
3
+ metadata.gz: dc4860c3e7f0fdf38d6a213e9f492c70c9780bad
4
+ data.tar.gz: 9287bec4eb239ac663b140d50655bc6fc2b86045
5
5
  SHA512:
6
- metadata.gz: e5e7dcca4d65c19935f85f5f771116ce1c20d35e6cd11bcc6b2b6451f000d32db9f8909609c9b9387116425af9bef074225cbc3781ed914ee1dec81ea9a1fbc5
7
- data.tar.gz: 6311509811861d83a64ec42c4ca0b06dea66817a1c69bcf7aee83bccd9d25a2ed5fbd93633a5b976888d1a541954b696e93d24153eac959a9e4206e086774d28
6
+ metadata.gz: fcc60ea73e39b2685183209cb73d9ce58814e10d1b4fce753ba7c5c9d30f7fd529fb389096209e7c83cea793e8b05f2f1b3f77969b2f9daba9c5218408c4504d
7
+ data.tar.gz: 3201752c8b75e5a11f73d9f5df26529f689f634785b01a546df61f05611de78c486e29d30a233976172751ef63eff9ef43e4365a821e69ea8cff7cd7fdedea8e
@@ -0,0 +1,21 @@
1
+ # Day 1. Rgb2Hex
2
+
3
+ [![Gem Version](https://badge.fury.io/rb/rgb2hex.png)](http://badge.fury.io/rb/rgb2hex)
4
+ [![Build Status](https://travis-ci.org/zjjz/180-tools.png)](https://travis-ci.org/zjjz/180-tools)
5
+
6
+
7
+ `Rgb2Hex` is a ruby gem which lets you quickly convert RGB value of a color to its HEX value.
8
+
9
+ ## Install
10
+
11
+ Gem is [hosted on RubyGems.org](https://rubygems.org/gems/rgb2hex). To install the gem enter the following command:
12
+
13
+ >> gem install rgb2hex
14
+
15
+
16
+ ## Usage
17
+
18
+ `Rgb2Hex` expects 3 integer values between 0 and 255 each separated by a space. It produces a HEX value prefixed with `#`. `Rgb2Hex` gem comes with a binary, which allows the gem to be used from the console.
19
+
20
+ >> rgb2hex 255 0 144 # magenta
21
+ => #ff0090
@@ -0,0 +1,8 @@
1
+ require 'rake/testtask'
2
+
3
+ Rake::TestTask.new do |t|
4
+ t.libs << 'test'
5
+ end
6
+
7
+ desc "Run tests"
8
+ task :default => :test
@@ -0,0 +1,91 @@
1
+ require 'test/unit'
2
+ require 'rgb2hex'
3
+
4
+ class Rgb2HexTest < Test::Unit::TestCase
5
+ def test_defaults_to_black
6
+ assert_equal "#000000",
7
+ Rgb2Hex.convert
8
+ end
9
+
10
+ def test_converts_black
11
+ assert_equal "#000000",
12
+ Rgb2Hex.convert(0, 0, 0)
13
+ end
14
+
15
+ def test_converts_white
16
+ assert_equal "#ffffff",
17
+ Rgb2Hex.convert(255, 255, 255)
18
+ end
19
+
20
+ def test_converts_magenta
21
+ assert_equal "#ff0090",
22
+ Rgb2Hex.convert(255, 0, 144)
23
+ end
24
+
25
+ def test_converts_cyan
26
+ assert_equal "#00ffff",
27
+ Rgb2Hex.convert(0, 255, 255)
28
+ end
29
+
30
+ def test_throws_exeption_when_num_less_than_0
31
+ exception = assert_raise(ArgumentError) do
32
+ Rgb2Hex.convert(-1, 0, 0)
33
+ end
34
+ assert_equal "input argument is less than 0", exception.message
35
+ end
36
+
37
+ def test_throws_exeption_when_num_more_than_255
38
+ exception = assert_raise(ArgumentError) do
39
+ Rgb2Hex.convert(0, 0, 256)
40
+ end
41
+ assert_equal "input argument is more than 255", exception.message
42
+ end
43
+
44
+ def test_throws_exeption_when_multiple_nums_more_than_255
45
+ exception = assert_raise(ArgumentError) do
46
+ Rgb2Hex.convert(0, 1001, 256)
47
+ end
48
+ assert_equal "input argument is more than 255", exception.message
49
+ end
50
+
51
+ def test_throws_exeption_when_nums_are_less_than_0_and_more_than_255
52
+ exception = assert_raise(ArgumentError) do
53
+ Rgb2Hex.convert(362, 1001, -10)
54
+ end
55
+ assert_equal "input argument is less than 0", exception.message
56
+ end
57
+
58
+ def test_dirty_inputs
59
+ assert_equal "#ff0090",
60
+ Rgb2Hex.convert("255", "0", "144")
61
+
62
+ assert_equal "#ff0090",
63
+ Rgb2Hex.convert("255,", "0,", "144,")
64
+
65
+ assert_equal "#ff0090",
66
+ Rgb2Hex.convert("255,", "sadf0,", "- 144,")
67
+ end
68
+
69
+ def test_single_argument
70
+ assert_equal "#ffffff",
71
+ Rgb2Hex.convert("255, 255, 255")
72
+ end
73
+
74
+ def test_some_more_single_arguments
75
+ assert_equal "#00ffff",
76
+ Rgb2Hex.convert("rgb(0, 255, 255)")
77
+ assert_equal "#00ffff",
78
+ Rgb2Hex.convert("rgb[0; 255; 255]")
79
+ assert_equal "#00ffff",
80
+ Rgb2Hex.convert("rgb[0; 255; 255]")
81
+ assert_equal "#00ffff",
82
+ Rgb2Hex.convert("rgb[0; 255; 255]")
83
+ assert_equal "#010203",
84
+ Rgb2Hex.convert("red=1 green=2 blue=3")
85
+ end
86
+
87
+ def test_illegal_number_of_input_args
88
+ assert_equal "illegal number of input arguments",
89
+ Rgb2Hex.convert(1, 2)
90
+ end
91
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rgb2hex
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Zelenkov
@@ -9,21 +9,40 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2013-07-26 00:00:00.000000000 Z
12
- dependencies: []
13
- description: Converts RGB values to HEX value
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '10.1'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '10.1'
27
+ description: |2
28
+ Converts RGB values to HEX value
14
29
  email: zj@jz.ee
15
30
  executables:
16
31
  - rgb2hex
17
32
  extensions: []
18
- extra_rdoc_files: []
33
+ extra_rdoc_files:
34
+ - README.md
19
35
  files:
20
36
  - lib/rgb2hex.rb
21
37
  - bin/rgb2hex
38
+ - Rakefile
39
+ - README.md
40
+ - test/test_rgb2hex.rb
22
41
  homepage: https://github.com/zjjz/180-tools/tree/master/001-rgb2hex
23
42
  licenses:
24
43
  - MIT
25
44
  metadata: {}
26
- post_install_message:
45
+ post_install_message: Thanks for installing!
27
46
  rdoc_options: []
28
47
  require_paths:
29
48
  - lib
@@ -31,7 +50,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
31
50
  requirements:
32
51
  - - '>='
33
52
  - !ruby/object:Gem::Version
34
- version: '0'
53
+ version: 1.9.2
35
54
  required_rubygems_version: !ruby/object:Gem::Requirement
36
55
  requirements:
37
56
  - - '>='
@@ -43,4 +62,5 @@ rubygems_version: 2.0.3
43
62
  signing_key:
44
63
  specification_version: 4
45
64
  summary: RGB -> HEX
46
- test_files: []
65
+ test_files:
66
+ - test/test_rgb2hex.rb