Exemple #1
0
        public async Task Resolves_object_ensures_collection_retrieval()
        {
            Assert.False(Web.Lists.ServerObjectIsNull.HasValue);

            var ctx = Context.PushState(base.Web);

            var resolveCtx = new ClientObjectResolveContext(ctx);

            resolveCtx.Include <Web>(w => w.Lists.Include(l => l.ItemCount));

            var mr       = new ClientObjectManualResolver(() => resolveCtx);
            var resolver = mr.ResolveSingle(
                new ClientObjectContextStateResolveBuilder <Web>()
                );

            await ClientContext.ExecuteQueryAsync();

            var resolvedWeb = resolver.Value;

            Assert.True(resolvedWeb.Lists.ServerObjectIsNull.HasValue);
            Assert.False(resolvedWeb.Lists.ServerObjectIsNull.Value);
            Assert.NotEmpty(resolvedWeb.Lists);

            Assert.All(resolvedWeb.Lists,
                       list => Assert.True(
                           list.IsPropertyAvailable(l => l.ItemCount)
                           )
                       );
        }
        public async Task Resolves_object_ensures_collection_retrieval()
        {
            Assert.False(Web.Lists.ServerObjectIsNull.HasValue);

            var ctx = Context.PushState(base.Web);

            var resolveCtx = new ClientObjectResolveContext(ctx);
            resolveCtx.Include<Web>(w => w.Lists.Include(l => l.ItemCount));

            var mr = new ClientObjectManualResolver(() => resolveCtx);
            var resolver = mr.ResolveSingle(
                new ClientObjectContextStateResolveBuilder<Web>()
            );

            await ClientContext.ExecuteQueryAsync();

            var resolvedWeb = resolver.Value;

            Assert.True(resolvedWeb.Lists.ServerObjectIsNull.HasValue);
            Assert.False(resolvedWeb.Lists.ServerObjectIsNull.Value);
            Assert.NotEmpty(resolvedWeb.Lists);

            Assert.All(resolvedWeb.Lists,
                list => Assert.True(
                    list.IsPropertyAvailable(l => l.ItemCount)
                )
            );
        }
        protected override IEnumerable <List> CreateObjects(ClientObjectResolveContext context)
        {
            if (context == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(context));
            }

            return(Identifiers
                   .Cast <Int32>()
                   .Select(context.ProvisionerContext.Web.GetCatalog));
        }
        protected override IEnumerable <TermStore> CreateObjects(ClientObjectResolveContext context)
        {
            if (context == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(context));
            }

            return(ImmutableArray.Create(
                       context.ProvisionerContext.TaxonomySession.GetDefaultKeywordsTermStore()
                       ));
        }
        protected override void InitializeResolveContext(ClientObjectResolveContext context)
        {
            if (context == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(context));
            }

            context.Include <TermSet>(
                ts => ts.TermStore.Id
                );

            base.InitializeResolveContext(context);
        }
        protected override void InitializeResolveContext(ClientObjectResolveContext context)
        {
            if (context == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(context));
            }

            context.Include<ContentType>(
                ct => ct.StringId
            );

            base.InitializeResolveContext(context);
        }
        protected override void InitializeResolveContext(ClientObjectResolveContext context)
        {
            if (context == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(context));
            }

            context.Include <ContentType>(
                ct => ct.StringId
                );

            base.InitializeResolveContext(context);
        }
Exemple #8
0
        protected override IQueryable <List> CreateQuery(ClientObjectResolveContext context)
        {
            if (context == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(context));
            }

            // need to make sure at least one include is specified,
            // otherwise CSOM helpfully selects default properties
            // and crashes when running against v15

            return(context.ProvisionerContext.Web.Lists.Include(l => l.Id));
        }
Exemple #9
0
        protected override void InitializeResolveContext(ClientObjectResolveContext context)
        {
            if (context == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(context));
            }

            context.Include(
                Updater.GetRetrievals <TField>()
                );

            base.InitializeResolveContext(context);
        }
