rgraph 0.1.1 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2be82f7a8925ee33f06108c11c294e22f9afd4fd
4
- data.tar.gz: 8123623213d0101ca164bb1e4225fc79f8f4a49c
3
+ metadata.gz: 0f46f1d74a6596fd84937bc37fc0f62adc96312e
4
+ data.tar.gz: bc7052513280b46dd7b521b6843b31632aee24ca
5
5
  SHA512:
6
- metadata.gz: 0a45882e191a2da840cc67a973a242159d9a1ce24187dcaa32a042ab87024e2cb85afd837d4e6ddbe48668064dd7ab1cb02874f4045b8d1c8bf991be4e77bb8a
7
- data.tar.gz: 43da8cf461fb090a8e84947c4b58ae97df2955969b132383eb348f3079da102972ca4191ef5e5dca8ea5ac26455c15851678596db321e838e57d7ed13d86bdbd
6
+ metadata.gz: 5ea5119c0c85dbe1e11637307521bf770996ebf2da75342ad29127713288ddb7fb506ce6370d255a05cb0948a65b402bb3748bd97824c528255e44a64e9e5a89
7
+ data.tar.gz: 223f4e04b7248fd06f428f63964bcab20460c2b18bdddeb0cd5a64aab058f6cf356ebbf770c1cf136aee2ee63ed9903167c38ac42fbaaa555786c785d0c22a9f
@@ -0,0 +1 @@
1
+ 2.4.1
data/Guardfile CHANGED
@@ -1,4 +1,4 @@
1
- guard :rspec do
1
+ guard :rspec, cmd: 'bundle exec rspec' do
2
2
  watch(%r{^spec/(.+)/.+_spec\.rb$})
3
3
  watch(%r{^lib/(.+)/(.+)\.rb$}) { |m| "spec/#{m[1]}/#{m[2]}_spec.rb" }
4
4
  watch('spec/spec_helper.rb') { "spec" }
@@ -165,7 +165,7 @@ class Graph
165
165
  def diameter
166
166
  distances unless @distance
167
167
 
168
- (distances.flatten - [@infinity]).max
168
+ (@distance.flatten - [@infinity]).max
169
169
  end
170
170
 
171
171
  def farness
@@ -1,24 +1,30 @@
1
- class Link
2
- attr_accessor :source, :target, :type
3
-
1
+ class Link < Hash
4
2
  def initialize(attributes)
5
- @attributes = attributes
6
- @source = @attributes.delete(:source)
7
- @target = @attributes.delete(:target)
8
- @type = @attributes.delete(:type) || 'undirected'
3
+ self[:type] = 'undirected'
4
+ self[:weight] = 1
5
+
6
+ attributes.each_pair do |key, value|
7
+ self[key] = value
8
+ end
9
9
 
10
- raise Exception.new("source cant be nil") unless @source
11
- raise Exception.new("target cant be nil") unless @target
12
- raise Exception.new("source must be of type Node") unless @source.is_a? Node
13
- raise Exception.new("target must be of type Node") unless @target.is_a? Node
10
+ raise Exception.new("source cant be nil") unless self[:source]
11
+ raise Exception.new("target cant be nil") unless self[:target]
12
+ raise Exception.new("source must be of type Node") unless self[:source].is_a? Node
13
+ raise Exception.new("target must be of type Node") unless self[:target].is_a? Node
14
14
 
15
- @attributes[:weight] ||= 1
15
+ self[:source].neighbours << self[:target]
16
+ self[:target].neighbours << self[:source] unless self[:type] == 'directed'
17
+ end
18
+
19
+ def source
20
+ self[:source]
21
+ end
16
22
 
17
- @source.neighbours << @target
18
- @target.neighbours << @source unless @type == 'directed'
23
+ def target
24
+ self[:target]
19
25
  end
20
26
 
21
- def [](attribute)
22
- @attributes[attribute]
27
+ def type
28
+ self[:type]
23
29
  end
24
30
  end
