tracksperanto 2.6.0 → 2.6.1

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.
@@ -2,86 +2,6 @@ require File.expand_path(File.dirname(__FILE__)) + '/../helper'
2
2
 
3
3
  class FlameImportTest < Test::Unit::TestCase
4
4
  DELTA = 0.1
5
- BLOCK_WITH_NO_KF = %{Channel tracker1/ref/width
6
- Extrapolation constant
7
- Value 10
8
- Colour 50 50 50
9
- End
10
- }
11
- BLOCK_WITH_KEYFRAMES = %{
12
- Channel tracker1/ref/dx
13
- Extrapolation constant
14
- Value 0
15
- Size 5
16
- KeyVersion 1
17
- Key 0
18
- Frame 0
19
- Value 0
20
- ValueLock yes
21
- DeleteLock yes
22
- Interpolation constant
23
- End
24
- Key 1
25
- Frame 1
26
- Value 0
27
- Interpolation constant
28
- RightSlope -1.9947
29
- LeftSlope -1.9947
30
- End
31
- Key 2
32
- Frame 44
33
- Value -87.7668
34
- FrameLock yes
35
- Interpolation constant
36
- RightSlope -2.31503
37
- LeftSlope -2.31503
38
- End
39
- Key 3
40
- Frame 74
41
- Value -168.997
42
- FrameLock yes
43
- Interpolation constant
44
- RightSlope -2.24203
45
- LeftSlope -2.24203
46
- End
47
- Key 4
48
- Frame 115
49
- Value -246.951
50
- FrameLock yes
51
- Interpolation constant
52
- End
53
- Colour 50 50 50
54
- End
55
- }
56
-
57
- def test_channel_block_for_channel_without_keyframes
58
- io = StringIO.new(BLOCK_WITH_NO_KF)
59
- first_line = io.gets
60
- name = "foo/bar"
61
- c = Tracksperanto::Import::FlameStabilizer::ChannelBlock.new(io, name)
62
-
63
- assert_equal 0, c.length
64
- assert_in_delta 10.0, c.base_value, DELTA
65
- end
66
-
67
- def test_channel_block_for_channel_with_5_keyframes
68
- io = StringIO.new(BLOCK_WITH_KEYFRAMES)
69
- first_line = io.gets
70
- name = "foo/bar"
71
- c = Tracksperanto::Import::FlameStabilizer::ChannelBlock.new(io, name)
72
-
73
- assert_equal 5, c.length
74
-
75
- first_key = c[0]
76
- assert_in_delta 0.0, first_key[1], DELTA
77
- assert_equal 0, first_key[0]
78
-
79
- key_four = c[4]
80
- assert_not_nil key_four, "The last keyframe should not be nil"
81
-
82
- assert_in_delta -246.951, key_four[1], DELTA
83
- assert_equal 115, key_four[0]
84
- end
85
5
 
86
6
  def test_parsing_from_flame
87
7
  fixture = File.open(File.dirname(__FILE__) + '/samples/flame_stabilizer/hugeFlameSetup.stabilizer')
@@ -165,4 +85,12 @@ class FlameImportTest < Test::Unit::TestCase
165
85
  assert_equal 5, trackers.length
166
86
  assert_equal 61, trackers[0].length
167
87
  end
88
+
89
+ # a failing setup from flame 2012
90
+ def test_from_flame2012
91
+ fixture = File.open(File.dirname(__FILE__) + '/samples/flame_stabilizer/flame_2012_another.stabilizer')
92
+ trackers = Tracksperanto::Import::FlameStabilizer.new(:io => fixture).to_a
93
+ assert_equal 1, trackers.length
94
+ assert_equal 100, trackers[0].length
95
+ end
168
96
  end
data/test/test_cli.rb CHANGED
@@ -44,6 +44,20 @@ class CliTest < Test::Unit::TestCase
44
44
  assert_same_set fs, Dir.entries(TEMP_DIR)
45
45
  end
46
46
 
47
+ def test_cli_with_nonexisting_only_exporter_prints_proper_error_message
48
+ status, o, e = cli("--only microsoftfuckingword " + TEMP_DIR + "/flm.stabilizer")
49
+ assert_equal 2, status, "Should exit with abnormal state"
50
+ assert e.include?("Unknown exporter \"microsoftfuckingword\"")
51
+ assert e.include?("The following export modules are available")
52
+ end
53
+
54
+ def test_cli_with_nonexisting_importer_prints_proper_error_message
55
+ status, o, e = cli("--from microsoftfuckingword " + TEMP_DIR + "/flm.stabilizer")
56
+ assert_equal 2, status, "Should exit with abnormal state"
57
+ assert e.include?("Unknown importer \"microsoftfuckingword\"")
58
+ assert e.include?("The following import modules are available")
59
+ end
60
+
47
61
  def test_cli_with_only_option
