xref: /llvm-project/llvm/unittests/IR/CoreBindings.cpp (revision cb5b25c587833317fd0bb93daf702f4c47048fb1)
1*cb5b25c5SWenzel Jakob //===- llvm/unittest/IR/CoreBindings.cpp - Tests for C-API bindings -------===//
2*cb5b25c5SWenzel Jakob //
3*cb5b25c5SWenzel Jakob // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*cb5b25c5SWenzel Jakob // See https://llvm.org/LICENSE.txt for license information.
5*cb5b25c5SWenzel Jakob // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*cb5b25c5SWenzel Jakob //
7*cb5b25c5SWenzel Jakob //===----------------------------------------------------------------------===//
8*cb5b25c5SWenzel Jakob 
9*cb5b25c5SWenzel Jakob #include "llvm-c/Core.h"
10*cb5b25c5SWenzel Jakob #include "llvm/Config/llvm-config.h"
11*cb5b25c5SWenzel Jakob #include "gtest/gtest.h"
12*cb5b25c5SWenzel Jakob 
13*cb5b25c5SWenzel Jakob namespace {
14*cb5b25c5SWenzel Jakob 
TEST(CoreBindings,VersionTest)15*cb5b25c5SWenzel Jakob TEST(CoreBindings, VersionTest) {
16*cb5b25c5SWenzel Jakob   // Test ability to ignore output parameters
17*cb5b25c5SWenzel Jakob   LLVMGetVersion(nullptr, nullptr, nullptr);
18*cb5b25c5SWenzel Jakob 
19*cb5b25c5SWenzel Jakob   unsigned Major, Minor, Patch;
20*cb5b25c5SWenzel Jakob   LLVMGetVersion(&Major, &Minor, &Patch);
21*cb5b25c5SWenzel Jakob   EXPECT_EQ(Major, (unsigned)LLVM_VERSION_MAJOR);
22*cb5b25c5SWenzel Jakob   EXPECT_EQ(Minor, (unsigned)LLVM_VERSION_MINOR);
23*cb5b25c5SWenzel Jakob   EXPECT_EQ(Patch, (unsigned)LLVM_VERSION_PATCH);
24*cb5b25c5SWenzel Jakob }
25*cb5b25c5SWenzel Jakob 
26*cb5b25c5SWenzel Jakob } // end anonymous namespace
27