public void WriteCredentials(IEnumerable <Credential> credentials)
        {
            foreach (var credential in credentials)
            {
                var    credentialJson = StorageJsonUtils.CredentialToJson(credential);
                string credentialPath = GetCredentialPath(credential);

                if (credential.CredentialType == CredentialType.OAuth2AccessToken)
                {
                    ReadModifyWrite(
                        credentialPath,
                        (fileContentJson) =>
                    {
                        AddAccessTokenWithScopes(fileContentJson, credentialJson);
                        return(fileContentJson);
                    });
                }
                else
                {
                    ReadModifyWrite(
                        credentialPath,
                        (fileContentJson) =>
                    {
                        JsonMerge(credentialJson, fileContentJson);
                        return(credentialJson);
                    });
                }
            }
        }
        private Credential EmplaceAccessToken(JObject j, HashSet <string> scopes)
        {
            string target = string.Join(" ", scopes);
            var    token  = MockTestConstants.GetAccessToken();

            token.Target = target;
            j[target]    = StorageJsonUtils.CredentialToJson(token);
            return(token);
        }
 private JObject GetAccessTokenJsonWithScopes(HashSet <string> scopes)
 {
     return(StorageJsonUtils.CredentialToJson(GetAccessTokenWithScopes(scopes)));
 }