Exemplo n.º 1
0
        private SqlQuery BuildSqlQuery(IEnumerable <FilterCriteria> filters, DataSetSchema schema, string orderByColumn, string orderDirection,
                                       int pageNum, int pageSize)
        {
            orderDirection = orderDirection == "ASC" ? "ASC" : "DESC";

            var queryDetail = new SqlQuery();
            var parameters  = new List <SqlParameter>
            {
                new SqlParameter
                {
                    ParameterName = "@pageNum",
                    SqlDbType     = SqlDbType.Int,
                    Direction     = ParameterDirection.Input,
                    Value         = pageNum
                },
                new SqlParameter
                {
                    ParameterName = "@pageSize",
                    SqlDbType     = SqlDbType.Int,
                    Direction     = ParameterDirection.Input,
                    Value         = pageSize
                }
            };

            //get where clause
            var whereClause = GetWhereClause(filters, schema, parameters);

            var orderBy          = schema.Definition.ColumnSelectList.Contains(orderByColumn) ? orderByColumn : schema.Definition.DefaultSortColumn;
            var orderByDirection = orderDirection.ToUpper() == "ASC" ? "ASC" : "DESC";
            var sqlResults       = String.Format(@"DECLARE @lbound int,@ubound int,@recct int 
                                            SET @pageNum = ABS(@pageNum)
                                            SET @pageSize = ABS(@pageSize)
                                            IF @pageNum < 1 SET @pageNum = 1
                                            IF @pageSize < 1 SET @pageSize = 1
                                            SET @lbound = ((@pageNum - 1) * @pageSize)
                                            SET @ubound = @lbound + @pageSize + 1
                                            IF @lbound >= @recct BEGIN
                                              SET @ubound = @recct + 1
                                              SET @lbound = @ubound - (@pageSize + 1) 
                                            END
                                            SELECT {0} FROM(SELECT ROW_NUMBER() OVER(ORDER BY {4} {2}) AS row, * 
                                            FROM {1}{3}) AS tbl {5}",
                                                 schema.Definition.ColumnSelectList,
                                                 schema.Definition.TableName,
                                                 orderByDirection,
                                                 whereClause.Length > 0 ? String.Format(" Where {0}", whereClause) : "",
                                                 orderBy,
                                                 pageSize > 0 ? "WHERE row > @lbound AND row <  @ubound" : String.Format("ORDER BY {0} {1}", orderBy, orderByDirection));

            var sqlCount  = String.Format(@"SELECT COUNT(*) FROM {0} {1}", schema.Definition.TableName, whereClause.Length > 0 ? String.Format(" Where {0}", whereClause) : "");
            var sqlTotals = String.Format(@"SELECT Top 1 {0} FROM {1} {2}", schema.Definition.ColumnSumSql, schema.Definition.TableName, whereClause.Length > 0 ? String.Format(" Where {0}", whereClause) : "");

            queryDetail.Sql    = String.Format(@"{0} {1} {2}", sqlCount, sqlResults, sqlTotals);
            queryDetail.Params = parameters.ToArray();

            return(queryDetail);
        }
