/// <summary>
        /// Before Test
        /// </summary>
        /// <param name="key">Resource record Key</param>
        /// <param name="resourceId">Resource Type</param>
        /// <param name="parentId">Record Id</param>
        /// <param name="fields">Phase's fields</param>
        /// <param name="ids">Phase's ids</param>
        /// <returns></returns>
        internal static Func <ISession <PrivateAuthentication>, ITest, Task <IReadOnlyDictionary <object, List <PhaseEntryContent> > > > ReadPhases(object key, ResourceId resourceId, ulong parentId, List <string> fields, List <string> ids)
        {
            return(async(session, test) =>
            {
                Dictionary <object, List <PhaseEntryContent> > resultData = new Dictionary <object, List <PhaseEntryContent> >();
                var requestBuilder = GetPhaseEntryRequest.Builder();
                requestBuilder.AddResource((int)resourceId).AddParentId(parentId.ToString()).AddFields(fields).AddIds(ids);
                GetPhaseEntryResponse entries = await session.CallAsync(requestBuilder);

                resultData.Add(key, entries.PhaseEntryList);
                return resultData;
            });
        }
        internal static Func <ISession <PrivateAuthentication>, ITest, Task <IReadOnlyDictionary <object, List <PhaseEntryContent> > > > ReadPhases(Func <Dictionary <object, GetPhaseEntryRequest.IBuilderWithData> > requests)
        {
            return(async(session, test) =>
            {
                Dictionary <object, List <PhaseEntryContent> > resultData = new Dictionary <object, List <PhaseEntryContent> >();
                Dictionary <object, GetPhaseEntryRequest.IBuilderWithData> requestList = requests();
                foreach (var key in requestList.Keys)
                {
                    GetPhaseEntryResponse entries = await session.CallAsync(requestList[key]);

                    resultData.Add(key, entries.PhaseEntryList);
                }
                return resultData;
            });
        }