Пример #1
0
        public void Setup()
        {
            _kayakoApiRequest        = new Mock <IKayakoApiRequest>();
            _knowledgebaseController = new KnowledgebaseController(_kayakoApiRequest.Object);

            _responseKnowledgebaseCategoryCollection = new KnowledgebaseCategoryCollection
            {
                new KnowledgebaseCategory(),
                new KnowledgebaseCategory()
            };

            _responseKnowledgebaseArticleCollection = new KnowledgebaseArticleCollection
            {
                new KnowledgebaseArticle(),
                new KnowledgebaseArticle()
            };

            _responseKnowledgebaseCommentCollection = new KnowledgebaseCommentCollection
            {
                new KnowledgebaseComment(),
                new KnowledgebaseComment()
            };

            _responseKnowledgebaseAttachmentCollection = new KnowledgebaseAttachmentCollection
            {
                new KnowledgebaseAttachment(),
                new KnowledgebaseAttachment()
            };
        }
        public void GetAllKnowledgebaseCategories()
        {
            KnowledgebaseCategoryCollection knowledgebaseCategories = TestSetup.KayakoApiService.Knowledgebase.GetKnowledgebaseCategories();

            Assert.IsNotNull(knowledgebaseCategories, "No knowledgebase categories were returned");
            Assert.IsNotEmpty(knowledgebaseCategories, "No knowledgebase categories were returned");
        }
Пример #3
0
        public KnowledgebaseCategory GetKnowledgebaseCategory(int knowledgebaseCategoryId)
        {
            string apiMethod = String.Format("{0}/{1}", KnowledgebaseCategoryBaseUrl, knowledgebaseCategoryId);

            KnowledgebaseCategoryCollection knowledgebaseCategories = Connector.ExecuteGet <KnowledgebaseCategoryCollection>(apiMethod);

            if (knowledgebaseCategories != null && knowledgebaseCategories.Count > 0)
            {
                return(knowledgebaseCategories[0]);
            }

            return(null);
        }
Пример #4
0
        public KnowledgebaseCategory CreateKnowledgebaseCategory(KnowledgebaseCategoryRequest knowledgebaseCategoryRequest)
        {
            RequestBodyBuilder parameters = PopulateRequestParameters(knowledgebaseCategoryRequest, RequestTypes.Create);

            KnowledgebaseCategoryCollection knowledgebaseCategories = Connector.ExecutePost <KnowledgebaseCategoryCollection>(KnowledgebaseCategoryBaseUrl, parameters.ToString());

            if (knowledgebaseCategories != null && knowledgebaseCategories.Count > 0)
            {
                return(knowledgebaseCategories[0]);
            }

            return(null);
        }
Пример #5
0
        public KnowledgebaseCategory UpdateKnowledgebaseCategory(KnowledgebaseCategoryRequest knowledgebaseCategoryRequest)
        {
            string             apiMethod  = String.Format("{0}/{1}", KnowledgebaseCategoryBaseUrl, knowledgebaseCategoryRequest.Id);
            RequestBodyBuilder parameters = PopulateRequestParameters(knowledgebaseCategoryRequest, RequestTypes.Update);

            KnowledgebaseCategoryCollection knowledgebaseCategories = Connector.ExecutePut <KnowledgebaseCategoryCollection>(apiMethod, parameters.ToString());

            if (knowledgebaseCategories != null && knowledgebaseCategories.Count > 0)
            {
                return(knowledgebaseCategories[0]);
            }

            return(null);
        }
        public void GetKnowledgebaseCategory()
        {
            KnowledgebaseCategoryCollection knowledgebaseCategories = TestSetup.KayakoApiService.Knowledgebase.GetKnowledgebaseCategories();

            Assert.IsNotNull(knowledgebaseCategories, "No knowledgebase categories were returned");
            Assert.IsNotEmpty(knowledgebaseCategories, "No knowledgebase categories were returned");

            KnowledgebaseCategory knowledgebaseCategoryToGet = knowledgebaseCategories[new Random().Next(knowledgebaseCategories.Count)];

            Trace.WriteLine("GetKnowledgebaseCategory using knowledgebase category id: " + knowledgebaseCategoryToGet.Id);

            KnowledgebaseCategory knowledgebaseCategory = TestSetup.KayakoApiService.Knowledgebase.GetKnowledgebaseCategory(knowledgebaseCategoryToGet.Id);

            AssertObjectXmlEqual(knowledgebaseCategory, knowledgebaseCategoryToGet);
        }
