Sha256: 7b1fa85e0fe88136ad87affb4ae15ec59deaf8ccdaee23bcb7897d4c67c6be4c

Contents?: true

Size: 1.67 KB

Versions: 1

Compression:

Stored size: 1.67 KB

Contents

require File.expand_path(File.dirname(__FILE__)) + '/../helper'

class LintMiddlewareTest < Test::Unit::TestCase
  def test_empty_export_raises
    m = flexmock
    m.should_receive(:start_export).once
    
    ex = Tracksperanto::Middleware::Lint.new(m)
    ex.start_export(100, 100)
    assert_raise(Tracksperanto::Middleware::Lint::NoTrackersExportedError) do
      ex.end_export
    end
    
  end
  
  def test_exporting_empty_tracker_raises
    m = flexmock
    m.should_receive(:start_export).once
    m.should_receive(:start_tracker_segment).once
    
    ex = Tracksperanto::Middleware::Lint.new(m)
    ex.start_export(100, 100)
    ex.start_tracker_segment("Foo")
    
    assert_raise(Tracksperanto::Middleware::Lint::EmptyTrackerSentError) do
      ex.end_tracker_segment
    end
  end
  
  def test_exporting_out_of_sequence_raises
    m = flexmock
    m.should_receive(:start_export).once
    m.should_receive(:start_tracker_segment).once
    m.should_receive(:export_point).once
    
    ex = Tracksperanto::Middleware::Lint.new(m)
    ex.start_export(100, 100)
    ex.start_tracker_segment("Foo")
    ex.export_point(2, 123.3, 456.0, 0.0)
    
    assert_raise(Tracksperanto::Middleware::Lint::NonSequentialKeyframes) do
      ex.export_point(1, 123.3, 456.0, 0.0)
    end
  end

  def test_exporting_with_two_starts_raises
    m = flexmock
    m.should_receive(:start_export).once
    m.should_receive(:start_tracker_segment).once
    
    ex = Tracksperanto::Middleware::Lint.new(m)
    ex.start_export(100, 100)
    ex.start_tracker_segment("Foo")
    
    assert_raise(Tracksperanto::Middleware::Lint::TrackerRestartedError) do
      ex.start_tracker_segment("Bar")
    end
  end
  
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
tracksperanto-2.8.0 test/middleware/test_lint_middleware.rb