Exemplo n.º 2
0
      private void PopulateDsSchemaWithEsdValues(DataSetSchema schemaDetail)
      {
          var esdService = _esdFunctionService;  //new EsdFunctionService();

          //esdService.XmlContent = GetFunctionServicesXmlContentAndSaveToSession();

          //esdService.ProcessXmlContent();
          schemaDetail.EsdFunctions = esdService.GetFunctions();
          schemaDetail.EsdServices  = esdService.GetServices();
          schemaDetail.CurrentMappedEsdFunctionService = esdService.GetLinkedFunctionsServices(schemaDetail.Id).Select(x => x);
      }
        public void GetFeatured_returns_all_featured_orderedby_dateupdated_ascending()
        {
            //arrange
            var ds1 = new List <DataSetDetail>()
            {
                new DataSetDetail()
                {
                    DateUpdated = new DateTime(2011, 1, 1)
                }, new DataSetDetail()
                {
                    DateUpdated = new DateTime(2010, 1, 1)
                }
            };
            var schema1 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "category", IsDisabled = false
                }, DataSets = ds1, IsApproved = true, IsFeatured = true, DateUpdated = new DateTime(2000, 1, 1)
            };

            _repositoryDataSetSchema.Add(schema1);
            var schema2 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "category", IsDisabled = false
                }, DataSets = ds1, IsApproved = true, IsFeatured = true, DateUpdated = new DateTime(1998, 1, 1)
            };

            _repositoryDataSetSchema.Add(schema2);
            var schema3 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "categoryurl", IsDisabled = false
                }, DataSets = ds1, IsApproved = false, IsFeatured = true, DateUpdated = new DateTime(2001, 1, 1)
            };

            _repositoryDataSetSchema.Add(schema3);

            var sut = new DataSetSchemaService(_repositoryDataSetSchema, _dataSetSchemaDefinitionService,
                                               _repositoryDataSetDetail, _sqlTableUtility);
            //act
            var result = sut.GetFeatured();

            //assert
            Assert.AreEqual(new DateTime(1998, 1, 1), result[0].DateUpdated);
            //cleanup
            _repositoryDataSetSchema.Delete(schema1);
            _repositoryDataSetSchema.Delete(schema2);
            _repositoryDataSetSchema.Delete(schema3);
        }
        public void CheckOrderByDirection_when_order_direction_is_NOT_null_and_NOT_empty_returns_orderDirection()
        {
            //arrange
            var formatter = new SqlOrderByColumnAndDirectionFormatter();
            //action
            var orderdirection = "notEmpty";
            var schema         = new DataSetSchema();
            var result         = formatter.CheckOrderByDirection(schema, orderdirection);

            //assert
            Assert.AreEqual("notEmpty", result);
        }
Exemplo n.º 5
0
        private void SetViewBagValues(DataSetSchema schemaDetail)
        {
            ViewBag.Title            = String.Format("Download {0} - DataShare", schemaDetail.Title);
            ViewBag.SchemaTitle      = schemaDetail.Title;
            ViewBag.ShortDescription = schemaDetail.ShortDescription;

            //Remove all whitespace and make sure it's ok to pass this to js
            ViewBag.FullDescription = (schemaDetail.Description != null)
                                          ? schemaDetail.Description.RemoveWhiteSpaces().Replace("\"", "\'")
                                          : "";
            ViewBag.SchemaId       = schemaDetail.Id;
            ViewBag.IsExternalData = schemaDetail.IsExternalData;
        }
Exemplo n.º 6
0
        private ActionResult ReturnDownloadFile(string fileTitle, string schema, DataSetSchema schemaDetail, string downloadFormat)
        {
            var fileDetail = _dataSetDetailService.GetData(fileTitle, schema);

            if (fileDetail == null)
            {
                return(ReturnErrorView());
            }

            schemaDetail.Definition = schemaDetail.Definition ?? new DataSetSchemaDefinition();
            return(this.DownloadDataSet(downloadFormat, fileDetail, fileTitle,
                                        schemaDetail.Definition.Columns, _systemConfigurationService));
        }
        public void CheckOrderByDirection_when_schema_is_null_and_orderdirection_is_empty_returns_ASC()
        {
            //arrange
            var formatter = new SqlOrderByColumnAndDirectionFormatter();
            //action
            var           orderdirection = "";
            DataSetSchema schema         = null;

            var result = formatter.CheckOrderByDirection(schema, orderdirection);

            //assert
            Assert.AreEqual("ASC", result);
        }
Exemplo n.º 8
0
      private void SaveEsdLinks(DataSetSchema dsSchema)
      {
          var xlist = new List <string>();

          if (dsSchema.CurrentMappedEsdFunctionService != null)
          {
              foreach (var x in dsSchema.CurrentMappedEsdFunctionService)
              {
                  xlist.Add(Convert.ToString(x));
              }
          }

          _esdFunctionService.SaveLinkedFunctionServices(dsSchema.Id, xlist);
      }
