public void TestCreateSparqlUpdateJob()
        {
            var request = JobRequestObject.CreateSparqlUpdateJob("expression");

            Assert.That(request, Has.Property("JobType").EqualTo("SparqlUpdate"));
            Assert.That(request, Has.Property("JobParameters").EqualTo(new Dictionary <string, string> {
                { "UpdateExpression", "expression" }
            }));

            Assert.That(() => JobRequestObject.CreateSparqlUpdateJob(null), Throws.TypeOf <ArgumentNullException>().With.Property("ParamName").EqualTo("updateExpression"));
            Assert.That(() => JobRequestObject.CreateSparqlUpdateJob(""), Throws.TypeOf <ArgumentException>().With.Property("ParamName").EqualTo("updateExpression"));
            Assert.That(() => JobRequestObject.CreateSparqlUpdateJob(" "), Throws.TypeOf <ArgumentException>().With.Property("ParamName").EqualTo("updateExpression"));
        }
示例#2
0
        public void TestCreateJobWithLabelInConstructor()
        {
            // Consolidate
            var consolidateRequest = JobRequestObject.CreateConsolidateJob(label: "ConsolidationJob");

            Assert.That(consolidateRequest, Has.Property("Label").EqualTo("ConsolidationJob"));
            // export
            var exportRequest = JobRequestObject.CreateExportJob("export.nt", label: "ExportJob");

            Assert.That(exportRequest, Has.Property("Label").EqualTo("ExportJob"));
            // import
            var importRequest = JobRequestObject.CreateImportJob("import.nt", label: "ImportJob");

            Assert.That(importRequest, Has.Property("Label").EqualTo("ImportJob"));
            // repeat transaction
            var repeatRequest = JobRequestObject.CreateRepeatTransactionJob(Guid.Empty, label: "RepeatJob");

            Assert.That(repeatRequest, Has.Property("Label").EqualTo("RepeatJob"));
            // Snapshot
            var snapshotRequest = JobRequestObject.CreateSnapshotJob("storeToSnapshot", PersistenceType.AppendOnly, label: "SnapshotJob");

            Assert.That(snapshotRequest, Has.Property("Label").EqualTo("SnapshotJob"));
            // Sparql Update
            var sparqlUpdateRequest = JobRequestObject.CreateSparqlUpdateJob("update expression", label: "SparqlUpdateJob");

            Assert.That(sparqlUpdateRequest, Has.Property("Label").EqualTo("SparqlUpdateJob"));
            // Transaction
            var transactionJob = JobRequestObject.CreateTransactionJob(
                new UpdateTransactionData
            {
                ExistencePreconditions    = "precon",
                NonexistencePreconditions = "nexist",
                DeletePatterns            = "delete",
                InsertData      = "insert",
                DefaultGraphUri = null,
            }, "TransactionJob");

            Assert.That(transactionJob, Has.Property("Label").EqualTo("TransactionJob"));
            // Update Statistics
            var updateStatsRequest = JobRequestObject.CreateUpdateStatsJob(label: "UpdateStats");

            Assert.That(updateStatsRequest, Has.Property("Label").EqualTo("UpdateStats"));
        }
示例#3
0
        public void TestPostSparqlUpdateJob()
        {
            // Setup
            var brightstar  = new Mock <IBrightstarService>();
            var mockJobInfo = new Mock <IJobInfo>();

            mockJobInfo.Setup(s => s.JobId).Returns("4567");
            brightstar.Setup(s => s.ExecuteUpdate("foo", "update expression", false)).Returns(mockJobInfo.Object).Verifiable();
            var app           = new Browser(new FakeNancyBootstrapper(brightstar.Object));
            var requestObject = JobRequestObject.CreateSparqlUpdateJob("update expression");

            // Execute
            var response = app.Post("/foo/jobs", with =>
            {
                with.Accept(MediaRange.FromString("application/json"));
                with.JsonBody(requestObject);
            });

            // Assert
            Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.Created));
            Assert.That(response.Headers["Location"], Is.EqualTo("foo/jobs/4567"));
            brightstar.Verify();
        }
示例#4
0
 public void TestPostSparqlUpdateJobRequiresSparqlUpdatePermissions()
 {
     AssertPermissionRequired(JobRequestObject.CreateSparqlUpdateJob("update expression"), StorePermissions.SparqlUpdate);
 }