1/* 2 * Copyright 2012 The LibYuv Project Authors. All rights reserved. 3 * 4 * Use of this source code is governed by a BSD-style license 5 * that can be found in the LICENSE file in the root of the source 6 * tree. An additional intellectual property rights grant can be found 7 * in the file PATENTS. All contributing project authors may 8 * be found in the AUTHORS file in the root of the source tree. 9 */ 10 11#include <stdlib.h> 12#include <string.h> 13 14#include "libyuv/basic_types.h" 15#include "libyuv/version.h" 16#include "../unit_test/unit_test.h" 17 18namespace libyuv { 19 20// Tests SVN version against include/libyuv/version.h 21// SVN version is bumped by documentation changes as well as code. 22// Although the versions should match, once checked in, a tolerance is allowed. 23TEST_F(libyuvTest, TestVersion) { 24 EXPECT_GE(LIBYUV_VERSION, 169); // 169 is first version to support version. 25 printf("LIBYUV_VERSION %d\n", LIBYUV_VERSION); 26#ifdef LIBYUV_SVNREVISION 27 const char *ver = strchr(LIBYUV_SVNREVISION, ':'); 28 if (ver) { 29 ++ver; 30 } else { 31 ver = LIBYUV_SVNREVISION; 32 } 33 int svn_revision = atoi(ver); // NOLINT 34 printf("LIBYUV_SVNREVISION %d\n", svn_revision); 35 EXPECT_NEAR(LIBYUV_VERSION, svn_revision, 3); // Allow version to be close. 36 if (LIBYUV_VERSION != svn_revision) { 37 printf("WARNING - Versions do not match.\n"); 38 } 39#endif 40} 41 42} // namespace libyuv 43