Exemplo n.º 9
0
        public string CheckOrderByColumn(DataSetSchema schema, string orderByColumn)
        {
            if (string.IsNullOrEmpty(orderByColumn) && schema != null && schema.Definition != null)
            {
                return(schema.Definition.DefaultSortColumn);
            }

            if (!string.IsNullOrEmpty(orderByColumn) && !orderByColumn.StartsWith("["))
            {
                return(String.Format("[{0}]", orderByColumn));
            }

            return(orderByColumn);
        }
        CheckOrderByColumn_when_orderBycolumn_is_NOTnullOrEmpty_and_orderByColumn_does_not_startWith_bracket_returns_orderBy_enclosed_by_brackets
            ()
        {
            //arrange
            var    formatter     = new SqlOrderByColumnAndDirectionFormatter();
            string orderbyColumn = "col1";
            var    schema        = new DataSetSchema();
            //act
            var result = formatter.CheckOrderByColumn(schema, orderbyColumn);

            //assert
            Assert.AreEqual("[col1]", result);
            //clean up
        }
        CheckOrderByColumn_when_orderBycolumn_is_NOT_nullOrEmpty_and_orderByColumn_starts_with_and_datasetcolumns_are_empty_returns_orderBycolumn
            ()
        {
            //arrange
            var    formatter     = new SqlOrderByColumnAndDirectionFormatter();
            string orderbyColumn = "[col1_v2]";
            var    schema        = new DataSetSchema();
            //act
            var result = formatter.CheckOrderByColumn(schema, orderbyColumn);

            //assert
            Assert.AreEqual("[col1_v2]", result);
            //clean up
        }
        public void GetOverDue_returns_DataSetSchemaList_where_schema_is_online()
        {
            //arrange
            var ds1 = new List <DataSetDetail>()
            {
                new DataSetDetail()
                {
                    DateCreated = new DateTime(2011, 1, 1)
                }
            };
            var schema1 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "category", IsDisabled = false
                }, IsApproved = true, UploadFrequency = 0
            };

            _repositoryDataSetSchema.Add(schema1);
            var schema2 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "category", IsDisabled = false
                }, IsApproved = false, UploadFrequency = 1, DataSets = ds1
            };

            _repositoryDataSetSchema.Add(schema2);
            var schema3 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "category", IsDisabled = false
                }, IsApproved = true, UploadFrequency = 2, DataSets = ds1
            };

            _repositoryDataSetSchema.Add(schema3);
            var sut = new DataSetSchemaService(_repositoryDataSetSchema, _dataSetSchemaDefinitionService,
                                               _repositoryDataSetDetail, _sqlTableUtility);

            //act
            var result = sut.GetOverDue();

            //assert
            Assert.AreEqual(2, result[0].UploadFrequency);
            //cleanup
            _repositoryDataSetSchema.Delete(schema1);
            _repositoryDataSetSchema.Delete(schema2);
            _repositoryDataSetSchema.Delete(schema3);
        }
Exemplo n.º 13
0
        public string CheckOrderByDirection(DataSetSchema schema, string orderDirection)
        {
            if (!string.IsNullOrEmpty(orderDirection))
            {
                return(orderDirection);
            }

            if (schema != null && schema.Definition != null)
            {
                return(schema.Definition.DefaultSortColumnDirection);
            }

            return("ASC");
        }
Exemplo n.º 14
0
        Ajax_SearchSchema_when_numberToShow_is_null_use_settingsValue_from_config_file_returns_result_from_search_schema()
        {
            //arrange
            string category    = "";
            string schema      = "";
            int    currentPage = 1;

            string orderByColumn               = "";
            string orderByDirection            = "";
            IList <FilterCriteria> filter      = new List <FilterCriteria>();
            string        download             = "";
            bool          getVisualisationData = false;
            string        chartType            = "";
            string        xAxis             = "";
            string        yAxis             = "";
            int?          chartCurrentPage  = null;
            int?          chartNumberToShow = null;
            string        yAxisAggregate    = "";
            DataSetSchema schemaDetail      = new DataSetSchema()
            {
                Definition = new DataSetSchemaDefinition()
                {
                }
            };
            var mock = new Mock <IDataSetDetailService>();

            mock.Setup(x => x.SearchSchema(filter, schemaDetail, currentPage, 103, orderByColumn, orderByDirection, true)).Returns(new ViewControllerData()
            {
                DataGraph = "fromSearchSchema"
            });
            _datasetDetailService = mock.Object;

            var mock2 = new Mock <IDataSetSchemaService>();

            mock2.Setup(x => x.Get(schema)).Returns(schemaDetail);
            _dataSchemaService = mock2.Object;

            var sut = new ViewController(_dataSchemaService, _datasetDetailService, _categoryService, _sysConfigService);
            //action

            var result = (JsonNetResult)sut.Ajax(category, schema, currentPage, null, orderByColumn, orderByDirection, filter,
                                                 download, getVisualisationData, chartType, xAxis, yAxis, chartCurrentPage,
                                                 chartNumberToShow, yAxisAggregate);
            var unboxedResult = (ViewControllerData)result.Data;

            //assert
            Assert.AreEqual(unboxedResult.DataGraph, "fromSearchSchema");
            //cleanup
        }
