Skip to content

Commit e3fe7b5

Browse files
wchristiandevel-chm
authored andcommitted
add a test for the recent glew accessor functionality (#42)
1 parent 9dc3b72 commit e3fe7b5

File tree

1 file changed

+51
-0
lines changed

1 file changed

+51
-0
lines changed

t/02_glew_version_accessors.t

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
#! /usr/bin/perl
2+
3+
use strict;
4+
use warnings;
5+
use Test::More;
6+
use OpenGL::Modern ':all';
7+
use OpenGL::Modern::Helpers 'glGetVersion_p';
8+
9+
SKIP: {
10+
plan skip_all => "glewContext did not succeed, skipping live tests"
11+
if glewCreateContext() != GLEW_OK; # returns GL_TRUE or GL_FALSE
12+
13+
my $gI_status = ( done_glewInit() ) ? GLEW_OK() : glewInit(); # returns GLEW_OK or ???
14+
plan skip_all => "glewInit did not succeed, skipping live tests"
15+
if $gI_status != GLEW_OK;
16+
17+
my @version_pairs = (
18+
[ GLEW_VERSION_1_1, 1.1 ],
19+
[ GLEW_VERSION_1_2, 1.2 ],
20+
[ GLEW_VERSION_1_3, 1.3 ],
21+
[ GLEW_VERSION_1_4, 1.4 ],
22+
[ GLEW_VERSION_1_5, 1.5 ],
23+
[ GLEW_VERSION_2_0, 2.0 ],
24+
[ GLEW_VERSION_2_1, 2.1 ],
25+
[ GLEW_VERSION_3_0, 3.0 ],
26+
[ GLEW_VERSION_3_1, 3.1 ],
27+
[ GLEW_VERSION_3_2, 3.2 ],
28+
[ GLEW_VERSION_3_3, 3.3 ],
29+
[ GLEW_VERSION_4_0, 4.0 ],
30+
[ GLEW_VERSION_4_1, 4.1 ],
31+
[ GLEW_VERSION_4_2, 4.2 ],
32+
[ GLEW_VERSION_4_3, 4.3 ],
33+
[ GLEW_VERSION_4_4, 4.4 ],
34+
[ GLEW_VERSION_4_5, 4.5 ],
35+
);
36+
37+
my $version = glGetVersion_p;
38+
$_->[2] = $version >= $_->[1] ? 1 : 0 for @version_pairs;
39+
40+
local $TODO = "we're not quite sure yet what these do";
41+
42+
# presume all calls up to the gl version return 1
43+
is $_->[0], 1, sprintf "glew version %.1f reported as 1 for $version", $_->[1] #
44+
for grep $_->[1] <= $version, @version_pairs;
45+
46+
# ensure at least the results of functions above current version are defined
47+
ok defined( $_->[0] ), sprintf "glew version %.1f defined (value = $_->[0]) for $version", $_->[1] #
48+
for grep $_->[1] > $version, @version_pairs;
49+
50+
done_testing;
51+
}

0 commit comments

Comments
 (0)