blob: 2463e0eef00a14a32d3e4dc6cad5a9b9f400b866 [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include <memory>
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/gl/gl_version_info.h"
namespace gl {
TEST(GLVersionInfoTest, MajorMinorVersionTest) {
const char* version_str[] = {"4.3 (Core Profile) Mesa 11.2.0",
"4.5.0 NVIDIA 364.19",
"OpenGL ES 2.0 (ANGLE 2.1.0.cd1b12260360)",
"2.1 INTEL-10.6.33"};
const char* renderer_str[] = {NULL, NULL, NULL, NULL};
const char* extensions_str[] = {"extensions", "extensions",
"extensions", "extensions"};
unsigned expected_major[] = {4, 4, 2, 2};
unsigned expected_minor[] = {3, 5, 0, 1};
std::unique_ptr<GLVersionInfo> version_info;
for (unsigned i = 0; i < arraysize(version_str); i++) {
version_info.reset(new GLVersionInfo(version_str[i],
renderer_str[i], extensions_str[i]));
unsigned major, minor;
bool is_es, is_es2, is_es3;
version_info->ParseVersionString(version_str[i], &major, &minor,
&is_es, &is_es2, &is_es3);
EXPECT_EQ(major, expected_major[i]);
EXPECT_EQ(minor, expected_minor[i]);
}
}
}