Exemplo n.º 15
0
        private ActionResult ReturnDownloadCsvData(IList <FilterCriteria> filter,
                                                   DataSetSchema schemaDetail, string orderByColumn, string orderByDirection)
        {
            var results = _dataSetDetailService.SearchSchema(filter,
                                                             schemaDetail,
                                                             orderByColumn,
                                                             orderByDirection);
            var csv = results.Data.AppendBody(_systemConfigurationService)
                      .ToCsv(",",
                             schemaDetail.Definition == null
                                        ? new List <DataSetSchemaColumn>()
                                        : schemaDetail.Definition.Columns);

            return(new CsvResult(csv, schemaDetail.FriendlyUrl));
        }
        public void GetOverDue_returns_DataSetSchemaList_where_lastuploadeddate_lessthan_overdue_date_and_date_last_reminded_is_lessthan_overdue_date()
        {
            //arrange
            var ds1 = new List <DataSetDetail>()
            {
                new DataSetDetail()
                {
                    DateCreated = DateTime.Now.AddDays(-4)
                }
            };                                                                                                      // overdue date is alway -3 ( so this is not overdue)
            var schema1 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "category", IsDisabled = false
                }, IsApproved = true, UploadFrequency = 1, DataSets = ds1
            };

            _repositoryDataSetSchema.Add(schema1);
            var ds2 = new List <DataSetDetail>()
            {
                new DataSetDetail()
                {
                    DateCreated = new DateTime(1998, 1, 1)
                }
            };
            var schema2 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "category", IsDisabled = false
                }, DateLastReminded = new DateTime(1998, 1, 1), IsApproved = true, UploadFrequency = 2, DataSets = ds2
            };

            _repositoryDataSetSchema.Add(schema2);

            var sut = new DataSetSchemaService(_repositoryDataSetSchema, _dataSetSchemaDefinitionService,
                                               _repositoryDataSetDetail, _sqlTableUtility);
            //act
            var result = sut.GetOverDue();

            //assert
            Assert.AreEqual(2, result[0].UploadFrequency);
            //cleanup
            _repositoryDataSetSchema.Delete(schema1);
            _repositoryDataSetSchema.Delete(schema2);
        }
        public void CheckOrderByDirection_when_schema_is_not_null_and_definition_is_not_null_and_schema_definition_columns_is_null_returns_ASC()
        {
            //arrange
            var formatter = new SqlOrderByColumnAndDirectionFormatter();
            //action
            var orderdirection = "";
            var schema         = new DataSetSchema()
            {
                Definition = new DataSetSchemaDefinition()
                {
                }
            };
            var result = formatter.CheckOrderByDirection(schema, orderdirection);

            //assert
            Assert.AreEqual("ASC", result);
        }
Exemplo n.º 18
0
        public DataSetSchema AnalyzeFileDiskAction(int id)
        {
            APIRequest    source = db.APIRequests.Find(id);
            DataSetSchema schema = null;

            try
            {
                int    year         = (source.sampleYear != null)? (int)source.sampleYear:0;
                int    month        = (source.sampleMonth != null) ? (int)source.sampleMonth : 0;
                int    weeky        = (source.sampleWeeky != null) ? (int)source.sampleWeeky : 0;
                int    day          = (source.sampleDay != null) ? (int)source.sampleDay : 0;
                string url          = apiCaller.replaceURIPlaceHolders(source.url, year, month, weeky, day);
                string safeFileName = url.Replace('/', '_').Replace(':', '_').TrimStart().TrimEnd();

                string downloadedFilePath = HttpContext.Server.MapPath("~/App_Data/" + safeFileName);



                source.onDisk = "N/A";
                bool fileExists = System.IO.File.Exists(downloadedFilePath);

                if (System.IO.File.Exists(downloadedFilePath))
                {
                    var fileModel = apiCaller.AnalyzeFileOnDisk(safeFileName);

                    long length = new System.IO.FileInfo(downloadedFilePath).Length;

                    var dataset = Microsoft.Research.Science.Data.DataSet.Open(downloadedFilePath);
                    schema = dataset.GetSchema();
                    if (schema.Variables.Length > 1)
                    {
                        source.onDisk   = "OK";
                        source.fileSize = (int)length / 1000000;
                        source.schema   = fileModel.schema;
                    }
                }
            }
            catch (Exception e)
            {
                source.onDisk = "Error: " + e.Message;
            }

            db.Entry(source).State = System.Data.EntityState.Modified;
            db.SaveChanges();
            return(schema);
        }
