unimidi 0.4.4 → 0.4.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a75ecec80f113f9831ddabe50fbb3a00e183faae
4
- data.tar.gz: 174c3ec107b0d696f8780708c83a9abf8a1e33ca
3
+ metadata.gz: fa827114029d69f1567ba44b38c9ba4247849722
4
+ data.tar.gz: a6f6e46bcf1f1a6b8bd6fc3d01c668b73c65c5e1
5
5
  SHA512:
6
- metadata.gz: f1b430c23cb93b0373834bab0c66a25286dc5ca6bcee99e963b3d40892781f7b076b00a13ada2828bc871d035706d63d2fa774e101a4c965df1b28ea05bcc5e3
7
- data.tar.gz: cae4027fefcbb3b0a06cebbe1eefba944b7ca55419fc025cf752f1604915ce19845a70290aeae3cd941491c30b8dc5b53b4ffb7681235221356be95d0d7fa195
6
+ metadata.gz: bb35485c5cd885ef8f58bad93adb17a94079885ac3b4b0bed8801c77059025d6e7078589f05a0bea85f8284c59f96bbfeef7c01d17e4f1e6e4a50cfa4fddc40b
7
+ data.tar.gz: b084ffb6e4829d4fb08b33169c03247dd9f4e8ec2e8ed22341194bc2f91fd24f56507e0b02a1fa69006d085383db9eae4e6aebe8d71ad10a826e87dfcfe0d5dd
@@ -17,7 +17,7 @@ require "unimidi/output"
17
17
 
18
18
  module UniMIDI
19
19
 
20
- VERSION = "0.4.4"
20
+ VERSION = "0.4.5"
21
21
 
22
22
  Platform.bootstrap
23
23
 
@@ -105,21 +105,16 @@ module UniMIDI
105
105
  populate_from_device
106
106
  end
107
107
 
108
- # Is this device ready for io?
109
- # @return [Boolean]
110
- def enabled?
111
- @enabled = true if @device.enabled # keep the adapter in sync
112
- @enabled
113
- end
114
-
115
108
  # Enable the device for use
116
109
  # Params are passed to the underlying device object
117
110
  # Can be passed a block to which the device will be passed in as the yieldparam
118
111
  # @param [*Object] args
119
112
  # @return [Input, Output] self
120
113
  def open(*args, &block)
121
- @device.open(*args) unless enabled?
122
- @enabled = true
114
+ unless @enabled
115
+ @device.open(*args)
116
+ @enabled = true
117
+ end
123
118
  if block_given?
124
119
  begin
125
120
  yield(self)
@@ -145,16 +140,23 @@ module UniMIDI
145
140
  # @param [*Object] args
146
141
  # @return [Boolean]
147
142
  def close(*args)
148
- @device.close(*args)
149
- true
143
+ if @enabled
144
+ @device.close(*args)
145
+ @enabled = false
146
+ true
147
+ else
148
+ false
149
+ end
150
150
  end
151
151
 
152
152
  # Add attributes for the device instance
153
153
  # :direction, :id, :name
154
154
  def self.included(base)
155
155
  base.send(:attr_reader, :direction)
156
+ base.send(:attr_reader, :enabled)
156
157
  base.send(:attr_reader, :id)
157
158
  base.send(:attr_reader, :name)
159
+ base.send(:alias_method, :enabled?, :enabled)
158
160
  base.send(:alias_method, :type, :direction)
159
161
  end
160
162
 
@@ -26,7 +26,7 @@ module UniMIDI
26
26
  def puts(*messages)
27
27
  message = messages.first
28
28
  case message
29
- when Array then message.each { |message| puts(*message) }
29
+ when Array then messages.each { |array| puts(*array.flatten) }
30
30
  when Fixnum then puts_bytes(*messages)
31
31
  when String then puts_s(*messages)
32
32
  else
@@ -1,22 +1,18 @@
1
1
  require "helper"
2
2
 
