Esempio n. 1
0
        private static TableGroup ParseMetadataFromJson(string json, Uri baseUri)
        {
            var metadataParser = new JsonMetadataParser(new DefaultResolver(), baseUri ?? new Uri("http://localhost/example.json"));

            using var reader = new StringReader(json);
            return(metadataParser.Parse(reader));
        }
Esempio n. 2
0
        private static TableGroup ParseMetadata(string jsonPath, Uri baseUri)
        {
            var metadataParser = new JsonMetadataParser(new DefaultResolver(), baseUri ?? new Uri("http://localhost/example.json"));

            using var fileStream = File.OpenText(jsonPath);
            return(metadataParser.Parse(fileStream));
        }
Esempio n. 3
0
        public async void TestValidConversions(string tableMetadataPath, string csvFilePath,
                                               string expectedOutputGraphPath)
        {
            var metadataParser =
                new JsonMetadataParser(new DefaultResolver(), new Uri("http://example.org/metadata.json"));

            tableMetadataPath       = Path.Combine("data", tableMetadataPath);
            csvFilePath             = Path.Combine("data", csvFilePath);
            expectedOutputGraphPath = Path.Combine("data", expectedOutputGraphPath);
            TableGroup tableGroup;

            using (var metadataReader = File.OpenText(tableMetadataPath))
            {
                tableGroup = metadataParser.Parse(metadataReader);
            }

            tableGroup.Should().NotBeNull();
            tableGroup.Tables.Should().HaveCount(1);
            var tableMeta = tableGroup.Tables[0];

            tableMeta.Should().NotBeNull(because: "The metadata file should parse as table metadata");
            var outputGraph  = new Graph();
            var graphHandler = new GraphHandler(outputGraph);
            var resolverMock = new Mock <ITableResolver>();

            resolverMock.Setup(x => x.ResolveAsync(It.IsAny <Uri>())).Returns(Task.FromResult(File.OpenRead(csvFilePath) as Stream));
            var converter = new Converter(graphHandler, resolverMock.Object, ConverterMode.Minimal);
            await converter.ConvertAsync(tableMeta.Parent as TableGroup);

            converter.Errors.Count.Should().Be(0, "Expected 0 errors. Got {0}. Error listing is:\n{1}", converter.Errors.Count, string.Join("\n", converter.Errors));
            var turtleParser = new TurtleParser(TurtleSyntax.W3C);
            var expectGraph  = new Graph();

            turtleParser.Load(expectGraph, expectedOutputGraphPath);

            var diff       = new GraphDiff();
            var diffReport = diff.Difference(expectGraph, outputGraph);

            diffReport.AreEqual.Should().BeTrue("Graphs differ");
        }
Esempio n. 4
0
        private TableGroup ParseCsvMetadata(Uri baseUri, string metadata)
        {
            var parser = new JsonMetadataParser(_resolver, baseUri);

            return(parser.Parse(new StringReader(metadata)));
        }