betabrite 0.0.2 → 1.0.0
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.
- data/.autotest +7 -0
- data/EXAMPLES +28 -73
- data/History.txt +16 -0
- data/Manifest.txt +35 -0
- data/{README → README.txt} +58 -52
- data/Rakefile +11 -0
- data/lib/betabrite.rb +6 -120
- data/lib/betabrite/autotest.rb +43 -0
- data/lib/betabrite/base.rb +86 -0
- data/lib/betabrite/files.rb +4 -0
- data/lib/betabrite/files/dots.rb +24 -0
- data/lib/betabrite/files/file_dsl.rb +18 -0
- data/lib/betabrite/files/string.rb +22 -0
- data/lib/betabrite/files/text.rb +122 -0
- data/lib/{memory → betabrite}/memory.rb +27 -5
- data/lib/betabrite/serial.rb +28 -0
- data/lib/{string.rb → betabrite/string.rb} +41 -15
- data/lib/betabrite/usb.rb +64 -0
- data/script/alloc.rb +21 -0
- data/script/clear_memory.rb +16 -0
- data/script/client.rb +39 -0
- data/script/dots_file.rb +35 -0
- data/script/server.rb +12 -0
- data/script/sign_test.rb +17 -0
- data/script/stock_alloc.rb +81 -0
- data/script/stock_client.rb +40 -0
- data/script/stockdata.rb +65 -0
- data/test/helper.rb +6 -0
- data/test/{tc_many_mem.rb → test_many_mem.rb} +6 -10
- data/test/{tc_memory.rb → test_memory.rb} +11 -24
- data/test/{tc_set_string.rb → test_set_string.rb} +5 -9
- data/test/test_string.rb +34 -0
- data/test/test_text_file.rb +19 -0
- data/test/test_usb_betabrite.rb +94 -0
- metadata +94 -60
- data/CHANGELOG +0 -10
- data/NOTES +0 -29
- data/lib/bb_version.rb +0 -3
- data/lib/files/dotsfile.rb +0 -24
- data/lib/files/stringfile.rb +0 -22
- data/lib/files/textfile.rb +0 -114
- data/test/bb_override.rb +0 -5
- data/test/tc_string.rb +0 -20
- data/test/tc_text_file.rb +0 -18
- data/test/ts_bb.rb +0 -7
@@ -3,11 +3,11 @@ $:.unshift File.join(File.dirname(__FILE__), "..", "test")
|
|
3
3
|
|
4
4
|
require 'test/unit'
|
5
5
|
require 'betabrite'
|
6
|
-
require 'bb_override'
|
7
6
|
|
8
7
|
class MemoryAllocTest < Test::Unit::TestCase
|
9
8
|
def setup
|
10
|
-
@sign = BetaBrite.new
|
9
|
+
@sign = BetaBrite::Base.new
|
10
|
+
@sign.sleep_time = 0
|
11
11
|
end
|
12
12
|
|
13
13
|
def test_text_file
|
@@ -15,11 +15,8 @@ class MemoryAllocTest < Test::Unit::TestCase
|
|
15
15
|
string = alloc_string.collect { |x| x.chr }.join
|
16
16
|
mem = BetaBrite::Memory::Text.new('A', 256)
|
17
17
|
|
18
|
-
@sign.
|
19
|
-
test_string =
|
20
|
-
@sign.allocate { |text|
|
21
|
-
test_string << text
|
22
|
-
}
|
18
|
+
@sign.memory << mem
|
19
|
+
test_string = @sign.memory_message
|
23
20
|
|
24
21
|
assert_equal(string, test_string)
|
25
22
|
end
|
@@ -29,11 +26,8 @@ class MemoryAllocTest < Test::Unit::TestCase
|
|
29
26
|
string = alloc_string.collect { |x| x.chr }.join
|
30
27
|
mem = BetaBrite::Memory::String.new('0', 32)
|
31
28
|
|
32
|
-
@sign.
|
33
|
-
test_string =
|
34
|
-
@sign.allocate { |text|
|
35
|
-
test_string << text
|
36
|
-
}
|
29
|
+
@sign.memory << mem
|
30
|
+
test_string = @sign.memory_message
|
37
31
|
|
38
32
|
assert_equal(string, test_string)
|
39
33
|
end
|
@@ -43,11 +37,8 @@ class MemoryAllocTest < Test::Unit::TestCase
|
|
43
37
|
string = alloc_string.collect { |x| x.chr }.join
|
44
38
|
mem = BetaBrite::Memory::Dots.new('1', 7, 7)
|
45
39
|
|
46
|
-
@sign.
|
47
|
-
test_string =
|
48
|
-
@sign.allocate { |text|
|
49
|
-
test_string << text
|
50
|
-
}
|
40
|
+
@sign.memory << mem
|
41
|
+
test_string = @sign.memory_message
|
51
42
|
|
52
43
|
assert_equal(string, test_string)
|
53
44
|
end
|
@@ -58,14 +49,10 @@ class MemoryAllocTest < Test::Unit::TestCase
|
|
58
49
|
mem = BetaBrite::Memory::String.new('0', 32)
|
59
50
|
text = BetaBrite::Memory::Text.new('A', 256)
|
60
51
|
|
61
|
-
@sign.
|
62
|
-
@sign.
|
63
|
-
|
64
|
-
test_string = ''
|
65
|
-
@sign.allocate { |text|
|
66
|
-
test_string << text
|
67
|
-
}
|
52
|
+
@sign.memory << mem
|
53
|
+
@sign.memory << text
|
68
54
|
|
55
|
+
test_string = @sign.memory_message
|
69
56
|
assert_equal(string, test_string)
|
70
57
|
end
|
71
58
|
end
|
@@ -3,11 +3,11 @@ $:.unshift File.join(File.dirname(__FILE__), "..", "test")
|
|
3
3
|
|
4
4
|
require 'test/unit'
|
5
5
|
require 'betabrite'
|
6
|
-
require 'bb_override'
|
7
6
|
|
8
|
-
class
|
7
|
+
class SetStringTest < Test::Unit::TestCase
|
9
8
|
def setup
|
10
|
-
@sign = BetaBrite.new
|
9
|
+
@sign = BetaBrite::Base.new
|
10
|
+
@sign.sleep_time = 0
|
11
11
|
end
|
12
12
|
|
13
13
|
def test_many_mem
|
@@ -28,7 +28,7 @@ class MemoryAllocTest < Test::Unit::TestCase
|
|
28
28
|
'3.37 ',
|
29
29
|
'16.47 '
|
30
30
|
].each_with_index do |price,idx|
|
31
|
-
@sign.
|
31
|
+
@sign.string_files << BetaBrite::Files::String.new(idx, price)
|
32
32
|
end
|
33
33
|
|
34
34
|
assert_equal('11045.28 ', @sign.string_files[0].message)
|
@@ -48,11 +48,7 @@ class MemoryAllocTest < Test::Unit::TestCase
|
|
48
48
|
assert_equal(0, @sign.text_files.length)
|
49
49
|
assert_equal(0, @sign.dots_files.length)
|
50
50
|
|
51
|
-
printed =
|
52
|
-
count = 0
|
53
|
-
@sign.write { |text|
|
54
|
-
printed << text
|
55
|
-
}
|
51
|
+
printed = @sign.message
|
56
52
|
assert_equal(final_s, printed)
|
57
53
|
end
|
58
54
|
end
|
data/test/test_string.rb
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
$:.unshift File.join(File.dirname(__FILE__), "..", "lib")
|
2
|
+
$:.unshift File.join(File.dirname(__FILE__), "..", "test")
|
3
|
+
|
4
|
+
require 'test/unit'
|
5
|
+
require 'betabrite'
|
6
|
+
|
7
|
+
class StringTest < Test::Unit::TestCase
|
8
|
+
def test_const_dsl
|
9
|
+
s = BetaBrite::String.new("hello") { |a|
|
10
|
+
a.green
|
11
|
+
a.five_high
|
12
|
+
}
|
13
|
+
|
14
|
+
assert_equal(BetaBrite::String::Color::GREEN, s.color)
|
15
|
+
assert_equal(BetaBrite::String::CharSet::FIVE_HIGH, s.charset)
|
16
|
+
assert_equal("hello", s.string)
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_parse
|
20
|
+
string1 = BetaBrite::String.new('foo').green
|
21
|
+
string2 = BetaBrite::String.new('bar').rgb('FF00FF')
|
22
|
+
string = "#{string1.to_s}#{string2.to_s}"
|
23
|
+
|
24
|
+
parsed = BetaBrite::String.parse(string)
|
25
|
+
assert_equal(2, parsed.length)
|
26
|
+
assert parsed.all? { |x| x.is_a?(BetaBrite::String) }
|
27
|
+
assert_equal BetaBrite::String::Color::GREEN, parsed[0].color
|
28
|
+
assert parsed[0].green?
|
29
|
+
assert_equal 'FF00FF', parsed[1].color
|
30
|
+
assert_equal 'foo', parsed[0].string
|
31
|
+
assert_equal 'bar', parsed[1].string
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
@@ -0,0 +1,19 @@
|
|
1
|
+
$:.unshift File.join(File.dirname(__FILE__), "..", "lib")
|
2
|
+
$:.unshift File.join(File.dirname(__FILE__), "..", "test")
|
3
|
+
|
4
|
+
require 'test/unit'
|
5
|
+
require 'betabrite'
|
6
|
+
|
7
|
+
class TextFileTest < Test::Unit::TestCase
|
8
|
+
include BetaBrite::Files
|
9
|
+
|
10
|
+
def test_const_dsl
|
11
|
+
tf = Text.new {
|
12
|
+
roll_down()
|
13
|
+
middle()
|
14
|
+
}
|
15
|
+
|
16
|
+
assert_equal(Text::Position::MIDDLE, tf.position)
|
17
|
+
assert_equal(Text::Mode::ROLL_DOWN, tf.mode)
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,94 @@
|
|
1
|
+
require File.expand_path(File.join(File.dirname(__FILE__), "helper"))
|
2
|
+
|
3
|
+
class USBBetaBriteTest < Test::Unit::TestCase
|
4
|
+
def test_stringfile
|
5
|
+
bb = BetaBrite::USB.new do |sign|
|
6
|
+
sign.stringfile('0') do
|
7
|
+
print "hello ALIVE!!!"
|
8
|
+
end
|
9
|
+
end
|
10
|
+
assert_equal 1, bb.string_files.length
|
11
|
+
assert_equal 'hello ALIVE!!!', bb.string_files.first.message
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_write_message
|
15
|
+
bb = BetaBrite::USB.new do |sign|
|
16
|
+
sign.textfile do
|
17
|
+
print "hello ALIVE!!!"
|
18
|
+
end
|
19
|
+
end
|
20
|
+
assert_equal "hello ALIVE!!!", bb.text_files.first.message
|
21
|
+
assert bb.message
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_allot_dots
|
25
|
+
alloc_string = [ 0, 0, 0, 0, 0, 1, 90, 48, 48, 2, 69, 36, 49, 68, 85, 48, 55, 48, 55, 52, 48, 48, 48, 4 ]
|
26
|
+
bb = BetaBrite::USB.new do |sign|
|
27
|
+
sign.allocate do |memory|
|
28
|
+
memory.dots('1', 7, 7)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
assert_equal(1, bb.memory.length)
|
32
|
+
assert_equal(alloc_string.pack('C*'), bb.memory_message)
|
33
|
+
end
|
34
|
+
|
35
|
+
def test_allocate_string
|
36
|
+
message = [ 0, 0, 0, 0, 0, 1, 90, 48, 48, 2, 69, 36, 65, 65, 85, 48, 49, 48, 48, 70, 70, 48, 48, 4 ]
|
37
|
+
bb = BetaBrite::USB.new do |sign|
|
38
|
+
sign.allocate do |memory|
|
39
|
+
memory.text('A', 256)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
assert_equal(1, bb.memory.length)
|
44
|
+
assert bb.memory_message
|
45
|
+
msg_u = bb.memory_message.unpack('C*')
|
46
|
+
assert_equal(message.pack('C*'), bb.memory_message)
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_multi_alloc
|
50
|
+
final =
|
51
|
+
[
|
52
|
+
0x00,0x00,0x00,0x00,0x00,0x01,0x5a,0x30,0x30,0x02,0x45,0x24,0x41,0x41,0x55,0x31,
|
53
|
+
0x30,0x30,0x30,0x46,0x46,0x30,0x30,0x30,0x42,0x4c,0x30,0x30,0x34,0x30,0x30,0x30,
|
54
|
+
0x30,0x30,0x31,0x42,0x4c,0x30,0x30,0x34,0x30,0x30,0x30,0x30,0x30,0x32,0x42,0x4c,
|
55
|
+
0x30,0x30,0x34,0x30,0x30,0x30,0x30,0x30,0x33,0x42,0x4c,0x30,0x30,0x34,0x30,0x30,
|
56
|
+
0x30,0x30,0x30,0x34,0x42,0x4c,0x30,0x30,0x34,0x30,0x30,0x30,0x30,0x30,0x35,0x42,
|
57
|
+
0x4c,0x30,0x30,0x34,0x30,0x30,0x30,0x30,0x30,0x36,0x42,0x4c,0x30,0x30,0x34,0x30,
|
58
|
+
0x30,0x30,0x30,0x30,0x37,0x42,0x4c,0x30,0x30,0x34,0x30,0x30,0x30,0x30,0x30,0x38,
|
59
|
+
0x42,0x4c,0x30,0x30,0x34,0x30,0x30,0x30,0x30,0x30,0x39,0x42,0x4c,0x30,0x30,0x34,
|
60
|
+
0x30,0x30,0x30,0x30,0x30,0x04
|
61
|
+
]
|
62
|
+
bb = BetaBrite::USB.new do |sign|
|
63
|
+
sign.allocate do |memory|
|
64
|
+
memory.text('A', 4096)
|
65
|
+
0.upto(9) do |x|
|
66
|
+
memory.string(x.to_s, 64)
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
assert_equal(11, bb.memory.length)
|
72
|
+
assert bb.memory_message
|
73
|
+
msg_u = bb.memory_message.unpack('C*')
|
74
|
+
assert_equal(final.pack('C*'), bb.memory_message)
|
75
|
+
end
|
76
|
+
|
77
|
+
def test_write_red_green_message
|
78
|
+
bb = BetaBrite::USB.new do |sign|
|
79
|
+
sign.textfile do
|
80
|
+
print string("hello ").red
|
81
|
+
print string("wo").green
|
82
|
+
print string("rld").rgb('3399FF')
|
83
|
+
end
|
84
|
+
end
|
85
|
+
assert_equal(1, bb.text_files.length)
|
86
|
+
assert bb.message
|
87
|
+
end
|
88
|
+
|
89
|
+
#def test_clear_memory
|
90
|
+
# BetaBrite::USB.new do |sign|
|
91
|
+
# sign.clear_memory!
|
92
|
+
# end
|
93
|
+
#end
|
94
|
+
end
|
metadata
CHANGED
@@ -1,69 +1,103 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.9.0
|
3
|
-
specification_version: 1
|
4
2
|
name: betabrite
|
5
3
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.0
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
- lib
|
11
|
-
email: aaronp@rubyforge.org
|
12
|
-
homepage: betabrite.rubyforge.org
|
13
|
-
rubyforge_project: betabrite
|
14
|
-
description:
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Aaron Patterson
|
15
8
|
autorequire:
|
16
|
-
default_executable:
|
17
9
|
bindir: bin
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2008-02-11 00:00:00 -08:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: hoe
|
17
|
+
version_requirement:
|
18
|
+
version_requirements: !ruby/object:Gem::Requirement
|
19
|
+
requirements:
|
20
|
+
- - ">="
|
23
21
|
- !ruby/object:Gem::Version
|
24
|
-
version:
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
cert_chain:
|
29
|
-
post_install_message:
|
30
|
-
authors:
|
31
|
-
- Aaron Patterson
|
32
|
-
files:
|
33
|
-
- test/bb_override.rb
|
34
|
-
- test/tc_many_mem.rb
|
35
|
-
- test/tc_memory.rb
|
36
|
-
- test/tc_set_string.rb
|
37
|
-
- test/tc_string.rb
|
38
|
-
- test/tc_text_file.rb
|
39
|
-
- test/ts_bb.rb
|
40
|
-
- lib/bb_version.rb
|
41
|
-
- lib/betabrite.rb
|
42
|
-
- lib/files
|
43
|
-
- lib/memory
|
44
|
-
- lib/string.rb
|
45
|
-
- lib/files/dotsfile.rb
|
46
|
-
- lib/files/stringfile.rb
|
47
|
-
- lib/files/textfile.rb
|
48
|
-
- lib/memory/memory.rb
|
49
|
-
- README
|
50
|
-
- EXAMPLES
|
51
|
-
- CHANGELOG
|
52
|
-
- LICENSE
|
53
|
-
- NOTES
|
54
|
-
test_files: []
|
55
|
-
rdoc_options:
|
56
|
-
- "--main"
|
57
|
-
- README
|
58
|
-
- "--title"
|
59
|
-
- "'BetaBrite RDoc'"
|
60
|
-
extra_rdoc_files:
|
61
|
-
- README
|
62
|
-
- EXAMPLES
|
63
|
-
- CHANGELOG
|
64
|
-
- LICENSE
|
65
|
-
- NOTES
|
22
|
+
version: 1.5.0
|
23
|
+
version:
|
24
|
+
description: Provides a Ruby interface to BetaBrite LED signs.
|
25
|
+
email: aaronp@rubyforge.org
|
66
26
|
executables: []
|
27
|
+
|
67
28
|
extensions: []
|
29
|
+
|
30
|
+
extra_rdoc_files:
|
31
|
+
- History.txt
|
32
|
+
- Manifest.txt
|
33
|
+
- README.txt
|
34
|
+
files:
|
35
|
+
- .autotest
|
36
|
+
- EXAMPLES
|
37
|
+
- History.txt
|
38
|
+
- LICENSE
|
39
|
+
- Manifest.txt
|
40
|
+
- README.txt
|
41
|
+
- Rakefile
|
42
|
+
- lib/betabrite.rb
|
43
|
+
- lib/betabrite/autotest.rb
|
44
|
+
- lib/betabrite/base.rb
|
45
|
+
- lib/betabrite/files.rb
|
46
|
+
- lib/betabrite/files/dots.rb
|
47
|
+
- lib/betabrite/files/file_dsl.rb
|
48
|
+
- lib/betabrite/files/string.rb
|
49
|
+
- lib/betabrite/files/text.rb
|
50
|
+
- lib/betabrite/memory.rb
|
51
|
+
- lib/betabrite/serial.rb
|
52
|
+
- lib/betabrite/string.rb
|
53
|
+
- lib/betabrite/usb.rb
|
54
|
+
- script/alloc.rb
|
55
|
+
- script/clear_memory.rb
|
56
|
+
- script/client.rb
|
57
|
+
- script/dots_file.rb
|
58
|
+
- script/server.rb
|
59
|
+
- script/sign_test.rb
|
60
|
+
- script/stock_alloc.rb
|
61
|
+
- script/stock_client.rb
|
62
|
+
- script/stockdata.rb
|
63
|
+
- test/helper.rb
|
64
|
+
- test/test_many_mem.rb
|
65
|
+
- test/test_memory.rb
|
66
|
+
- test/test_set_string.rb
|
67
|
+
- test/test_string.rb
|
68
|
+
- test/test_text_file.rb
|
69
|
+
- test/test_usb_betabrite.rb
|
70
|
+
has_rdoc: true
|
71
|
+
homepage: http://rubyforge.org/projects/betabrite/
|
72
|
+
post_install_message:
|
73
|
+
rdoc_options:
|
74
|
+
- --main
|
75
|
+
- README.txt
|
76
|
+
require_paths:
|
77
|
+
- lib
|
78
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: "0"
|
83
|
+
version:
|
84
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
85
|
+
requirements:
|
86
|
+
- - ">="
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: "0"
|
89
|
+
version:
|
68
90
|
requirements: []
|
69
|
-
|
91
|
+
|
92
|
+
rubyforge_project: betabrite
|
93
|
+
rubygems_version: 1.0.1
|
94
|
+
signing_key:
|
95
|
+
specification_version: 2
|
96
|
+
summary: Provides a Ruby interface to BetaBrite LED signs
|
97
|
+
test_files:
|
98
|
+
- test/test_many_mem.rb
|
99
|
+
- test/test_memory.rb
|
100
|
+
- test/test_set_string.rb
|
101
|
+
- test/test_string.rb
|
102
|
+
- test/test_text_file.rb
|
103
|
+
- test/test_usb_betabrite.rb
|
data/CHANGELOG
DELETED
data/NOTES
DELETED
@@ -1,29 +0,0 @@
|
|
1
|
-
= BetaBrite Release Notes
|
2
|
-
|
3
|
-
== 0.0.2
|
4
|
-
|
5
|
-
This release comes with new syntax for setting attributes of
|
6
|
-
BetaBrite::String and BetaBrite::TextFile. Setting attributes like color
|
7
|
-
and character set is now less cumbersome. For example, here is the old
|
8
|
-
way to set the color using constants:
|
9
|
-
s = BetaBrite::String.new("hello")
|
10
|
-
s.color = BetaBrite::String::Color::GREEN
|
11
|
-
Instead you can do this:
|
12
|
-
s = BetaBrite::String.new("hello") { |a|
|
13
|
-
a.set_color "green"
|
14
|
-
}
|
15
|
-
You can treat TextFile similarly:
|
16
|
-
s = BetaBrite::TextFile.new { |a|
|
17
|
-
a.set_mode "compressed_rotate"
|
18
|
-
a.set_position "middle"
|
19
|
-
}
|
20
|
-
These special set functions figure out what constant you want and set it
|
21
|
-
to the attribute you want. "set_mode" looks up the name passed in in the
|
22
|
-
constants stored in the Mode class, and sets it to the mode attribute.
|
23
|
-
|
24
|
-
|
25
|
-
== 0.0.1
|
26
|
-
|
27
|
-
This is the first release of the BetaBrite sign library. Please see the RDoc,
|
28
|
-
the 'script' directory, and the EXAMPLES file for how to use this library.
|
29
|
-
|