3
- class UniMIDI::AdapterTest < UniMIDI::TestCase
3
+ class UniMIDI::AdapterTest < Test::Unit::TestCase
4
4
 
5
5
  context "Adapter" do
6
6
 
7
- setup do
8
- TestDeviceHelper.setup
9
- end
10
-
11
7
  context "Device#type" do
12
8
 
13
9
  should "be an input" do
14
- input = TestDeviceHelper.devices[:input]
10
+ input = TestHelper.devices[:input]
15
11
  assert_equal(:input, input.type)
16
12
  end
17
13
 
18
14
  should "be an output" do
19
- output = TestDeviceHelper.devices[:output]
15
+ output = TestHelper.devices[:output]
20
16
  assert_equal(:output, output.type)
21
17
  end
22
18
 
@@ -25,11 +21,11 @@ class UniMIDI::AdapterTest < UniMIDI::TestCase
25
21
  context "Device.count" do
26
22
 
27
23
  setup do
28
- @inputs = Input.all
24
+ @inputs = UniMIDI::Input.all
29
25
  end
30
26
 
31
27
  should "count all of the inputs" do
32
- assert_equal @inputs.count, Input.count
28
+ assert_equal @inputs.count, UniMIDI::Input.count
33
29
  end
34
30
 
35
31
  end
@@ -37,12 +33,12 @@ class UniMIDI::AdapterTest < UniMIDI::TestCase
37
33
  context "Device.find_by_name" do
38
34
 
39
35
  setup do
40
- index = rand(0..(Output.count-1))
41
- @output = Output.all[index]
36
+ index = rand(0..(UniMIDI::Output.count-1))
37
+ @output = UniMIDI::Output.all[index]
42
38
  end
43
39
 
44
40
  should "select the correct input" do
45
- result = Output.find_by_name(@output.name)
41
+ result = UniMIDI::Output.find_by_name(@output.name)
46
42
  assert_equal @output, result
47
43
  end
48
44
 
@@ -51,17 +47,17 @@ class UniMIDI::AdapterTest < UniMIDI::TestCase
51
47
  context "Device.first" do
52
48
 
53
49
  setup do
54
- @output = Output.all.first
50
+ @output = UniMIDI::Output.all.first
55
51
  end
56
52
 
57
53
  should "open the output" do
58
54
  @output.expects(:open)
59
- output = Output.first
55
+ output = UniMIDI::Output.first
60
56
  @output.unstub(:open)
61
57
  end
62
58
 
63
59
  should "return the correct output" do
64
- output = Output.first
60
+ output = UniMIDI::Output.first
65
61
  assert_equal @output, output
66
62
  end
67
63
  end
@@ -1,29 +1,25 @@
1
1
  require "helper"
2
2
 
3
- class UniMIDI::ClassMethodsTest < UniMIDI::TestCase
3
+ class UniMIDI::ClassMethodsTest < Test::Unit::TestCase
4
4
 
5
5
  context "ClassMethods" do
6
6
 
7
- setup do
8
- TestDeviceHelper.setup
9
- end
10
-
11
7
  context "#first" do
12
8
 
13
9
  context "no block given" do
14
10
  should "return first input" do
15
- i = Input.first
16
- assert_equal(Input.all.first, i)
11
+ i = UniMIDI::Input.first
12
+ assert_equal(UniMIDI::Input.all.first, i)
17
13
  end
18
14
  end
19
15
 
20
16
  context "block given" do
21
17
  should "pass and return first input" do
22
18
  sleep(1)
23
- i = Input.first do |i|
19
+ i = UniMIDI::Input.first do |i|
24
20
  assert_equal(true, i.enabled?)
25
21
  end
26
- assert_equal(Input.all.first, i)
22
+ assert_equal(UniMIDI::Input.all.first, i)
27
23
  end
28
24
 
29
25
  end
@@ -33,18 +29,18 @@ class UniMIDI::ClassMethodsTest < UniMIDI::TestCase
33
29
 