@@ -1,3 +1,3 @@
1
1
  module Rgraph
2
- VERSION = '0.1.1'
2
+ VERSION = '0.2.0'
3
3
  end
@@ -6,7 +6,7 @@ Gem::Specification.new do |spec|
6
6
  spec.name = "rgraph"
7
7
  spec.version = Rgraph::VERSION
8
8
  spec.authors = ["Michel Boaventura"]
9
- spec.email = ["michel@michelboaventura.com"]
9
+ spec.email = ["michel.boaventura@gmail.com"]
10
10
  spec.description = "Ruby's Graph Library"
11
11
  spec.summary = "A Ruby's Graph Library"
12
12
  spec.homepage = "http://github.com/michelboaventura/rgraph"
@@ -18,9 +18,9 @@ Gem::Specification.new do |spec|
18
18
 
19
19
  spec.extensions = %w[ext/fw/extconf.rb]
20
20
 
21
- spec.add_development_dependency "bundler", "~> 1.7.3"
22
- spec.add_development_dependency "rake", "~> 10.3.2"
23
- spec.add_development_dependency "rake-compiler", "~> 0.9.3"
24
- spec.add_development_dependency "rspec", "~> 3.1.0"
25
- spec.add_development_dependency "guard-rspec", "~> 4.3.1"
21
+ spec.add_development_dependency "bundler", "~> 1.15"
22
+ spec.add_development_dependency "rake", "~> 12.0"
23
+ spec.add_development_dependency "rake-compiler", "~> 1.0"
24
+ spec.add_development_dependency "rspec", "~> 3.6"
25
+ spec.add_development_dependency "guard-rspec", "~> 4.7"
26
26
  end
@@ -1,6 +1,4 @@
1
- #coding: utf-8
2
-
3
- require_relative '../../lib/rgraph/graph'
1
+ require 'spec_helper'
4
2
 
5
3
  describe Graph do
6
4
  describe "read .csv" do
@@ -1,6 +1,4 @@
1
- require_relative '../../lib/rgraph/link'
2
- require_relative '../../lib/rgraph/node'
3
-
1
+ require 'spec_helper'
4
2
 
5
3
  describe Link do
6
4
  describe "creates a link without a weight" do
@@ -1,4 +1,4 @@
1
- require_relative '../../lib/rgraph/node'
1
+ require 'spec_helper'
2
2
 
3
3
  describe Node do
4
4
  subject { Node.new(name: "Lucas", id: '1', age: 20) }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rgraph
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michel Boaventura
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-18 00:00:00.000000000 Z
11
+ date: 2017-06-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,73 +16,73 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.7.3
19
+ version: '1.15'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.7.3
26
+ version: '1.15'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 10.3.2
33
+ version: '12.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 10.3.2
40
+ version: '12.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake-compiler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.9.3
47
+ version: '1.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.9.3
54
+ version: '1.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 3.1.0
61
+ version: '3.6'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 3.1.0
68
+ version: '3.6'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: guard-rspec
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 4.3.1
75
+ version: '4.7'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 4.3.1
82
+ version: '4.7'
83
83
  description: Ruby's Graph Library
84
84
  email:
85
- - michel@michelboaventura.com
85
+ - michel.boaventura@gmail.com
86
86
  executables: []
87
87
  extensions:
88
88
  - ext/fw/extconf.rb
@@ -90,6 +90,7 @@ extra_rdoc_files: []
90
90
  files:
91
91
  - ".gitignore"
92
92
  - ".rspec"
93
+ - ".ruby-version"
93
94
  - ".travis.yml"
94
95
  - Gemfile
95
96
  - Guardfile
@@ -135,7 +136,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
135
136
  version: '0'
136
137
  requirements: []
137
138
  rubyforge_project:
138
- rubygems_version: 2.4.1
139
+ rubygems_version: 2.6.11
139
140
  signing_key:
140
141
  specification_version: 4
141
142
  summary: A Ruby's Graph Library