spnet 0.1.4 → 0.1.5
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +6 -3
- data/lib/spnet.rb +23 -5
- data/lib/spnet/core/block.rb +46 -0
- data/lib/spnet/core/in_port.rb +41 -0
- data/lib/spnet/core/limiter.rb +30 -0
- data/lib/spnet/core/link.rb +70 -0
- data/lib/spnet/core/network.rb +54 -0
- data/lib/spnet/core/out_port.rb +41 -0
- data/lib/spnet/limiters/enum_limiter.rb +24 -0
- data/lib/spnet/limiters/lower_limiter.rb +31 -0
- data/lib/spnet/limiters/no_limiter.rb +11 -0
- data/lib/spnet/limiters/range_limiter.rb +24 -0
- data/lib/spnet/limiters/upper_limiter.rb +31 -0
- data/lib/spnet/ports/command_in_port.rb +16 -8
- data/lib/spnet/ports/command_out_port.rb +17 -11
- data/lib/spnet/ports/param_in_port.rb +42 -0
- data/lib/spnet/ports/param_out_port.rb +32 -0
- data/lib/spnet/ports/signal_in_port.rb +20 -15
- data/lib/spnet/ports/signal_out_port.rb +12 -7
- data/lib/spnet/storage/block_state.rb +41 -0
- data/lib/spnet/storage/link_state.rb +38 -0
- data/lib/spnet/storage/network_state.rb +44 -0
- data/lib/spnet/storage/port_locater.rb +21 -0
- data/lib/spnet/version.rb +2 -1
- data/spec/core/block_spec.rb +80 -0
- data/spec/core/in_port_spec.rb +46 -0
- data/spec/core/limiter_spec.rb +7 -0
- data/spec/core/link_spec.rb +103 -0
- data/spec/core/network_spec.rb +40 -0
- data/spec/core/out_port_spec.rb +46 -0
- data/spec/limiters/enum_limiter_spec.rb +28 -0
- data/spec/limiters/lower_limiter_spec.rb +48 -0
- data/spec/limiters/no_limiter_spec.rb +12 -0
- data/spec/limiters/range_limiter_spec.rb +121 -0
- data/spec/limiters/upper_limiter_spec.rb +47 -0
- data/spec/ports/command_out_port_spec.rb +8 -15
- data/spec/ports/{value_in_port_spec.rb → param_in_port_spec.rb} +2 -2
- data/spec/ports/param_out_port_spec.rb +34 -0
- data/spec/ports/signal_in_port_spec.rb +2 -1
- data/spec/ports/signal_out_port_spec.rb +6 -37
- data/spec/spec_helper.rb +43 -0
- data/spec/storage/block_state_spec.rb +40 -0
- data/spec/storage/link_state_spec.rb +28 -0
- data/spec/storage/network_state_spec.rb +42 -0
- data/spec/storage/port_locater_spec.rb +11 -0
- data/spnet.gemspec +0 -1
- metadata +55 -35
- data/lib/spnet/block.rb +0 -40
- data/lib/spnet/in_port.rb +0 -29
- data/lib/spnet/out_port.rb +0 -64
- data/lib/spnet/ports/value_in_port.rb +0 -27
- data/lib/spnet/ports/value_out_port.rb +0 -28
- data/spec/block_spec.rb +0 -38
- data/spec/in_port_spec.rb +0 -29
- data/spec/out_port_spec.rb +0 -46
- data/spec/ports/value_out_port_spec.rb +0 -41
@@ -0,0 +1,47 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe SPNet::UpperLimiter do
|
4
|
+
describe '.apply_limit' do
|
5
|
+
context 'non-inclusive' do
|
6
|
+
before :all do
|
7
|
+
@upper = 1
|
8
|
+
@limiter = UpperLimiter.new(@upper, false)
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'should return the given value it it is below the upper limit' do
|
12
|
+
ok_values = [@upper - Float::EPSILON, @upper / 2.0]
|
13
|
+
limited_values = ok_values.map { |value| @limiter.apply_limit value }
|
14
|
+
limited_values.should eq(ok_values)
|
15
|
+
end
|
16
|
+
|
17
|
+
it 'should return the upper limit + Float::EPSILON if the given value is at or below the upper limit' do
|
18
|
+
bad_values = [@upper, @upper + Float::EPSILON, @upper * 2.0]
|
19
|
+
limited_values = bad_values.map { |value| @limiter.apply_limit value }
|
20
|
+
limited_values.each do |value|
|
21
|
+
value.should eq(@upper - Float::EPSILON)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
context 'inclusive upper limit, non-inclusive upper limit' do
|
27
|
+
before :all do
|
28
|
+
@upper = 1
|
29
|
+
@limiter = UpperLimiter.new(@upper, true)
|
30
|
+
end
|
31
|
+
|
32
|
+
it 'should return the given value it it is at or below the upper limit' do
|
33
|
+
ok_values = [@upper, @upper - Float::EPSILON, @upper / 2.0]
|
34
|
+
limited_values = ok_values.map { |value| @limiter.apply_limit value }
|
35
|
+
limited_values.should eq(ok_values)
|
36
|
+
end
|
37
|
+
|
38
|
+
it 'should return the upper limit if the given value is below the upper limit' do
|
39
|
+
bad_values = [@upper + Float::EPSILON, @upper * 2.0]
|
40
|
+
limited_values = bad_values.map { |value| @limiter.apply_limit value }
|
41
|
+
limited_values.each do |value|
|
42
|
+
value.should eq(@upper)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
|
-
describe SPNet::
|
3
|
+
describe SPNet::ParamOutPort do
|
4
4
|
before :each do
|
5
5
|
@in_port = SPNet::CommandInPort.new(
|
6
6
|
:command_map => {
|
@@ -13,27 +13,20 @@ describe SPNet::ValueOutPort do
|
|
13
13
|
@out_port = SPNet::CommandOutPort.new
|
14
14
|
end
|
15
15
|
|
16
|
-
describe '#add_link' do
|
17
|
-
it 'should raise ArgumentError if port is not ValueInPort' do
|
18
|
-
@in_port2 = SPNet::SignalInPort.new
|
19
|
-
lambda { @out_port.add_link(@in_port2) }.should raise_error(ArgumentError)
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
16
|
describe '#list_commands' do
|
24
17
|
it 'should pass back the return value from the list_commands handler' do
|
25
|
-
@out_port.
|
26
|
-
@out_port.list_commands.should eq([
|
18
|
+
@out_port.set_link Link.new(:from => @out_port, :to => @in_port)
|
19
|
+
@out_port.list_commands.should eq([:add, :sub, :mul, :div])
|
27
20
|
end
|
28
21
|
end
|
29
22
|
|
30
23
|
describe '#exec_command' do
|
31
24
|
it 'should pass the command and data to the exec_command handler, and pass back the return value' do
|
32
|
-
@out_port.
|
33
|
-
@out_port.exec_command(:add, [1,2]).should eq(
|
34
|
-
@out_port.exec_command(:sub, [5,4]).should eq(
|
35
|
-
@out_port.exec_command(:mul, [3,2]).should eq(
|
36
|
-
@out_port.exec_command(:div, [9,3]).should eq(
|
25
|
+
@out_port.set_link Link.new(:from => @out_port, :to => @in_port)
|
26
|
+
@out_port.exec_command(:add, [1,2]).should eq(3)
|
27
|
+
@out_port.exec_command(:sub, [5,4]).should eq(1)
|
28
|
+
@out_port.exec_command(:mul, [3,2]).should eq(6)
|
29
|
+
@out_port.exec_command(:div, [9,3]).should eq(3)
|
37
30
|
end
|
38
31
|
end
|
39
32
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
|
-
describe SPNet::
|
3
|
+
describe SPNet::ParamInPort do
|
4
4
|
before :each do
|
5
5
|
@value = 0
|
6
6
|
|
@@ -12,7 +12,7 @@ describe SPNet::ValueInPort do
|
|
12
12
|
return @value
|
13
13
|
end
|
14
14
|
|
15
|
-
@port = SPNet::
|
15
|
+
@port = SPNet::ParamInPort.new :get_value_handler => get_value_handler, :set_value_handler => set_value_handler
|
16
16
|
end
|
17
17
|
|
18
18
|
describe '#set_value' do
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe SPNet::ParamOutPort do
|
4
|
+
before :each do
|
5
|
+
@value = 0
|
6
|
+
|
7
|
+
set_value_handler = lambda do |value|
|
8
|
+
return @value = value
|
9
|
+
end
|
10
|
+
|
11
|
+
get_value_handler = lambda do
|
12
|
+
return @value
|
13
|
+
end
|
14
|
+
|
15
|
+
@out_port = SPNet::ParamOutPort.new
|
16
|
+
@in_port = SPNet::ParamInPort.new :get_value_handler => get_value_handler, :set_value_handler => set_value_handler
|
17
|
+
end
|
18
|
+
|
19
|
+
describe '#set_value' do
|
20
|
+
it 'should pass the given value through ParamInPort#set_value' do
|
21
|
+
@out_port.set_link Link.new(:to => @in_port, :from => @out_port)
|
22
|
+
@out_port.set_value 5
|
23
|
+
@value.should eq(5)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
describe '#get_value' do
|
28
|
+
it "should return the value from each linked port's ParamInPort#get_value" do
|
29
|
+
@value = 7
|
30
|
+
@out_port.set_link Link.new(:to => @in_port, :from => @out_port)
|
31
|
+
@out_port.get_value.should eq(7)
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -18,7 +18,8 @@ describe SPNet::SignalInPort do
|
|
18
18
|
end
|
19
19
|
|
20
20
|
it 'should limit all values before queuing them' do
|
21
|
-
|
21
|
+
limiter = RangeLimiter.new(2.5, true, 5.0, true)
|
22
|
+
port = SPNet::SignalInPort.new(:limiter => limiter)
|
22
23
|
port.enqueue_values([2.4, 2.6, 4.9, 5.1])
|
23
24
|
port.queue.each do |value|
|
24
25
|
value.should be_between(2.5, 5.0)
|
@@ -6,44 +6,13 @@ describe SPNet::SignalOutPort do
|
|
6
6
|
@in_port = SPNet::SignalInPort.new
|
7
7
|
end
|
8
8
|
|
9
|
-
describe '#add_link' do
|
10
|
-
it 'should raise ArgumentError if port is not input port' do
|
11
|
-
out_port2 = SPNet::SignalOutPort.new
|
12
|
-
lambda { @out_port.add_link(out_port2) }.should raise_error(ArgumentError)
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
16
9
|
describe '#send_values' do
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
@in_port.queue.should eq([1,2,3,4])
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
context 'several linked input ports' do
|
28
|
-
it 'should enqueue the values on each linked input port' do
|
29
|
-
in_port1 = SPNet::SignalInPort.new
|
30
|
-
in_port2 = SPNet::SignalInPort.new(:name => 'def')
|
31
|
-
in_port3 = SPNet::SignalInPort.new(:name => 'ghi')
|
32
|
-
|
33
|
-
@out_port.add_link in_port1
|
34
|
-
@out_port.add_link in_port2
|
35
|
-
@out_port.add_link in_port3
|
36
|
-
|
37
|
-
in_port1.queue.should be_empty
|
38
|
-
in_port2.queue.should be_empty
|
39
|
-
in_port3.queue.should be_empty
|
40
|
-
|
41
|
-
@out_port.send_values [1,2,3,4]
|
42
|
-
|
43
|
-
in_port1.queue.should eq([1,2,3,4])
|
44
|
-
in_port2.queue.should eq([1,2,3,4])
|
45
|
-
in_port3.queue.should eq([1,2,3,4])
|
46
|
-
end
|
10
|
+
it 'should enqueue the values on the linked input port' do
|
11
|
+
@out_port.set_link Link.new(:to => @in_port, :from => @out_port)
|
12
|
+
|
13
|
+
@in_port.queue.should be_empty
|
14
|
+
@out_port.send_values [1,2,3,4]
|
15
|
+
@in_port.queue.should eq([1,2,3,4])
|
47
16
|
end
|
48
17
|
end
|
49
18
|
|
data/spec/spec_helper.rb
CHANGED
@@ -2,3 +2,46 @@ require 'rspec'
|
|
2
2
|
require 'spnet'
|
3
3
|
|
4
4
|
include SPNet
|
5
|
+
|
6
|
+
class TestBlock < Block
|
7
|
+
attr_reader :value1, :value2
|
8
|
+
|
9
|
+
def initialize args
|
10
|
+
raise ArgumentError, "args does not have :sample_rate key" unless args.has_key?(:sample_rate)
|
11
|
+
|
12
|
+
@value1 = 1
|
13
|
+
@value2 = 2
|
14
|
+
@command_history = []
|
15
|
+
|
16
|
+
input = SignalInPort.new
|
17
|
+
output = SignalOutPort.new
|
18
|
+
|
19
|
+
value1 = ParamInPort.new(
|
20
|
+
:get_value_handler => ->(){ @value1 },
|
21
|
+
:set_value_handler => ->(a){ @value1 = a},
|
22
|
+
)
|
23
|
+
|
24
|
+
value2 = ParamInPort.new(
|
25
|
+
:get_value_handler => ->(){ @value2 },
|
26
|
+
:set_value_handler => ->(a){ @value2 = a},
|
27
|
+
)
|
28
|
+
|
29
|
+
command = CommandInPort.new(
|
30
|
+
:command_map => {
|
31
|
+
"SIT" => ->(a){ @command_history.push("SIT") },
|
32
|
+
"STAY" => ->(a){ @command_history.push("STAY") }
|
33
|
+
}
|
34
|
+
)
|
35
|
+
|
36
|
+
pass_through = lambda do |count|
|
37
|
+
output.send_values input.dequeue_values(count)
|
38
|
+
end
|
39
|
+
|
40
|
+
super(
|
41
|
+
:sample_rate => args[:sample_rate],
|
42
|
+
:algorithm => pass_through,
|
43
|
+
:in_ports => { "IN" => input, "VALUE1" => value1, "VALUE2" => value2, "COMMAND" => command },
|
44
|
+
:out_ports => { "OUT" => output }
|
45
|
+
)
|
46
|
+
end
|
47
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe SPNet::BlockState do
|
4
|
+
describe '.new' do
|
5
|
+
it 'should assign block class' do
|
6
|
+
block_state = BlockState.new :class_sym => :TestBlock
|
7
|
+
block_state.class_sym.should eq(:TestBlock)
|
8
|
+
end
|
9
|
+
|
10
|
+
it 'should assign port params' do
|
11
|
+
params = {
|
12
|
+
"VALUE1" => 0.0,
|
13
|
+
"VALUE2" => 1.0,
|
14
|
+
}
|
15
|
+
block_state = BlockState.new :class_sym => :TestBlock, :port_params => params
|
16
|
+
block_state.port_params.should eq(params)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
describe '#make_block' do
|
21
|
+
before :all do
|
22
|
+
@params = {
|
23
|
+
"VALUE1" => 0.1,
|
24
|
+
"VALUE2" => 0.9,
|
25
|
+
}
|
26
|
+
@class_sym = :TestBlock
|
27
|
+
block_state = BlockState.new :class_sym => @class_sym, :port_params => @params
|
28
|
+
@block = block_state.make_block :sample_rate => 2
|
29
|
+
end
|
30
|
+
|
31
|
+
it 'should make a block of the given class type' do
|
32
|
+
@block.class.to_s.to_sym.should eq(@class_sym)
|
33
|
+
end
|
34
|
+
|
35
|
+
it 'should make a block using given port params' do
|
36
|
+
@block.value1.should eq(@params["VALUE1"])
|
37
|
+
@block.value2.should eq(@params["VALUE2"])
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe SPNet::LinkState do
|
4
|
+
describe '.new' do
|
5
|
+
it 'should assign from and to port locaters' do
|
6
|
+
output = PortLocater.new :block_name => "block_A", :port_name => "OUT"
|
7
|
+
input = PortLocater.new :block_name => "block_B", :port_name => "IN"
|
8
|
+
link_state = LinkState.new :from => output, :to => input
|
9
|
+
link_state.from.should eq(output)
|
10
|
+
link_state.to.should eq(input)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
describe '#make_link' do
|
15
|
+
it 'should make a Link object, given good blocks' do
|
16
|
+
blocks = {
|
17
|
+
"block_A" => TestBlock.new(:sample_rate => 2),
|
18
|
+
"block_B" => TestBlock.new(:sample_rate => 2),
|
19
|
+
}
|
20
|
+
output = PortLocater.new :block_name => "block_A", :port_name => "OUT"
|
21
|
+
input = PortLocater.new :block_name => "block_B", :port_name => "IN"
|
22
|
+
link_state = LinkState.new :from => output, :to => input
|
23
|
+
link = link_state.make_link blocks
|
24
|
+
link.from.should eq blocks["block_A"].out_ports["OUT"]
|
25
|
+
link.to.should eq blocks["block_B"].in_ports["IN"]
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe SPNet::NetworkState do
|
4
|
+
describe '.make_network' do
|
5
|
+
before :all do
|
6
|
+
@network_state = NetworkState.new(
|
7
|
+
:block_states => {
|
8
|
+
"A" => BlockState.new(:class_sym => :TestBlock, :hashed_args => {}, :port_params => { "VALUE1" => 0.2}),
|
9
|
+
"B" => BlockState.new(:class_sym => :TestBlock, :hashed_args => {}, :port_params => { "VALUE1" => 0.4})
|
10
|
+
},
|
11
|
+
:link_states => [
|
12
|
+
LinkState.new(
|
13
|
+
:from => PortLocater.new(:block_name => "A", :port_name => "OUT"),
|
14
|
+
:to => PortLocater.new(:block_name => "B", :port_name => "IN")
|
15
|
+
)
|
16
|
+
]
|
17
|
+
)
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'should create blocks for the given block models' do
|
21
|
+
network = @network_state.make_network :sample_rate => 4
|
22
|
+
network.blocks.should have_key("A")
|
23
|
+
network.blocks["A"].class.should be(TestBlock)
|
24
|
+
network.blocks.should have_key("B")
|
25
|
+
network.blocks["B"].class.should be(TestBlock)
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'should assign values found in :port_params' do
|
29
|
+
network = @network_state.make_network :sample_rate => 4
|
30
|
+
network.blocks["A"].value1.should eq(0.2)
|
31
|
+
network.blocks["B"].value1.should eq(0.4)
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'should create links from :link_states' do
|
35
|
+
network = @network_state.make_network :sample_rate => 4
|
36
|
+
network.links.count.should be 1
|
37
|
+
network.links.first.from.should eq(network.blocks["A"].out_ports["OUT"])
|
38
|
+
network.links.first.to.should eq(network.blocks["B"].in_ports["IN"])
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe SPNet::PortLocater do
|
4
|
+
describe '.new' do
|
5
|
+
it 'should assign block and port name' do
|
6
|
+
locater = PortLocater.new :block_name => "block_A", :port_name => "port_A"
|
7
|
+
locater.block_name.should eq("block_A")
|
8
|
+
locater.port_name.should eq("port_A")
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
data/spnet.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spnet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-03-18 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: hashmake
|
@@ -27,22 +27,6 @@ dependencies:
|
|
27
27
|
- - ! '>='
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: '0'
|
30
|
-
- !ruby/object:Gem::Dependency
|
31
|
-
name: spcore
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
|
-
requirements:
|
35
|
-
- - ! '>='
|
36
|
-
- !ruby/object:Gem::Version
|
37
|
-
version: '0'
|
38
|
-
type: :runtime
|
39
|
-
prerelease: false
|
40
|
-
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
|
-
requirements:
|
43
|
-
- - ! '>='
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: '0'
|
46
30
|
- !ruby/object:Gem::Dependency
|
47
31
|
name: bundler
|
48
32
|
requirement: !ruby/object:Gem::Requirement
|
@@ -141,27 +125,51 @@ files:
|
|
141
125
|
- README.rdoc
|
142
126
|
- Rakefile
|
143
127
|
- lib/spnet.rb
|
144
|
-
- lib/spnet/block.rb
|
145
|
-
- lib/spnet/in_port.rb
|
146
|
-
- lib/spnet/
|
128
|
+
- lib/spnet/core/block.rb
|
129
|
+
- lib/spnet/core/in_port.rb
|
130
|
+
- lib/spnet/core/limiter.rb
|
131
|
+
- lib/spnet/core/link.rb
|
132
|
+
- lib/spnet/core/network.rb
|
133
|
+
- lib/spnet/core/out_port.rb
|
134
|
+
- lib/spnet/limiters/enum_limiter.rb
|
135
|
+
- lib/spnet/limiters/lower_limiter.rb
|
136
|
+
- lib/spnet/limiters/no_limiter.rb
|
137
|
+
- lib/spnet/limiters/range_limiter.rb
|
138
|
+
- lib/spnet/limiters/upper_limiter.rb
|
147
139
|
- lib/spnet/ports/command_in_port.rb
|
148
140
|
- lib/spnet/ports/command_out_port.rb
|
141
|
+
- lib/spnet/ports/param_in_port.rb
|
142
|
+
- lib/spnet/ports/param_out_port.rb
|
149
143
|
- lib/spnet/ports/signal_in_port.rb
|
150
144
|
- lib/spnet/ports/signal_out_port.rb
|
151
|
-
- lib/spnet/
|
152
|
-
- lib/spnet/
|
145
|
+
- lib/spnet/storage/block_state.rb
|
146
|
+
- lib/spnet/storage/link_state.rb
|
147
|
+
- lib/spnet/storage/network_state.rb
|
148
|
+
- lib/spnet/storage/port_locater.rb
|
153
149
|
- lib/spnet/version.rb
|
154
|
-
- spec/block_spec.rb
|
155
|
-
- spec/in_port_spec.rb
|
156
|
-
- spec/
|
150
|
+
- spec/core/block_spec.rb
|
151
|
+
- spec/core/in_port_spec.rb
|
152
|
+
- spec/core/limiter_spec.rb
|
153
|
+
- spec/core/link_spec.rb
|
154
|
+
- spec/core/network_spec.rb
|
155
|
+
- spec/core/out_port_spec.rb
|
156
|
+
- spec/limiters/enum_limiter_spec.rb
|
157
|
+
- spec/limiters/lower_limiter_spec.rb
|
158
|
+
- spec/limiters/no_limiter_spec.rb
|
159
|
+
- spec/limiters/range_limiter_spec.rb
|
160
|
+
- spec/limiters/upper_limiter_spec.rb
|
157
161
|
- spec/ports/command_in_port_spec.rb
|
158
162
|
- spec/ports/command_out_port_spec.rb
|
163
|
+
- spec/ports/param_in_port_spec.rb
|
164
|
+
- spec/ports/param_out_port_spec.rb
|
159
165
|
- spec/ports/signal_in_port_spec.rb
|
160
166
|
- spec/ports/signal_out_port_spec.rb
|
161
|
-
- spec/ports/value_in_port_spec.rb
|
162
|
-
- spec/ports/value_out_port_spec.rb
|
163
167
|
- spec/spec_helper.rb
|
164
168
|
- spec/spnet_spec.rb
|
169
|
+
- spec/storage/block_state_spec.rb
|
170
|
+
- spec/storage/link_state_spec.rb
|
171
|
+
- spec/storage/network_state_spec.rb
|
172
|
+
- spec/storage/port_locater_spec.rb
|
165
173
|
- spnet.gemspec
|
166
174
|
homepage: https://rubygems.org/gems/spnet
|
167
175
|
licenses:
|
@@ -178,7 +186,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
178
186
|
version: '0'
|
179
187
|
segments:
|
180
188
|
- 0
|
181
|
-
hash: -
|
189
|
+
hash: -699340785
|
182
190
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
183
191
|
none: false
|
184
192
|
requirements:
|
@@ -187,7 +195,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
187
195
|
version: '0'
|
188
196
|
segments:
|
189
197
|
- 0
|
190
|
-
hash: -
|
198
|
+
hash: -699340785
|
191
199
|
requirements: []
|
192
200
|
rubyforge_project:
|
193
201
|
rubygems_version: 1.8.23
|
@@ -195,15 +203,27 @@ signing_key:
|
|
195
203
|
specification_version: 3
|
196
204
|
summary: Provide infrastructure for forming processing networks.
|
197
205
|
test_files:
|
198
|
-
- spec/block_spec.rb
|
199
|
-
- spec/in_port_spec.rb
|
200
|
-
- spec/
|
206
|
+
- spec/core/block_spec.rb
|
207
|
+
- spec/core/in_port_spec.rb
|
208
|
+
- spec/core/limiter_spec.rb
|
209
|
+
- spec/core/link_spec.rb
|
210
|
+
- spec/core/network_spec.rb
|
211
|
+
- spec/core/out_port_spec.rb
|
212
|
+
- spec/limiters/enum_limiter_spec.rb
|
213
|
+
- spec/limiters/lower_limiter_spec.rb
|
214
|
+
- spec/limiters/no_limiter_spec.rb
|
215
|
+
- spec/limiters/range_limiter_spec.rb
|
216
|
+
- spec/limiters/upper_limiter_spec.rb
|
201
217
|
- spec/ports/command_in_port_spec.rb
|
202
218
|
- spec/ports/command_out_port_spec.rb
|
219
|
+
- spec/ports/param_in_port_spec.rb
|
220
|
+
- spec/ports/param_out_port_spec.rb
|
203
221
|
- spec/ports/signal_in_port_spec.rb
|
204
222
|
- spec/ports/signal_out_port_spec.rb
|
205
|
-
- spec/ports/value_in_port_spec.rb
|
206
|
-
- spec/ports/value_out_port_spec.rb
|
207
223
|
- spec/spec_helper.rb
|
208
224
|
- spec/spnet_spec.rb
|
225
|
+
- spec/storage/block_state_spec.rb
|
226
|
+
- spec/storage/link_state_spec.rb
|
227
|
+
- spec/storage/network_state_spec.rb
|
228
|
+
- spec/storage/port_locater_spec.rb
|
209
229
|
has_rdoc:
|