34
30
  context "no block given" do
35
31
  should "return last input" do
36
- i = Input.last
37
- assert_equal(Input.all.last, i)
32
+ i = UniMIDI::Input.last
33
+ assert_equal(UniMIDI::Input.all.last, i)
38
34
  end
39
35
  end
40
36
 
41
37
  context "block given" do
42
38
  should "pass and return last input" do
43
39
  sleep(1)
44
- i = Input.last do |i|
40
+ i = UniMIDI::Input.last do |i|
45
41
  assert_equal(true, i.enabled?)
46
42
  end
47
- assert_equal(Input.all.last, i)
43
+ assert_equal(UniMIDI::Input.all.last, i)
48
44
  end
49
45
 
50
46
  end
@@ -53,9 +49,9 @@ class UniMIDI::ClassMethodsTest < UniMIDI::TestCase
53
49
  context "#[]" do
54
50
 
55
51
  should "return correct input" do
56
- i = Input[0]
57
- assert_equal(Input.first, i)
58
- assert_equal(Input.all.first, i)
52
+ i = UniMIDI::Input[0]
53
+ assert_equal(UniMIDI::Input.first, i)
54
+ assert_equal(UniMIDI::Input.all.first, i)
59
55
  end
60
56
 
61
57
  end
@@ -65,11 +61,11 @@ class UniMIDI::ClassMethodsTest < UniMIDI::TestCase
65
61
  context "block given" do
66
62
  should "return and enable an input" do
67
63
  sleep(1)
68
- i = Input.use(0) do |i|
64
+ i = UniMIDI::Input.use(0) do |i|
69
65
  assert_equal(true, i.enabled?)
70
66
  end
71
- assert_equal(Input.first, i)
72
- assert_equal(Input.all.first, i)
67
+ assert_equal(UniMIDI::Input.first, i)
68
+ assert_equal(UniMIDI::Input.all.first, i)
73
69
  end
74
70
 
75
71
  end
@@ -78,10 +74,10 @@ class UniMIDI::ClassMethodsTest < UniMIDI::TestCase
78
74
 
79
75
  should "return an enabled input" do
80
76
  sleep(1)
81
- input = Input.use(:first)
77
+ input = UniMIDI::Input.use(:first)
82
78
  assert_equal(true, input.enabled?)
83
- assert_equal(Input.first, input)
84
- assert_equal(Input.all.first, input)
79
+ assert_equal(UniMIDI::Input.first, input)
80
+ assert_equal(UniMIDI::Input.all.first, input)
85
81
  end
86
82
 
87
83
  end
@@ -90,7 +86,7 @@ class UniMIDI::ClassMethodsTest < UniMIDI::TestCase
90
86
 
91
87
  context "#all" do
92
88
  should "return all devices" do
93
- assert_equal(Loader.devices(:direction => :input), Input.all)
89
+ assert_equal(UniMIDI::Loader.devices(:direction => :input), UniMIDI::Input.all)
94
90
  end
95
91
  end
96
92
 
@@ -1,84 +1,75 @@
1
1
  require "helper"
2
2
 
3
- class UniMIDI::FunctionalTest < UniMIDI::TestCase
3
+ class UniMIDI::FunctionalTest < Test::Unit::TestCase
4
4
 
5
5
  # ** these tests assume that TestOutput is connected to TestInput
6
6
  context "UniMIDI" do
7
7
 
8
8
  setup do
9
- sleep(1)
10
- TestDeviceHelper.setup
9
+ @input = TestHelper.devices[:input].open
10
+ @output = TestHelper.devices[:output].open
11
+ end
12
+
13
+ teardown do
14
+ @input.close
15
+ @output.close
11
16
  end
12
17
 
13
18
  context "full IO" do
14
19
 
15
- context "using Arrays" do
20
+ context "using numeric bytes" do
16
21
 
17
22
  setup do
