Ejemplo n.º 1
0
        public void ItGeneratesAValidPublisherIdentifier()
        {
            var s = new DataDockUriService("http://example.org/");

            s.GetRepositoryPublisherIdentifier("owner", "repo").Should()
            .Be("http://example.org/owner/repo/id/dataset/publisher");
        }
Ejemplo n.º 2
0
        public void ItGeneratesAValidDatasetIdentifier()
        {
            var s = new DataDockUriService("http://example.org/");

            s.GetDatasetIdentifier("owner", "repo", "data").Should()
            .Be("http://example.org/owner/repo/id/dataset/data");
        }
Ejemplo n.º 3
0
        public void BestLanguageMatchReturnsUnscopedLiteralWhenNoMatch(string json, string prefLang, string expect)
        {
            var uriService = new DataDockUriService("http://datadock.io/");
            var testModel  = new DatasetViewModel(uriService, new DatasetInfo {
                CsvwMetadata = JObject.Parse(json)
            }, prefLang);

            testModel.Title.Should().Be(expect);
        }
        public BaseDataDockRepositorySpec()
        {
            var runId = DateTime.UtcNow.Ticks.ToString();

            _testDir = Directory.CreateDirectory(runId);
            RepoPath = _testDir.FullName;

            QuinceStore = new MockQuinceStore();
            var quinceStoreFactory = new Mock <IQuinceStoreFactory>();

            quinceStoreFactory.Setup(x => x.MakeQuinceStore(RepoPath)).Returns(QuinceStore);
            FileGeneratorFactory = new Mock <IFileGeneratorFactory>();
            MockRdfFileGenerator = new Mock <ITripleCollectionHandler>();
            MockRdfFileGenerator.Setup(x => x.HandleTripleCollection(It.IsAny <IList <Triple> >())).Returns(true)
            .Verifiable();
            MockHtmlFileGenerator = new Mock <IResourceStatementHandler>();
            MockHtmlFileGenerator.Setup(x => x.HandleResource(
                                            It.IsAny <INode>(), It.IsAny <IList <Triple> >(), It.IsAny <IList <Triple> >()))
            .Returns(true);
            FileGeneratorFactory.Setup(x => x.MakeRdfFileGenerator(
                                           It.IsAny <IResourceFileMapper>(),
                                           It.IsAny <IEnumerable <Uri> >(), It.IsAny <IProgressLog>(), It.IsAny <int>()))
            .Returns(MockRdfFileGenerator.Object);
            FileGeneratorFactory.Setup(x => x.MakeHtmlFileGenerator(
                                           It.IsAny <IDataDockUriService>(),
                                           It.IsAny <IResourceFileMapper>(), It.IsAny <IViewEngine>(), It.IsAny <IProgressLog>(),
                                           It.IsAny <int>(),
                                           It.IsAny <Dictionary <string, object> >()))
            .Returns(MockHtmlFileGenerator.Object);
            MockProgressLog = new MockProgressLog();

            var uriService = new DataDockUriService("http://datadock.io/");

            BaseUri = new Uri("http://datadock.io/test/repo/");
            var rdfResourceMapper = new ResourceFileMapper(
                new ResourceMapEntry(new Uri(BaseUri, "id"), "data"));
            var htmlResourceMapper = new ResourceFileMapper(
                new ResourceMapEntry(new Uri(BaseUri, "id"), "doc"));


            Repo = new DataDockRepository(RepoPath, BaseUri, MockProgressLog,
                                          quinceStoreFactory.Object, FileGeneratorFactory.Object,
                                          rdfResourceMapper, htmlResourceMapper, uriService);
        }
Ejemplo n.º 5
0
        public void ItConvertsSubjectUrisToResourceUrls(string subjectIri, string fileSuffix, string expectUrl)
        {
            var s = new DataDockUriService("http://example.org/");

            s.GetSubjectDataUrl(subjectIri, fileSuffix).Should().Be(expectUrl);
        }
Ejemplo n.º 6
0
        public void ItGeneratesAValidDefinitionsGraphIdentifier()
        {
            var s = new DataDockUriService("http://example.org/");

            s.GetDefinitionsGraphIdentifier("owner", "repo").Should().Be("http://example.org/owner/repo/definitions");
        }
Ejemplo n.º 7
0
        public void ItGeneratesAValidMetadataGraphIdentifier()
        {
            var s = new DataDockUriService("http://example.org/");

            s.GetMetadataGraphIdentifier("owner", "repo").Should().Be("http://example.org/owner/repo/metadata");
        }
Ejemplo n.º 8
0
        public void ItGeneratesAValidIdentifierPrefix()
        {
            var s = new DataDockUriService("http://example.org/");

            s.GetIdentifierPrefix("owner", "repo").Should().Be("http://example.org/owner/repo/id/");
        }
Ejemplo n.º 9
0
        public void ItGeneratesAValidRepositoryBaseUri()
        {
            var s = new DataDockUriService("http://example.org");

            s.GetRepositoryUri("owner", "repo").Should().Be("http://example.org/owner/repo/");
        }
Ejemplo n.º 10
0
        public void ItDoesNotAddATrailingSlashToThePublishSiteIfOneWasProvidedInTheConstructor()
        {
            var s = new DataDockUriService("http://example.org/");

            s.PublishSite.Should().Be("http://example.org/");
        }
Ejemplo n.º 11
0
        public void ItAddsATrailingSlashToThePublishSite()
        {
            var s = new DataDockUriService("http://example.org");

            s.PublishSite.Should().Be("http://example.org/");
        }
Ejemplo n.º 12
0
        public void ItProvidesAValidIdentifierRegularExpression()
        {
            var s = new DataDockUriService("http://example.org/");

            s.IdentifierRegex.ToString().Should().Be("^http://example\\.org/([^/]+)/([^/]+)/id/(.*)");
        }