• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Nu-hin / remote_ruby / 13507765531

24 Feb 2025 09:03PM UTC coverage: 92.926% (-1.5%) from 94.467%
13507765531

push

github

Nu-hin
Remove everything but #readpartial from stream decorators. Remove EvalAdapter

25 of 25 new or added lines in 5 files covered. (100.0%)

14 existing lines in 2 files now uncovered.

1064 of 1145 relevant lines covered (92.93%)

75.76 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

91.67
/lib/remote_ruby/stream_prefixer.rb
1
# frozen_string_literal: true
2

3
module RemoteRuby
16✔
4
  # Decorates the source stream prepending a prefix to each line
5
  # read from the source
6
  class StreamPrefixer
16✔
7
    attr_reader :stream, :prefix
16✔
8

9
    def initialize(stream, prefix)
16✔
10
      @stream = stream
128✔
11
      @prefix = prefix
128✔
12
      @eof = false
128✔
13
      @prefix_needed = true
128✔
14
      @out_buffer = String.new
128✔
15
    end
16

17
    def readpartial(max_len, out_str = nil)
16✔
18
      out_str ||= String.new
144✔
19
      out_str.replace(readpartial_direct(max_len))
144✔
20
    end
21

22
    private
16✔
23

24
    def readpartial_direct(max_len)
16✔
25
      if @out_buffer.empty?
144✔
26
        begin
27
          read = stream.readpartial(max_len)
112✔
28
          raise EOFError if read.empty?
112✔
29
        rescue EOFError
UNCOV
30
          @eof = true
×
UNCOV
31
          raise
×
32
        end
33

34
        read.each_line do |line|
112✔
35
          @out_buffer << prefix if @prefix_needed
208✔
36
          @prefix_needed = line.end_with?("\n")
208✔
37
          @out_buffer << line
208✔
38
        end
39
      end
40

41
      @out_buffer.slice!(0, max_len)
144✔
42
    end
43
  end
44
end
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc