private void TestSSLCore(Action <FullSyncConfiguration> setupSecureConfig, bool openAsync)
        {
            SyncTestHelpers.RunRosTestAsync(async() =>
            {
                var user          = await SyncTestHelpers.GetUserAsync();
                const string path = "~/TestSSLCore";
                var realmUri      = SyncTestHelpers.RealmUri(path);
                var config        = new FullSyncConfiguration(realmUri, user);

                var secureRealmUri = SyncTestHelpers.SecureRealmUri(path);
                var secureConfig   = new FullSyncConfiguration(secureRealmUri, user, config.DatabasePath + "2");
                setupSecureConfig(secureConfig);

                using (var realm = GetRealm(config))
                {
                    realm.Write(() =>
                    {
                        realm.Add(new IntPrimaryKeyWithValueObject
                        {
                            Id          = 1,
                            StringValue = "some value"
                        });
                    });

                    await SyncTestHelpers.WaitForUploadAsync(realm);
                }

                using (var newRealm = await GetRealmAsync(secureConfig, openAsync))
                {
                    var items = newRealm.All <IntPrimaryKeyWithValueObject>();

                    Assert.That(items.Count(), Is.EqualTo(1));
                    Assert.That(items.Single().StringValue, Is.EqualTo("some value"));
                }
            });
        }