Sha256: 65a78b262b00bef4133db4060d84381c698c047566db3026bad9cbd0d5d9629e

Contents?: true

Size: 1.7 KB

Versions: 4

Compression:

Stored size: 1.7 KB

Contents

require 'spec_helper'

describe M3u8::SegmentItem do
  it 'should initialize with hash' do
    hash = { duration: 10.991, segment: 'test.ts' }
    item = M3u8::SegmentItem.new(hash)
    expect(item.duration).to eq 10.991
    expect(item.segment).to eq 'test.ts'
    expect(item.comment).to be_nil

    hash = { duration: 10.991, segment: 'test.ts', comment: 'anything',
             byterange_length: 4500, byterange_start: 600 }
    item = M3u8::SegmentItem.new(hash)
    expect(item.duration).to eq 10.991
    expect(item.byterange_length).to eq 4500
    expect(item.byterange_start).to eq 600
    expect(item.segment).to eq 'test.ts'
    expect(item.comment).to eq 'anything'
  end

  it 'should provide m3u8 format representation' do
    hash = { duration: 10.991, segment: 'test.ts' }
    item = M3u8::SegmentItem.new(hash)
    output = item.to_s
    expected = "#EXTINF:10.991,\ntest.ts"
    expect(output).to eq expected

    hash = { duration: 10.991, segment: 'test.ts', comment: 'anything' }
    item = M3u8::SegmentItem.new(hash)
    output = item.to_s
    expected = "#EXTINF:10.991,anything\ntest.ts"
    expect(output).to eq expected

    hash = { duration: 10.991, segment: 'test.ts', comment: 'anything',
             byterange_length: 4500, byterange_start: 600 }
    item = M3u8::SegmentItem.new(hash)
    output = item.to_s
    expected = "#EXTINF:10.991,anything\n#EXT-X-BYTERANGE:4500@600\ntest.ts"
    expect(output).to eq expected

    hash = { duration: 10.991, segment: 'test.ts', comment: 'anything',
             byterange_length: 4500 }
    item = M3u8::SegmentItem.new(hash)
    output = item.to_s
    expected = "#EXTINF:10.991,anything\n#EXT-X-BYTERANGE:4500\ntest.ts"
    expect(output).to eq expected
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
m3u8-0.5.3 spec/segment_item_spec.rb
m3u8-0.5.2 spec/segment_item_spec.rb
m3u8-0.5.1 spec/segment_item_spec.rb
m3u8-0.5.0 spec/segment_item_spec.rb