48
62
  FileUtils.cp(File.dirname(__FILE__) + "/import/samples/flame_stabilizer/fromCombustion_fromMidClip_wSnap.stabilizer", TEMP_DIR + "/flm.stabilizer")
49
63
  cli("#{BIN_P} --only syntheyes #{TEMP_DIR}/flm.stabilizer")
@@ -64,7 +64,15 @@ class TracksperantoTest < Test::Unit::TestCase
64
64
  end
65
65
 
66
66
  def test_get_unknown_exporter_should_raise
67
- assert_raise(NameError) { Tracksperanto.get_exporter("foo") }
67
+ assert_raise(Tracksperanto::UnknownExporterError) { Tracksperanto.get_exporter("foo") }
68
68
  end
69
-
69
+
70
+ def test_get_unknown_importer_should_raise
71
+ assert_raise(Tracksperanto::UnknownImporterError) { Tracksperanto.get_importer("foo") }
72
+ end
73
+
74
+ def test_get_unknown_middleware_should_raise
75
+ assert_raise(Tracksperanto::UnknownMiddlewareError) { Tracksperanto.get_middleware("foo") }
76
+ end
77
+
70
78
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: tracksperanto
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 2.6.0
5
+ version: 2.6.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - Julik Tarkhanov
@@ -10,63 +10,74 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-07-11 00:00:00 Z
13
+ date: 2011-07-22 00:00:00 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
- name: progressbar
16
+ name: flame_channel_parser
17
17
  prerelease: false
18
18
  requirement: &id001 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
21
  - - ~>
22
22
  - !ruby/object:Gem::Version
23
- version: "0.9"
23
+ version: "2.1"
24
24
  type: :runtime
25
25
  version_requirements: *id001
26
26
  - !ruby/object:Gem::Dependency
27
- name: update_hints
27
+ name: progressbar
28
28
  prerelease: false
29
29
  requirement: &id002 !ruby/object:Gem::Requirement
30
30
  none: false
31
31
  requirements:
32
32
  - - ~>
33
33
  - !ruby/object:Gem::Version
34
- version: "1.0"
34
+ version: "0.9"
35
35
  type: :runtime
36
36
  version_requirements: *id002
37
37
  - !ruby/object:Gem::Dependency
38
- name: flexmock
38
+ name: update_hints
39
39
  prerelease: false
40
40
  requirement: &id003 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: "1.0"
46
+ type: :runtime
47
+ version_requirements: *id003
48
+ - !ruby/object:Gem::Dependency
49
+ name: flexmock
50
+ prerelease: false
51
+ requirement: &id004 !ruby/object:Gem::Requirement
41
52
  none: false
42
53
  requirements:
43
54
  - - ~>
44
55
  - !ruby/object:Gem::Version
45
56
  version: "0.8"
46
57
  type: :development
47
- version_requirements: *id003
58
+ version_requirements: *id004
48
59
  - !ruby/object:Gem::Dependency
49
60
  name: cli_test
50
61
  prerelease: false
51
- requirement: &id004 !ruby/object:Gem::Requirement
62
+ requirement: &id005 !ruby/object:Gem::Requirement
52
63
  none: false
53
64
  requirements:
54
65
  - - ~>
55
66
  - !ruby/object:Gem::Version
56
67
  version: "1.0"
57
68
  type: :development
58
- version_requirements: *id004
69
+ version_requirements: *id005
59
70
  - !ruby/object:Gem::Dependency
60
71
  name: hoe
61
72
  prerelease: false
62
- requirement: &id005 !ruby/object:Gem::Requirement
73
+ requirement: &id006 !ruby/object:Gem::Requirement
63
74
  none: false
64
75
  requirements:
65
76
  - - ~>
66
77
  - !ruby/object:Gem::Version
67
78
  version: "2.10"
68
79
  type: :development
69
- version_requirements: *id005
80
+ version_requirements: *id006
70
81
  description: Tracksperanto is a universal 2D-track translator between many apps.
71
82
  email:
72
83
  - me@julik.nl
@@ -182,6 +193,7 @@ files:
182
193
  - test/import/samples/3de_v4/3de_export_cube.txt
183
194
  - test/import/samples/boujou_features_text/boujou_txt_export.txt
184
195
  - test/import/samples/flame_stabilizer/Flame_Stabilizer_2012.stabilizer
196
+ - test/import/samples/flame_stabilizer/flame_2012_another.stabilizer
185
197
  - test/import/samples/flame_stabilizer/fromCombustion_fromMidClip_wSnap.stabilizer
186
198
  - test/import/samples/flame_stabilizer/fromTracksperanto.stabilizer
187
199
  - test/import/samples/flame_stabilizer/hugeFlameSetup.stabilizer