Exemplo n.º 19
0
        public void Get_when_schema_definition_columns_is_null_exist_throws_argumentnullexception()
        {
            //arrange
            var cat = new DataSetSchema()
            {
                Title = "schemaname", Definition = new DataSetSchemaDefinition(), Category = new Category()
                {
                    Title = "categoryname"
                }
            };

            _repositoryDataSetSchema.Add(cat);
            var service = new DataSetSchemaColumnService(_repositoryDataSetSchemaColumn, _repositoryDataSetSchema, _sqlrepo);
            //act
            var result = service.Get("categoryname", "schemaname", "columnname");
            //assert - no need to assert as throwing error
            //cleanup
        }
Exemplo n.º 20
0
        VisualiseSchema_will_return_type_of_view_controller_data()
        {
            //arrange
            IList <FilterCriteria> filter = null;
            DataSetSchema          schema = null;
            int    pageNumber             = 0;
            int    pageSize       = 0;
            string chartType      = null;
            string xAxis          = null;
            string yAxis          = null;
            string yAxisAggregate = null;
            var    sut            = new DataSetDetailService(_systemConfigurationService, _repositoryDataSetDetail, _dataSetSchemaService, _sqlRepo, _sqlColumnTextFormatter);
            //act
            var result = sut.VisualiseSchema(filter, schema, pageNumber, pageSize, chartType, xAxis, yAxis, yAxisAggregate);

            //assert
            Assert.AreEqual(typeof(ViewControllerData), result.GetType());
        }
        public void GetFeatured_returns_all_is_featured()
        {
            //arrange
            var ds1 = new List <DataSetDetail>()
            {
                new DataSetDetail()
                {
                    DateUpdated = new DateTime(2011, 1, 1)
                }, new DataSetDetail()
                {
                    DateUpdated = new DateTime(2010, 1, 1)
                }
            };
            var schema1 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "category", IsDisabled = false
                }, Title = "btitle", DataSets = ds1, IsApproved = true, IsFeatured = false
            };

            _repositoryDataSetSchema.Add(schema1);
            //this is featured.
            var schema2 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "category", IsDisabled = false
                }, Title = "atitle", DataSets = ds1, IsApproved = true, IsFeatured = true
            };

            _repositoryDataSetSchema.Add(schema2);
            var sut = new DataSetSchemaService(_repositoryDataSetSchema, _dataSetSchemaDefinitionService,
                                               _repositoryDataSetDetail, _sqlTableUtility);
            //act
            var result = sut.GetFeatured();

            //assert
            Assert.AreEqual(1, result.Count);
            //cleanup
            _repositoryDataSetSchema.Delete(schema1);
            _repositoryDataSetSchema.Delete(schema2);
        }
        public void Get_when_friendlyurl_is_found_return_datasetschema()
        {
            //arrange
            var schema1 = new DataSetSchema()
            {
                Id = 1, Title = "friendlyurl"
            };

            _repositoryDataSetSchema.Add(schema1);
            var sut = new DataSetSchemaService(_repositoryDataSetSchema, _dataSetSchemaDefinitionService,
                                               _repositoryDataSetDetail, _sqlTableUtility);
            //act
            var result = sut.Get("friendlyurl");

            //assert
            Assert.AreEqual(1, result.Id);
            //cleanup
            _repositoryDataSetSchema.Delete(schema1);
        }
        public void GetByFriendlyUrl_show_all_is_false_return_only_online_schema_with_datasetdetail_ordered_by_desc_dateupdated()
        {
            //arrange
            var ds1 = new List <DataSetDetail>()
            {
                new DataSetDetail()
                {
                    DateUpdated = new DateTime(2011, 1, 1)
                }
                , new DataSetDetail()
                {
                    DateUpdated = new DateTime(2010, 1, 1)
                }
            };
            var schema1 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "categoryurl", IsDisabled = false
                }, Title = "schemaurl", DataSets = ds1, IsApproved = true
            };
            var ds2     = new List <DataSetDetail>();
            var schema2 = new DataSetSchema()
            {
                Category = new Category()
                {
                    Title = "categoryurl"
                }, Title = "schemaurl", IsDisabled = true, DataSets = ds2
            };

            _repositoryDataSetSchema.Add(schema1);
            _repositoryDataSetSchema.Add(schema2);
            var sut = new DataSetSchemaService(_repositoryDataSetSchema, _dataSetSchemaDefinitionService,
                                               _repositoryDataSetDetail, _sqlTableUtility);
            //act
            var result = sut.GetByFriendlyUrl("categoryurl", "schemaurl", false);

            //assert
            Assert.AreEqual(new DateTime(2011, 1, 1), result[0].DateUpdated);
            //cleanup
            _repositoryDataSetSchema.Delete(schema1);
            _repositoryDataSetSchema.Delete(schema2);
        }
