133cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp/* 233cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp * Copyright 2012 The LibYuv Project Authors. All rights reserved. 333cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp * 433cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp * Use of this source code is governed by a BSD-style license 533cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp * that can be found in the LICENSE file in the root of the source 633cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp * tree. An additional intellectual property rights grant can be found 733cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp * in the file PATENTS. All contributing project authors may 833cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp * be found in the AUTHORS file in the root of the source tree. 933cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp */ 1033cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp 1133cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp#include <stdlib.h> 1233cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp#include <string.h> 1333cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp 1433cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp#include "libyuv/basic_types.h" 1533cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp#include "libyuv/version.h" 1633cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp#include "../unit_test/unit_test.h" 1733cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp 1833cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkampnamespace libyuv { 1933cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp 2033cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp// Tests SVN version against include/libyuv/version.h 2133cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp// SVN version is bumped by documentation changes as well as code. 2233cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp// Although the versions should match, once checked in, a tolerance is allowed. 2333cfdeb7b267ab635413797fffb046b73272f7ecHendrik DahlkampTEST_F(libyuvTest, TestVersion) { 2433cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp EXPECT_GE(LIBYUV_VERSION, 169); // 169 is first version to support version. 2533cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp printf("LIBYUV_VERSION %d\n", LIBYUV_VERSION); 2633cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp#ifdef LIBYUV_SVNREVISION 2733cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp const char *ver = strchr(LIBYUV_SVNREVISION, ':'); 2833cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp if (ver) { 2933cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp ++ver; 3033cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp } else { 3133cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp ver = LIBYUV_SVNREVISION; 3233cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp } 3333cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp int svn_revision = atoi(ver); // NOLINT 3433cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp printf("LIBYUV_SVNREVISION %d\n", svn_revision); 3533cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp EXPECT_NEAR(LIBYUV_VERSION, svn_revision, 3); // Allow version to be close. 3633cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp if (LIBYUV_VERSION != svn_revision) { 3733cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp printf("WARNING - Versions do not match.\n"); 3833cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp } 3933cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp#endif 4033cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp} 4133cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp 4233cfdeb7b267ab635413797fffb046b73272f7ecHendrik Dahlkamp} // namespace libyuv 43