Beispiel #1
0
        public void PreviewEdgesReturnsErrorIfIdNullOrEmpty()
        {
            var id       = ObjectId.GenerateNewId().ToString();
            var model    = new GenerateMosaicModel();
            var response = model.PreviewEdges(MockMakerClient.Object, null, 50);

            Assert.IsFalse(String.IsNullOrEmpty(response.Error));
        }
Beispiel #2
0
        public void PreviewEdgesReturnsErrorIfReadProjectReturnsError()
        {
            var id              = ObjectId.GenerateNewId().ToString();
            var model           = new GenerateMosaicModel();
            var projectResponse = new ProjectResponse()
            {
                Error = "Error"
            };

            MockMakerClient.Setup(x => x.ReadProject(It.Is <string>(y => y.Equals(id)))).Returns(projectResponse);

            var response = model.PreviewEdges(MockMakerClient.Object, id, 50);

            Assert.IsFalse(String.IsNullOrEmpty(response.Error));
        }
Beispiel #3
0
        public void PreviewEdgesReturnsErrorIfThresholdIsAbove255()
        {
            var id              = ObjectId.GenerateNewId().ToString();
            var model           = new GenerateMosaicModel();
            var projectResponse = new ProjectResponse()
            {
                Project = new ProjectStructure()
                {
                    Id = id, LargeFileId = ObjectId.GenerateNewId().ToString()
                }
            };

            projectResponse.Project.SmallFileIds.Add("1");
            MockMakerClient.Setup(x => x.ReadProject(It.Is <string>(y => y.Equals(id)))).Returns(projectResponse);

            var response = model.PreviewEdges(MockMakerClient.Object, id, 256);

            Assert.IsFalse(String.IsNullOrEmpty(response.Error));
        }
        public ActionResult PreviewEdges(string id, int threshold)
        {
            var model    = new GenerateMosaicModel();
            var response = model.PreviewEdges(client, id, threshold);

            if (String.IsNullOrEmpty(response.Error))
            {
                // copy generated image to root directory to allow it display
                var image = new ViewImageModel(EDGE_IMAGE_LOCATION);
                image.CopyImage(response.Location);
                // update project status and store location
                var insertResponse = new EdgeFileModel().InsertEdgeFile(client, id, image.ImagePath);
                if (String.IsNullOrEmpty(insertResponse.Error))
                {
                    Response.StatusCode = (int)HttpStatusCode.OK;
                    return(Json(image.ImagePath));
                }
            }
            Response.StatusCode = (int)HttpStatusCode.BadRequest;
            return(Json(response.Error));
        }