Exemplo n.º 24
0
        public void Index_when_schema_is_not_null_and_schema_detail_is_not_null_and_schema_is_not_online_and_preview_is_not_true_returns_partial_view_offline()
        {
            //arrange
            var schema       = "schemanotNull";
            var schemaDetail = new DataSetSchema();
            var mock         = new Mock <IDataSetSchemaService>();

            mock.Setup(x => x.Get(schema)).Returns(schemaDetail);
            _dataSchemaService = mock.Object;
            var sut = new ViewController(_dataSchemaService, _datasetDetailService, _categoryService, _sysConfigService);
            //action
            var filter = new List <FilterCriteria>();
            var result = (PartialViewResult)sut.Index("category", schema, 1, 1, "", "", filter, "", "previewNotTrue");

            //assert
            Assert.AreEqual("Offline", result.ViewName);
            //cleanup
            _dataSchemaService = null;
        }
Exemplo n.º 25
0
        public void Save(DataSetSchema schemaData)
        {
            var schema = _repository.GetQuery().FirstOrDefault(s => s.Id == schemaData.Id);

            schema.UploadFrequency             = schemaData.UploadFrequency;
            schema.OwnerEmail                  = schemaData.OwnerEmail;
            schema.Description                 = schemaData.Description;
            schema.IsExternalData              = schemaData.IsExternalData;
            schema.IsFeatured                  = schemaData.IsFeatured;
            schema.IsAllDataOverwittenOnUpload = schemaData.IsAllDataOverwittenOnUpload;
            schema.ShortDescription            = schemaData.ShortDescription;

            if (String.IsNullOrEmpty(schema.SchemaDefinitionFromUrl))
            {
                schema.Title = schemaData.Title;
            }

            _repository.SaveChanges();
        }
Exemplo n.º 26
0
        ImportFromUrl_when_columnDefinitions_contains_publisherlabel_returns_importdatasetschemaresult_with_error_message_with_xml_schema_cannot_contain_reserved_columns()
        {
            //arrange
            var dschema = new DataSetSchema()
            {
                SchemaDefinitionFromUrl = "http://dummyurl"
            };
            var obj = new SchemaRestDefinition()
            {
                ErrorMessage = "",
                RestSchema   = new RestSchema()
                {
                },
                RestColumnDefinitions = new RestColumnDefinitions()
                {
                    ColumnDefinitions = new List <RestColumnDefinition>()
                    {
                        new RestColumnDefinition()
                        {
                            Name = "publisherLabel"
                        }
                    }
                }
            };
            var mock = new Mock <IXmlToObjectService>();

            mock.Setup(x => x.GetXmlFromUrl("http://dummyurl")).Returns("<SchemaRestDefinition></SchemaRestDefinition>");
            mock.Setup(x => x.ConvertXml <SchemaRestDefinition>("<SchemaRestDefinition></SchemaRestDefinition>"))
            .Returns(obj);
            _xmlToObjectService   = mock.Object;
            _dataSetSchemaService = new Mock <IDataSetSchemaService>().Object;
            var service = new DataShareSchemaImportService(_xmlToObjectService, _dataSetSchemaService,
                                                           _dataSetSchemaColumnService);

            //act
            var result = service.ImportFromUrl(dschema);

            //assert
            Assert.AreEqual("Error: Columns cannot contain reserved column names - PublisherUri/PublisherLabel/Publisher Uri/Publisher Label. http://dummyurl"
                            , result.ErrorMessage);
            //cleanup
            _xmlToObjectService = null;
        }