18
- @messages = VariousMIDIMessages
19
- @messages_arr = @messages.inject { |a,b| a+b }.flatten
23
+ @messages = TestHelper.numeric_messages
24
+ @messages_arr = @messages.inject(&:+).flatten
20
25
  @received_arr = []
21
26
  @pointer = 0
22
27
  end
23
28
 
24
29
  should "do IO" do
25
- TestDeviceHelper.devices[:output].open do |output|
26
- TestDeviceHelper.devices[:input].open do |input|
27
-
28
- input.buffer.clear
29
30
 
30
- @messages.each do |msg|
31
+ @messages.each do |message|
32
+ p "sending: #{message}"
31
33
 
32
- $>.puts "sending: " + msg.inspect
34
+ @output.puts(message)
35
+ sleep(1)
36
+ received = @input.gets.map { |m| m[:data] }.flatten
33
37
 
34
- output.puts(msg)
35
- sleep(1)
36
- received = input.gets.map { |m| m[:data] }.flatten
38
+ p "received: #{received}"
37
39
 
38
- $>.puts "received: " + received.inspect
39
-
40
- assert_equal(@messages_arr.slice(@pointer, received.length), received)
41
- @pointer += received.length
42
- @received_arr += received
43
- end
44
- assert_equal(@messages_arr.length, @received_arr.length)
45
- end
40
+ assert_equal(@messages_arr.slice(@pointer, received.length), received)
41
+ @pointer += received.length
42
+ @received_arr += received
46
43
  end
47
-
44
+ assert_equal(@messages_arr.length, @received_arr.length)
48
45
  end
49
46
  end
50
47
 
51
48
  context "using byte Strings" do
52
49
 
53
50
  setup do
54
- @messages = VariousMIDIByteStrMessages
51
+ @messages = TestHelper.string_messages
55
52
  @messages_str = @messages.join
56
53
  @received_str = ""
57
54
  @pointer = 0
58
55
  end
59
56
 
60
57
  should "do IO" do
61
- TestDeviceHelper.devices[:output].open do |output|
62
- TestDeviceHelper.devices[:input].open do |input|
63
58
 
64
- @messages.each do |msg|
59
+ @messages.each do |message|
65
60
 
66
- $>.puts "sending: " + msg.inspect
61
+ p "sending: #{message}"
67
62
 
68
- output.puts(msg)
69
- sleep(1)
70
- received = input.gets_bytestr.map { |m| m[:data] }.flatten.join
71
- $>.puts "received: " + received.inspect
63
+ @output.puts(message)
64
+ sleep(1)
65
+ received = @input.gets_bytestr.map { |m| m[:data] }.flatten.join
66
+ p "received: #{received}"
72
67
 
73
- assert_equal(@messages_str.slice(@pointer, received.length), received)
74
- @pointer += received.length
75
- @received_str += received
76
- end
77
- assert_equal(@messages_str, @received_str)
78
-
79
- end
68
+ assert_equal(@messages_str.slice(@pointer, received.length), received)
69
+ @pointer += received.length
70
+ @received_str += received
80
71
  end
81
-
72
+ assert_equal(@messages_str, @received_str)
82
73
 
83
74
  end
84
75
 
@@ -87,36 +78,30 @@ class UniMIDI::FunctionalTest < UniMIDI::TestCase
87
78
  context "using MIDIMessages" do
88
79
 
89
80
  setup do
90
- @messages = VariousMIDIObjects
91
- @messages_arr = @messages.map { |m| m.to_bytes }.flatten
81
+ @messages = TestHelper.message_objects
82
+ @messages_arr = @messages.map(&:to_bytes).flatten
92
83
  @received_arr = []
93
84
  @pointer = 0
94
85
  end
95
86
 
96
87
  should "do IO" do
97
- TestDeviceHelper.devices[:output].open do |output|
98
- TestDeviceHelper.devices[:input].open do |input|
99
-
100
- #input.buffer.clear
101
88
 
102
- @messages.each do |msg|
89
+ @messages.each do |message|
103
90
 
