texplay 0.3.1 → 0.3.3pre2

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/spec/image_spec.rb DELETED
@@ -1,7 +0,0 @@
1
- $LOAD_PATH.unshift File.join(File.expand_path(__FILE__), '..', 'lib','texplay')
2
-
3
- require 'texplay'
4
-
5
- describe Gosu::Image do
6
- it "should do all sorts of things"
7
- end
data/spec/texplay_spec.rb DELETED
@@ -1,80 +0,0 @@
1
- $LOAD_PATH.unshift File.join(File.expand_path(__FILE__), '..', 'lib','texplay')
2
-
3
- require 'texplay'
4
-
5
- describe TexPlay do
6
- before :each do
7
- @window = Gosu::Window.new(640, 480, false)
8
- end
9
-
10
- describe "#create_image" do
11
- it "should create a blank image of the correct size" do
12
- width, height = 30, 10
13
- image = described_class.create_image(@window, width, height)
14
-
15
- image.width.should == width
16
- image.height.should == height
17
-
18
- width.times do |x|
19
- height.times do |y|
20
- image.get_pixel(x, y).should == [0.0, 0.0, 0.0, 0.0]
21
- end
22
- end
23
- end
24
-
25
- it "should create a coloured image of the correct size" do
26
- width, height = 10, 30
27
- color = [1.0, 1.0, 0.0, 1.0]
28
- image = described_class.create_image(@window, width, height, :color => color)
29
-
30
- image.width.should == width
31
- image.height.should == height
32
-
33
- width.times do |x|
34
- height.times do |y|
35
- image.get_pixel(x, y).should == color
36
- end
37
- end
38
- end
39
-
40
- it "should raise an error if an image dimension is 0 or less" do
41
- lambda { described_class.create_image(@window, 0, 0)}.should raise_error ArgumentError
42
- end
43
-
44
- # TODO: Should probably be an ArgumentError.
45
- it "should raise an error if the image would be too large" do
46
- too_big = TexPlay::TP_MAX_QUAD_SIZE + 1
47
- [[too_big, 5], [10, too_big], [too_big, too_big]].each do |width, height|
48
- lambda { described_class.create_image(@window, width, height)}.should raise_error Exception
49
- end
50
- end
51
- end
52
-
53
- describe "#from_blob" do
54
- it "should create an image with the requested pixel data and size" do
55
- # 4 x 3, with columns of red, blue, green, transparent.
56
- gosu_colors = [[255, 0, 0, 255], [0, 255, 0, 255], [0, 0, 255, 255], [0, 0, 0, 0]]
57
- texplay_colors = gosu_colors.map {|a| a.map {|c| c / 255.0 } }
58
- width, height = gosu_colors.size, 3
59
-
60
- image = described_class.from_blob(@window, (gosu_colors * height).flatten.pack('C*'), width, height)
61
-
62
- image.width.should == width
63
- image.height.should == height
64
-
65
- texplay_colors.each_with_index do |color, x|
66
- 3.times do |y|
67
- image.get_pixel(x, y).should == color
68
- end
69
- end
70
- end
71
-
72
- it "should raise an error if the image size is not correct for the blob data" do
73
- lambda { described_class.from_blob(@window, [1, 1, 1, 1].pack("C*"), 2, 1) }.should raise_error ArgumentError
74
- end
75
-
76
- it "should raise an error if an image dimension is 0 or less" do
77
- lambda { described_class.from_blob(@window, '', 0, 0) }.should raise_error ArgumentError
78
- end
79
- end
80
- end