Пример #7
0
        public void KnowledgebaseCategoryCollectionDeserialization()
        {
            var knowledgebaseCategoryCollection = new KnowledgebaseCategoryCollection
            {
                new KnowledgebaseCategory
                {
                    Id = 70,
                    ParentKnowledgebaseCategoryId = 0,
                    StaffId               = 1,
                    Title                 = "category title",
                    TotalArticles         = 1,
                    CategoryType          = KnowledgebaseCategoryType.Inherit,
                    DisplayOrder          = 6,
                    AllowComments         = true,
                    UserVisibilityCustom  = false,
                    UserGroupIdList       = new[] { 1 },
                    StaffVisibilityCustom = false,
                    StaffGroupIdList      = new[] { 1 },
                    AllowRating           = true,
                    IsPublished           = true
                },
                new KnowledgebaseCategory
                {
                    Id = 79,
                    ParentKnowledgebaseCategoryId = 0,
                    StaffId               = 1,
                    Title                 = "The next one",
                    TotalArticles         = 6,
                    CategoryType          = KnowledgebaseCategoryType.Inherit,
                    DisplayOrder          = 7,
                    AllowComments         = true,
                    UserVisibilityCustom  = false,
                    UserGroupIdList       = new[] { 1 },
                    StaffVisibilityCustom = false,
                    StaffGroupIdList      = new[] { 1 },
                    AllowRating           = true,
                    IsPublished           = true
                }
            };

            var expectedKnowledgebaseCategoryCollection = XmlDataUtility.ReadFromFile <KnowledgebaseCategoryCollection>("TestData/KnowledgebaseCategoryCollection.xml");

            AssertUtility.ObjectsEqual(expectedKnowledgebaseCategoryCollection, knowledgebaseCategoryCollection);
        }
        public void KnowledgebaseCategoryCollectionDeserialization()
        {
            var knowledgebaseCategoryCollection = new KnowledgebaseCategoryCollection
                {
                    new KnowledgebaseCategory
                        {
                            Id = 70,
                            ParentKnowledgebaseCategoryId = 0,
                            StaffId = 1,
                            Title = "category title",
                            TotalArticles = 1,
                            CategoryType = KnowledgebaseCategoryType.Inherit,
                            DisplayOrder = 6,
                            AllowComments = true,
                            UserVisibilityCustom = false,
                            UserGroupIdList = new [] { 1 },
                            StaffVisibilityCustom = false,
                            StaffGroupIdList = new [] { 1 },
                            AllowRating = true,
                            IsPublished = true
                        },
                    new KnowledgebaseCategory
                        {
                            Id = 79,
                            ParentKnowledgebaseCategoryId = 0,
                            StaffId = 1,
                            Title = "The next one",
                            TotalArticles = 6,
                            CategoryType = KnowledgebaseCategoryType.Inherit,
                            DisplayOrder = 7,
                            AllowComments = true,
                            UserVisibilityCustom = false,
                            UserGroupIdList = new [] { 1 },
                            StaffVisibilityCustom = false,
                            StaffGroupIdList = new [] { 1 },
                            AllowRating = true,
                            IsPublished = true
                        }
                };

            var expectedKnowledgebaseCategoryCollection = XmlDataUtility.ReadFromFile<KnowledgebaseCategoryCollection>("TestData/KnowledgebaseCategoryCollection.xml");

            AssertUtility.ObjectsEqual(expectedKnowledgebaseCategoryCollection, knowledgebaseCategoryCollection);
        }
        public void Setup()
        {
            _kayakoApiRequest = new Mock<IKayakoApiRequest>();
            _knowledgebaseController = new KnowledgebaseController(_kayakoApiRequest.Object);

            _responseKnowledgebaseCategoryCollection = new KnowledgebaseCategoryCollection
                {
                    new KnowledgebaseCategory(),
                    new KnowledgebaseCategory()
                };

            _responseKnowledgebaseArticleCollection = new KnowledgebaseArticleCollection
                {
                    new KnowledgebaseArticle(),
                    new KnowledgebaseArticle()
                };

            _responseKnowledgebaseCommentCollection = new KnowledgebaseCommentCollection
                {
                    new KnowledgebaseComment(),
                    new KnowledgebaseComment()
                };

            _responseKnowledgebaseAttachmentCollection = new KnowledgebaseAttachmentCollection
                {
                    new KnowledgebaseAttachment(),
                    new KnowledgebaseAttachment()
                };
        }