owner_tests.cpp revision bb169976da75c4c8a30b403ffc8ff887d72a75bf
1/////////////////////////////////////////////////////////////////////////////// 2// 3// Copyright (c) 2015 Microsoft Corporation. All rights reserved. 4// 5// This code is licensed under the MIT License (MIT). 6// 7// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 8// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 9// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 10// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 11// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 12// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 13// THE SOFTWARE. 14// 15/////////////////////////////////////////////////////////////////////////////// 16 17#include <UnitTest++/UnitTest++.h> 18#include <gsl.h> 19#include <functional> 20 21using namespace Guide; 22 23SUITE(owner_tests) 24{ 25 void f(int* i) 26 { 27 *i += 1; 28 } 29 30 TEST(basic_test) 31 { 32 owner<int*> p = new int(120); 33 CHECK(*p == 120); 34 f(p); 35 CHECK(*p == 121); 36 delete p; 37 } 38} 39 40int main(int, const char *[]) 41{ 42 return UnitTest::RunAllTests(); 43} 44