scaffolder 0.4.2 → 0.4.3

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/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.2
1
+ 0.4.3
@@ -40,7 +40,7 @@ class Scaffolder::Region::Insert < Scaffolder::Region
40
40
  open-1..close-1
41
41
  end
42
42
 
43
- # Inserts are comaprable by close position.
43
+ # Inserts are comparable by close position.
44
44
  #
45
45
  # @return [Integer]
46
46
  # @param [Scaffolder::Region::Insert]
@@ -48,4 +48,12 @@ class Scaffolder::Region::Insert < Scaffolder::Region
48
48
  self.close <=> other.close
49
49
  end
50
50
 
51
+ # The difference in the insert sequence size and the insert location
52
+ #
53
+ # @return [Integer]
54
+ def size_diff
55
+ insert_size = (close - open) + 1
56
+ sequence.length - insert_size
57
+ end
58
+
51
59
  end
@@ -67,10 +67,8 @@ class Scaffolder::Region::Sequence < Scaffolder::Region
67
67
  raise CoordinateError if insert.close < 1
68
68
  raise CoordinateError if insert.open > insert.close
69
69
 
70
- before_size = seq.length
71
70
  seq[insert.position] = insert.sequence
72
- diff = seq.length - before_size
73
- stop(stop + diff)
71
+ @stop += insert.size_diff
74
72
 
75
73
  seq
76
74
  end
data/scaffolder.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{scaffolder}
8
- s.version = "0.4.2"
8
+ s.version = "0.4.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Michael Barton"]
data/test/test_insert.rb CHANGED
@@ -35,6 +35,31 @@ class TestInsert < Test::Unit::TestCase
35
35
 
36
36
  end
37
37
 
38
+ context "#size_diff" do
39
+
40
+ setup do
41
+ @insert = Scaffolder::Region::Insert.new
42
+ @insert.open 3
43
+ @insert.close 5
44
+ end
45
+
46
+ should "return a negative diff for a sequence smaller than insert site" do
47
+ @insert.raw_sequence 'TT'
48
+ assert(@insert.size_diff,-1)
49
+ end
50
+
51
+ should "return 0 for a sequence equal to the insert site" do
52
+ @insert.raw_sequence 'TT'
53
+ assert(@insert.size_diff,0)
54
+ end
55
+
56
+ should "return a positive diff for a sequence larger than insert site" do
57
+ @insert.raw_sequence 'TTTT'
58
+ assert(@insert.size_diff,1)
59
+ end
60
+
61
+ end
62
+
38
63
  should "be comparable by close position" do
39
64
  a = Scaffolder::Region::Insert.new
40
65
  a.close 1
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scaffolder
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
4
+ hash: 9
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 4
9
- - 2
10
- version: 0.4.2
9
+ - 3
10
+ version: 0.4.3
11
11
  platform: ruby
12
12
  authors:
13
13
  - Michael Barton