104
- $>.puts "sending: " + msg.inspect
91
+ p "sending: #{message}"
105
92
 
106
- output.puts(msg)
107
- sleep(1)
108
- received = input.gets.map { |m| m[:data] }.flatten
93
+ @output.puts(message)
94
+ sleep(1)
95
+ received = @input.gets.map { |m| m[:data] }.flatten
109
96
 
110
- $>.puts "received: " + received.inspect
97
+ p "received: #{received}"
111
98
 
112
- assert_equal(@messages_arr.slice(@pointer, received.length), received)
113
- @pointer += received.length
114
- @received_arr += received
115
- end
116
- assert_equal(@messages_arr.length, @received_arr.length)
117
-
118
- end
99
+ assert_equal(@messages_arr.slice(@pointer, received.length), received)
100
+ @pointer += received.length
101
+ @received_arr += received
119
102
  end
103
+ assert_equal(@messages_arr.length, @received_arr.length)
104
+
120
105
  end
121
106
 
122
107
  end
@@ -6,81 +6,69 @@ require "mocha/test_unit"
6
6
  require "shoulda-context"
7
7
  require "unimidi"
8
8
 
9
- module UniMIDI
9
+ module TestHelper
10
10
 
11
- class TestDeviceHelper
11
+ extend self
12
12
 
13
- def self.setup
14
- if @test_devices.nil?
15
- @test_devices = {}
16
- { :input => UniMIDI::Input, :output => UniMIDI::Output }.each do |type, klass|
17
- @test_devices[type] = klass.gets
18
- end
13
+ def sysex_ok?
14
+ ENV["_system_name"] != "OSX" || !RUBY_PLATFORM.include?("java")
15
+ end
16
+
17
+ def devices
18
+ if @devices.nil?
19
+ @devices = {}
20
+ { :input => UniMIDI::Input, :output => UniMIDI::Output }.each do |type, klass|
21
+ @devices[type] = klass.gets
19
22
  end
20
23
  end
24
+ @devices
25
+ end
21
26
 
22
- def self.devices
23
- @test_devices
27
+ def bytestrs_to_ints(arr)
28
+ data = arr.map { |m| m[:data] }.join
29
+ output = []
30
+ until (bytestr = data.slice!(0,2)).eql?("")
31
+ output << bytestr.hex
24
32
  end
25
-
33
+ output
26
34
  end
27
35
 
28
- module TestHelper
29
-
30
- TestSysex = !RUBY_PLATFORM.include?("java")
31
-
32
- def bytestrs_to_ints(arr)
33
- data = arr.map { |m| m[:data] }.join
34
- output = []
35
- until (bytestr = data.slice!(0,2)).eql?("")
36
- output << bytestr.hex
37
- end
38
- output
36
+ class MIDIObj
37
+ def initialize(*bytes)
38
+ @bytes = bytes
39
39
  end
40
+ def to_bytes
41
+ @bytes
42
+ end
43
+ end
40
44
 
41
- class MIDIObj
42
- def initialize(*bytes)
43
- @bytes = bytes
44
- end
45
- def to_bytes
46
- @bytes
47
- end
48
- end
49
-
50
- # some MIDI messages
51
- VariousMIDIObjects = [
52
- TestSysex ? MIDIObj.new(0xF0, 0x41, 0x10, 0x42, 0x12, 0x40, 0x00, 0x7F, 0x00, 0x41, 0xF7) : nil, # SysEx
53
- MIDIObj.new(0x90, 100, 100), # note on
54
- MIDIObj.new(0x90, 43, 100), # note on
55
- MIDIObj.new(0x90, 76, 100), # note on
56
- MIDIObj.new(0x90, 60, 100), # note on
57
- MIDIObj.new(0x80, 100, 100) # note off
58
- ].compact
45
+ def message_objects
46
+ numeric_messages.map { |message| MIDIObj.new(*message) }
47
+ end
59
48
 