Exemplo n.º 27
0
        public void Index_when_schema_is_not_null_and_schema_detail_is_not_null_schema_is_online_Filter_has_value_and_Not_external_data_will_use_Search_schema_to_return_viewControllerData()
        {
            //arrange
            var schema       = "schemanotNull";
            var schemaDetail = new DataSetSchema()
            {
                IsDisabled = false, IsApproved = true, IsExternalData = false, Category = new Category()
                {
                    IsDisabled = false
                }
            };
            var filter = new List <FilterCriteria>()
            {
                new FilterCriteria()
                {
                }
            };

            var mock = new Mock <IDataSetSchemaService>();

            mock.Setup(x => x.Get(schema)).Returns(schemaDetail);
            _dataSchemaService = mock.Object;

            var mock2 = new Mock <IDataSetDetailService>();

            mock2.Setup(x => x.SearchSchema(filter, schemaDetail, 1, 1, "", "", true)).Returns(new ViewControllerData()
            {
                Count = 1234
            });
            _datasetDetailService = mock2.Object;
            var sut = new ViewController(_dataSchemaService, _datasetDetailService, _categoryService, _sysConfigService);
            //action

            var result = (ViewResult)sut.Index("category", schema, 1, 1, "", "", filter, "", "");
            var model  = (ViewControllerData)result.Model;

            //assert
            Assert.AreEqual(1234, model.Count);
            //cleanup
            _dataSchemaService    = null;
            _datasetDetailService = null;
        }
        public void Create_when_schema_is_externaldata_will_save_in_schema_definition_in_repository()
        {
            //arrange

            var schematoAdd = new DataSetSchema()
            {
                Id = 10, Title = "sampletitle", IsExternalData = true
            };
            var sut = new DataSetSchemaService(_repositoryDataSetSchema, _dataSetSchemaDefinitionService,
                                               _repositoryDataSetDetail, _sqlTableUtility);

            //act
            sut.Create(schematoAdd);
            var result = _repositoryDataSetSchema.GetQuery().FirstOrDefault(x => x.Id == 10);

            //assert
            Assert.AreEqual("sampletitle", result.Title);
            //cleanup
            _repositoryDataSetSchema.Delete(schematoAdd);
        }
Exemplo n.º 29
0
        private InventoryDatasetResource[] GetResources(Category category, DataSetSchema dataSetSchema)
        {
            var xList = new List <InventoryDatasetResource>();

            if (dataSetSchema.DataSets == null)
            {
                return(xList.ToArray());
            }

            var datasets = dataSetSchema.DataSets.ToList();

            AddDocumentResource(ref xList, dataSetSchema, category);
            AddResource(ref xList, dataSetSchema, category, "csv", datasets, "download", "Download");
            AddResource(ref xList, dataSetSchema, category, "xml", datasets, "download", "Download");
            AddResource(ref xList, dataSetSchema, category, "json", datasets, "api", "Service");
            AddResource(ref xList, dataSetSchema, category, "xml", datasets, "api", "Service");


            return(xList.ToArray());
        }
Exemplo n.º 30
0
        public void LoadList_When_schema_is_not_null_and_schemadetail_is_null_returns_view_error()
        {
            //arrange
            DataSetSchema nullobj = null;
            var           mock    = new Mock <IDataSetSchemaService>();

            mock.Setup(x => x.Get("schema")).Returns(nullobj);
            _datasetschemaservice = mock.Object;

            _mockHttpContextBase.SetupGet(x => x.Response).Returns(_mockResponseBase.Object);
            var controller = new DownloadController(_datasetschemaservice, _datasetdetailservice, _categoryservice, _systemConfigurationService);

            controller.ControllerContext = new ControllerContext(_mockHttpContextBase.Object, new RouteData(), controller);

            //act
            var result = (ViewResult)controller.Index(null, "schema", null, null, null, null, null, null);

            //assert
            Assert.AreEqual("Error", result.ViewName);
            //cleanup
        }