Ejemplo n.º 1
0
        public void ShouldReturnPackagesWithTag()
        {
            CkanClient client = CkanApiHelper.GetCkanClient();

            PackageSearchParameters parameters = new PackageSearchParameters();

            parameters.Tags.Add("colorado");

            PackageSearchResponse <Package> response = client.SearchPackages <Package>(parameters);

            Assert.NotEmpty(response.Results);
        }
Ejemplo n.º 2
0
        public void ShouldReturnPackageIdsWithQuery()
        {
            CkanClient client = CkanApiHelper.GetCkanClient();

            PackageSearchParameters parameters = new PackageSearchParameters();

            parameters.Query = "bike";

            PackageSearchResponse <string> response = client.SearchPackages <string>(parameters);

            Assert.NotEmpty(response.Results);
        }
Ejemplo n.º 3
0
        public void ShouldReturnSinglePackagesWithQueryLimit()
        {
            CkanClient client = CkanApiHelper.GetCkanClient();

            PackageSearchParameters parameters = new PackageSearchParameters();

            parameters.Query  = "bike";
            parameters.Offset = 0;
            parameters.Limit  = 1;

            PackageSearchResponse <Package> response = client.SearchPackages <Package>(parameters);

            Assert.True(response.Results.Count == 1);
        }
Ejemplo n.º 4
0
        public void ShouldReturnPackagesWithGroup()
        {
            CkanClient client = CkanApiHelper.GetCkanClient();

            PackageSearchParameters parameters = new PackageSearchParameters();

            parameters.Groups.Add("arvada");

            PackageSearchResponse <Package> response = client.SearchPackages <Package>(parameters);

            Assert.NotEmpty(response.Results);

            foreach (var result in response.Results)
            {
                Assert.Contains <string>("arvada", result.Groups);
            }
        }
        /// <summary>
        /// Generates a trie of suggestions based on attributes of packages in the catalog
        /// </summary>
        /// <param name="client"></param>
        /// <param name="searchParameters"></param>
        /// <param name="cacheSettings"></param>
        /// <returns></returns>
        private static Trie GenerateTrie(CkanClient client, PackageSearchParameters searchParameters, CacheSettings cacheSettings)
        {
            // Create an empty trie
            Trie trie = new Trie();

            // Run the search to get all packages
            PackageSearchResponse <Package> response = client.SearchPackages <Package>(searchParameters, cacheSettings);

            // Add the entrys to the trie
            foreach (var package in response.Results)
            {
                // Add the package title
                trie.Add(package.Title);

                // Add the package tags (removing hyphens which represent spaces)
                foreach (var tag in package.Tags)
                {
                    trie.Add(tag.Replace("-", " "));
                }
            }

            return(trie);
        }
        /// <summary>
        /// Generates a trie of suggestions based on attributes of packages in the catalog
        /// </summary>
        /// <param name="client"></param>
        /// <param name="searchParameters"></param>
        /// <param name="cacheSettings"></param>
        /// <returns></returns>
        private static Trie GenerateTrie(CkanClient client, PackageSearchParameters searchParameters, CacheSettings cacheSettings)
        {
            // Create an empty trie
            Trie trie = new Trie();

            // Run the search to get all packages
            PackageSearchResponse<Package> response = client.SearchPackages<Package>(searchParameters, cacheSettings);

            // Add the entrys to the trie
            foreach (var package in response.Results)
	        {
                // Add the package title
                trie.Add(package.Title);

                // Add the package tags (removing hyphens which represent spaces)
                foreach (var tag in package.Tags)
                {
                    trie.Add(tag.Replace("-"," "));
                }
	        }

            return trie;
        }