60
- # some MIDI messages
61
- VariousMIDIMessages = [
62
- TestSysex ? [0xF0, 0x41, 0x10, 0x42, 0x12, 0x40, 0x00, 0x7F, 0x00, 0x41, 0xF7] : nil, # SysEx
49
+ def numeric_messages
50
+ messages = [
63
51
  [0x90, 100, 100], # note on
64
52
  [0x90, 43, 100], # note on
65
53
  [0x90, 76, 100], # note on
66
54
  [0x90, 60, 100], # note on
67
55
  [0x80, 100, 100] # note off
68
- ].compact
56
+ ]
57
+ if sysex_ok?
58
+ messages << [0xF0, 0x41, 0x10, 0x42, 0x12, 0x40, 0x00, 0x7F, 0x00, 0x41, 0xF7]
59
+ end
60
+ messages
61
+ end
69
62
 
70
- # some MIDI messages
71
- VariousMIDIByteStrMessages = [
72
- TestSysex ? "F04110421240007F0041F7" : nil, # SysEx
63
+ def string_messages
64
+ messages = [
73
65
  "906440", # note on
74
66
  "804340" # note off
75
- ].compact
76
-
77
- end
78
-
79
- class TestCase < Test::Unit::TestCase
80
-
81
- include UniMIDI
82
- include TestHelper
83
-
67
+ ]
68
+ if sysex_ok?
69
+ messages << "F04110421240007F0041F7"
70
+ end
71
+ messages
84
72
  end
85
73
 
86
74
  end
@@ -1,44 +1,42 @@
1
1
  require 'helper'
2
2
 
3
- class UniMIDI::InputBufferTest < UniMIDI::TestCase
3
+ class UniMIDI::InputTest < Test::Unit::TestCase
4
4
 
5
5
  context "Input" do
6
6
 
7
- setup do
8
- TestDeviceHelper.setup
9
- end
10
-
11
7
  context "#buffer" do
12
8
 
13
9
  setup do
14
- sleep(1)
15
- @messages = VariousMIDIMessages
10
+ sleep(1)
11
+ @input = TestHelper.devices[:input].open
12
+ @output = TestHelper.devices[:output].open
13
+ @messages = TestHelper.numeric_messages
16
14
  @bytes = []
17
15
  end
18
16
 
19
- should "add received messages to the buffer" do
17
+ teardown do
18
+ @input.close
19
+ @output.close
20
+ end
20
21
 
21
- TestDeviceHelper.devices[:output].open do |output|
22
- TestDeviceHelper.devices[:input].open do |input|
22
+ should "add received messages to the buffer" do
23
23
 
24
- input.buffer.clear
24
+ @input.buffer.clear
25
25
 
26
- @messages.each do |msg|
26
+ @messages.each do |message|
27
27
 
28
- $>.puts "sending: " + msg.inspect
29
- output.puts(msg)
30
- @bytes += msg
31
- sleep(0.5)
32
- buffer = input.buffer.map { |m| m[:data] }.flatten
33
- $>.puts "received: " + buffer.to_s
34
- assert_equal(@bytes, buffer)
28
+ p "sending: #{message}"
29
+ @output.puts(message)
30
+ @bytes += message
31
+ sleep(1)
32
+ buffer = @input.buffer.map { |m| m[:data] }.flatten
33
+ p "received: #{buffer}"
34
+ assert_equal(@bytes, buffer)
35
35
 
36
- end
36
+ end
37
37
 
38
- assert_equal(@bytes.length, input.buffer.map { |m| m[:data] }.flatten.length)
38
+ assert_equal(@bytes.length, @input.buffer.map { |m| m[:data] }.flatten.length)
39
39
 
40
- end
41
- end
42
40
  end
43
41
 
44
42
  end
@@ -1,6 +1,6 @@
1
1
  require 'helper'
2
2
 
3
- class UniMIDI::PlatformTest < UniMIDI::TestCase
3
+ class UniMIDI::PlatformTest < Test::Unit::TestCase
4
4
 
