1/* 2 * Copyright (c) 2012-2014 Apple Inc. All Rights Reserved. 3 * 4 * @APPLE_LICENSE_HEADER_START@ 5 * 6 * This file contains Original Code and/or Modifications of Original Code 7 * as defined in and that are subject to the Apple Public Source License 8 * Version 2.0 (the 'License'). You may not use this file except in 9 * compliance with the License. Please obtain a copy of the License at 10 * http://www.opensource.apple.com/apsl/ and read it before using this 11 * file. 12 * 13 * The Original Code and all software distributed under the License are 14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 18 * Please see the License for the specific language governing rights and 19 * limitations under the License. 20 * 21 * @APPLE_LICENSE_HEADER_END@ 22 */ 23 24 25#include "SOSCircle_regressions.h" 26 27#include "SOSRegressionUtilities.h" 28 29#include <SecureObjectSync/SOSCloudCircle.h> 30#include <utilities/SecCFWrappers.h> 31 32static const int kSOSCCTestCount = 6; // # of "ok"s in "tests" below 33static int kTestTestCount = kSOSCCTestCount; 34static void tests(void) 35{ 36 CFErrorRef error = NULL; 37 CFDataRef cfpassword = CFDataCreate(NULL, (uint8_t *) "FooFooFoo", 10); 38 39 ok(SOSCCSetUserCredentials(CFSTR("foo1"), cfpassword, &error), "Added Creds (%@)", error); 40 CFReleaseNull(error); 41 CFReleaseNull(cfpassword); 42 43 ok(SOSCCThisDeviceIsInCircle(&error) == kSOSCCCircleAbsent, "Circle Absent (%@)", error); 44 CFReleaseNull(error); 45 ok(SOSCCResetToOffering(&error), "SOSCCOfferPotentialCircle (%@)", error); 46 CFReleaseNull(error); 47 48 ok(SOSCCThisDeviceIsInCircle(&error) == kSOSCCInCircle, "Circle Absent (%@)", error); 49 CFReleaseNull(error); 50 ok(SOSCCRemoveThisDeviceFromCircle(&error), "Leaving (%@)", error); 51 CFReleaseNull(error); 52 53 ok(SOSCCThisDeviceIsInCircle(&error) == kSOSCCCircleAbsent, "Circle Absent (%@)", error); 54 CFReleaseNull(error); 55} 56 57int sc_41_cloudcircle(int argc, char *const *argv) 58{ 59 plan_tests(kTestTestCount); 60 61 tests(); 62 63 return 0; 64} 65