Exemple #10
0
        protected sealed override ResolveContext <HarshProvisionerContext> CreateResolveContext()
        {
            var ctx = new ClientObjectResolveContext(Context);

            InitializeResolveContext(ctx);

            var target = (ForwardTarget as HarshProvisioner);

            if (target != null)
            {
                target.InitializeResolveContext(ctx);
            }
            return(ctx);
        }
        protected override IQueryable <ContentType>[] CreateQueries(ClientObjectResolveContext context)
        {
            if (context == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(context));
            }

            return(new[]
            {
                // need to make sure at least one include is specified,
                // otherwise CSOM helpfully selects default properties
                // and crashes when running against v15

                context.ProvisionerContext.Web.ContentTypes.Include(ct => ct.StringId),
                context.ProvisionerContext.Web.AvailableContentTypes.Include(ct => ct.StringId),
            });
        }
Exemple #12
0
        protected override void InitializeResolveContext(ClientObjectResolveContext context)
        {
            if (context == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(context));
            }

            base.InitializeResolveContext(context);

            context.Include <Field>(
                f => f.Id
                );

            context.Include <FieldLink>(
                fl => fl.Id,
                fl => fl.Name
                );
        }
        public async Task Resolves_object_ensures_retrievals()
        {
            Assert.False(Web.IsPropertyAvailable(w => w.SiteLogoUrl));

            var ctx = Context.PushState(ClientContext.Web);

            var resolveCtx = new ClientObjectResolveContext(ctx);
            resolveCtx.Include<Web>(w => w.SiteLogoUrl);

            var mr = new ClientObjectManualResolver(() => resolveCtx);
            var resolver = mr.ResolveSingle(
                new ClientObjectContextStateResolveBuilder<Web>()
            );

            await ClientContext.ExecuteQueryAsync();
            var resolvedWeb = resolver.Value;

            Assert.True(resolvedWeb.IsPropertyAvailable(w => w.SiteLogoUrl));
        }
        protected override void InitializeResolveContext(ClientObjectResolveContext context)
        {
            if (context == null)
            {
                throw Logger.Fatal.ArgumentNull(nameof(context));
            }

            context.Load(Web, w => w.Id);

            context.Include <Field>(
                f => f.InternalName
                );

            context.Include <List>(
                list => list.Id
                );

            base.InitializeResolveContext(context);
        }
Exemple #15
0
        public async Task Resolves_object_ensures_retrievals()
        {
            Assert.False(Web.IsPropertyAvailable(w => w.SiteLogoUrl));

            var ctx = Context.PushState(ClientContext.Web);

            var resolveCtx = new ClientObjectResolveContext(ctx);

            resolveCtx.Include <Web>(w => w.SiteLogoUrl);

            var mr       = new ClientObjectManualResolver(() => resolveCtx);
            var resolver = mr.ResolveSingle(
                new ClientObjectContextStateResolveBuilder <Web>()
                );

            await ClientContext.ExecuteQueryAsync();

            var resolvedWeb = resolver.Value;

            Assert.True(resolvedWeb.IsPropertyAvailable(w => w.SiteLogoUrl));
        }
        public async Task Title_gets_resolved_with_InternalName()
        {
            var ctx = new ClientObjectResolveContext(Context);

            ctx.Include<Field>(
                f => f.InternalName,
                f => f.Description
            );

            Field = Resolve.Field().ById(HarshBuiltInFieldId.Title);

            Binder.Bind(this, () => ctx);

            await ctx.ProvisionerContext.ClientContext.ExecuteQueryAsync();

            var field = Field.Value;

            Assert.NotNull(field);
            Assert.True(field.IsPropertyAvailable(f => f.Description));
            Assert.True(field.IsPropertyAvailable(f => f.InternalName));
            Assert.Equal("Title", field.InternalName);
        }
        public async Task Title_gets_resolved_with_InternalName()
        {
            var ctx = new ClientObjectResolveContext(Context);

            ctx.Include <Field>(
                f => f.InternalName,
                f => f.Description
                );

            Field = Resolve.Field().ById(HarshBuiltInFieldId.Title);

            Binder.Bind(this, () => ctx);

            await ctx.ProvisionerContext.ClientContext.ExecuteQueryAsync();

            var field = Field.Value;

            Assert.NotNull(field);
            Assert.True(field.IsPropertyAvailable(f => f.Description));
            Assert.True(field.IsPropertyAvailable(f => f.InternalName));
            Assert.Equal("Title", field.InternalName);
        }
Exemple #18
0
 protected virtual void InitializeResolveContext(ClientObjectResolveContext context)
 {
 }