5
5
  def platform_test(adapter, mod, device_class = nil, input_class = nil, output_class = nil)
6
6
  device_class ||= mod::Device
@@ -20,25 +20,25 @@ class UniMIDI::PlatformTest < UniMIDI::TestCase
20
20
 
21
21
  should "recognize java" do
22
22
  if RUBY_PLATFORM.include?("java")
23
- platform_test(Adapter::MIDIJRuby, ::MIDIJRuby)
23
+ platform_test(UniMIDI::Adapter::MIDIJRuby, ::MIDIJRuby)
24
24
  end
25
25
  end
26
26
 
27
27
  should "recognize linux" do
28
28
  if RUBY_PLATFORM.include?("linux")
29
- platform_test(Adapter::AlsaRawMIDI, ::AlsaRawMIDI)
29
+ platform_test(UniMIDI::Adapter::AlsaRawMIDI, ::AlsaRawMIDI)
30
30
  end
31
31
  end
32
32
 
33
33
  should "recognize osx" do
34
34
  if RUBY_PLATFORM.include?("darwin")
35
- platform_test(Adapter::CoreMIDI, ::CoreMIDI, ::CoreMIDI::Endpoint, ::CoreMIDI::Source, ::CoreMIDI::Destination)
35
+ platform_test(UniMIDI::Adapter::CoreMIDI, ::CoreMIDI, ::CoreMIDI::Endpoint, ::CoreMIDI::Source, ::CoreMIDI::Destination)
36
36
  end
37
37
  end
38
38
 
39
39
  should "recognize windows" do
40
40
  if RUBY_PLATFORM.include?("mingw")
41
- platform_test(Adapter::MIDIWinMM, ::MIDIWinMM)
41
+ platform_test(UniMIDI::Adapter::MIDIWinMM, ::MIDIWinMM)
42
42
  end
43
43
  end
44
44
 
@@ -1,13 +1,13 @@
1
1
  require 'helper'
2
2
 
3
- class UniMIDI::TypeConversionTest < UniMIDI::TestCase
3
+ class UniMIDI::TypeConversionTest < Test::Unit::TestCase
4
4
 
5
5
  context "TypeConversion" do
6
6
 
7
7
  context "#numeric_byte_array_to_hex_string" do
8
8
 
9
9
  should "convert byte array to hex string" do
10
- result = TypeConversion.numeric_byte_array_to_hex_string([0x90, 0x40, 0x40])
10
+ result = UniMIDI::TypeConversion.numeric_byte_array_to_hex_string([0x90, 0x40, 0x40])
11
11
  assert "904040", result
12
12
  end
13
13
 
metadata CHANGED
@@ -1,85 +1,79 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unimidi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ari Russo
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-28 00:00:00.000000000 Z
11
+ date: 2014-10-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: alsa-rawmidi
15
+ version_requirements: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
15
20
  requirement: !ruby/object:Gem::Requirement
16
21
  requirements:
17
- - - "~>"
22
+ - - ~>
18
23
  - !ruby/object:Gem::Version
19
24
  version: '0'
20
- type: :runtime
21
25
  prerelease: false
26
+ type: :runtime
27
+ - !ruby/object:Gem::Dependency
28
+ name: ffi-coremidi
22
29
  version_requirements: !ruby/object:Gem::Requirement
23
30
  requirements:
24
- - - "~>"
31
+ - - ~>
25
32
  - !ruby/object:Gem::Version
26
33
  version: '0'
27
- - !ruby/object:Gem::Dependency
28
- name: ffi-coremidi
29
34
  requirement: !ruby/object:Gem::Requirement
30
35
  requirements:
31
- - - "~>"
36
+ - - ~>
32
37
  - !ruby/object:Gem::Version
33
38
  version: '0'
34
- type: :runtime
35
39
  prerelease: false
40
+ type: :runtime
41
+ - !ruby/object:Gem::Dependency
42
+ name: midi-jruby
36
43
  version_requirements: !ruby/object:Gem::Requirement
