예제 #1
0
        public void TestNoResume()
        {
            var parsedResume = new ParsedResume {
                Id = Guid.NewGuid()
            };

            _parsedResumesCommand.CreateParsedResume(parsedResume);
            AssertParsedResume(parsedResume, _resumesQuery.GetParsedResume(parsedResume.Id));
        }
예제 #2
0
        public ActionResult Parse(Guid fileReferenceId)
        {
            Guid?parsedResumeId = null;

            try
            {
                // Load the resume.

                var fileReference = _filesQuery.GetFileReference(fileReferenceId);
                if (fileReference == null)
                {
                    return(JsonNotFound("file"));
                }

                var stream       = _filesQuery.OpenFile(fileReference);
                var parsedResume = _parseResumesCommand.ParseResume(stream, fileReference.FileName);

                // Save the parsed resume.

                _parsedResumesCommand.CreateParsedResume(parsedResume);
                parsedResumeId = parsedResume.Id;

                if (parsedResume.Resume == null || parsedResume.Resume.IsEmpty)
                {
                    throw new InvalidResumeException();
                }
            }
            catch (UserException ex)
            {
                ModelState.AddModelError(ex, new StandardErrorHandler());
            }

            return(Json(new JsonParsedResumeModel
            {
                Id = parsedResumeId,
            }));
        }