37
44
  requirements:
38
- - - "~>"
45
+ - - ~>
39
46
  - !ruby/object:Gem::Version
40
47
  version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: midi-jruby
43
48
  requirement: !ruby/object:Gem::Requirement
44
49
  requirements:
45
- - - "~>"
50
+ - - ~>
46
51
  - !ruby/object:Gem::Version
47
52
  version: '0'
48
- type: :runtime
49
53
  prerelease: false
54
+ type: :runtime
55
+ - !ruby/object:Gem::Dependency
56
+ name: midi-winmm
50
57
  version_requirements: !ruby/object:Gem::Requirement
51
58
  requirements:
52
- - - "~>"
59
+ - - ~>
53
60
  - !ruby/object:Gem::Version
54
61
  version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: midi-winmm
57
62
  requirement: !ruby/object:Gem::Requirement
58
63
  requirements:
59
- - - "~>"
64
+ - - ~>
60
65
  - !ruby/object:Gem::Version
61
66
  version: '0'
62
- type: :runtime
63
67
  prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- description: Platform Independent, realtime MIDI input and output for Ruby
68
+ type: :runtime
69
+ description: Platform independent realtime MIDI input and output for Ruby
70
70
  email:
71
71
  - ari.russo@gmail.com
72
72
  executables: []
73
73
  extensions: []
74
74
  extra_rdoc_files: []
75
75
  files:
76
- - LICENSE
77
- - README.md
78
76
  - lib/unimidi.rb
79
- - lib/unimidi/adapter/alsa-rawmidi.rb
80
- - lib/unimidi/adapter/ffi-coremidi.rb
81
- - lib/unimidi/adapter/midi-jruby.rb
82
- - lib/unimidi/adapter/midi-winmm.rb
83
77
  - lib/unimidi/command.rb
84
78
  - lib/unimidi/device.rb
85
79
  - lib/unimidi/input.rb
@@ -87,6 +81,10 @@ files:
87
81
  - lib/unimidi/output.rb
88
82
  - lib/unimidi/platform.rb
89
83
  - lib/unimidi/type_conversion.rb
84
+ - lib/unimidi/adapter/alsa-rawmidi.rb
85
+ - lib/unimidi/adapter/ffi-coremidi.rb
86
+ - lib/unimidi/adapter/midi-jruby.rb
87
+ - lib/unimidi/adapter/midi-winmm.rb
90
88
  - test/adapter_test.rb
91
89
  - test/class_methods_test.rb
92
90
  - test/functional_test.rb
@@ -94,28 +92,30 @@ files:
94
92
  - test/input_test.rb
95
93
  - test/platform_test.rb
96
94
  - test/type_conversion_test.rb
95
+ - LICENSE
96
+ - README.md
97
97
  homepage: http://github.com/arirusso/unimidi
98
98
  licenses:
99
99
  - Apache 2.0
100
100
  metadata: {}
101
- post_install_message:
101
+ post_install_message:
102
102
  rdoc_options: []
103
103
  require_paths:
104
104
  - lib
105
105
  required_ruby_version: !ruby/object:Gem::Requirement
106
106
  requirements:
107
- - - ">="
107
+ - - '>='
108
108
  - !ruby/object:Gem::Version
109
109
  version: '0'
110
110
  required_rubygems_version: !ruby/object:Gem::Requirement
111
111
  requirements:
112
- - - ">="
112
+ - - '>='
113
113
  - !ruby/object:Gem::Version
114
114
  version: 1.3.6
115
115
  requirements: []
116
116
  rubyforge_project: unimidi
117
- rubygems_version: 2.2.2
118
- signing_key:
117
+ rubygems_version: 2.1.9
118
+ signing_key:
119
119
  specification_version: 4
120
- summary: Realtime MIDI input and output for Ruby
120
+ summary: Realtime MIDI IO for Ruby
121
121
  test_files: []