예제 #1
0
        public void EtpUri_12_Can_Parse_Witsml_20_TrajectoryStation_Uri()
        {
            var uuid1       = Uuid();
            var uuid2       = Uuid();
            var contentType = "application/x-witsml+xml;version=2.0;type=part_TrajectoryStation";
            var uri         = new EtpUri($"eml:///witsml20.Trajectory({uuid1})/witsml20.TrajectoryStation({uuid2})");
            var ids         = uri.GetSegments().FirstOrDefault();

            Assert.IsTrue(uri.IsValid);
            Assert.AreEqual("TrajectoryStation", uri.ObjectType);
            Assert.AreEqual(contentType, uri.ContentType);
            Assert.AreEqual(uuid2, uri.ObjectId);
            Assert.AreEqual("2.0", uri.Version);

            Assert.IsNotNull(ids);
            Assert.AreEqual("Trajectory", ids.ObjectType);
            Assert.AreEqual(uuid1, ids.ObjectId);

            uri = new EtpUri($"eml:///witsml20.TrajectoryStation({uuid2})");

            Assert.IsTrue(uri.IsValid);
            Assert.AreEqual("TrajectoryStation", uri.ObjectType);
            Assert.AreEqual(contentType, uri.ContentType);
            Assert.AreEqual(uuid2, uri.ObjectId);
            Assert.AreEqual("2.0", uri.Version);
        }
예제 #2
0
        public void EtpUri_12_Template_Segments_Handled_Correctly()
        {
            var uuid  = Uuid();
            var uuid2 = Uuid();

            var uri      = new EtpUri($"eml:///dataspace(custom-database)/witsml14.well/witsml14.wellbore({uuid})/witsml14.log/witsml14.logCurveInfo({uuid2})");
            var segments = uri.GetSegments().ToList();

            Assert.AreEqual(null, segments[0].ObjectId);
            Assert.AreEqual(uuid, segments[1].ObjectId);
            Assert.AreEqual(null, segments[2].ObjectId);
            Assert.AreEqual(uuid2, segments[3].ObjectId);
        }
예제 #3
0
        public void EtpUri_12_Can_Parse_Witsml_20_Log_Channel_Uri()
        {
            var uuid = Uuid();
            var uri  = new EtpUri("eml:///witsml20.Log(" + uuid + ")/witsml20.Channel(ROPA)");
            var ids  = uri.GetSegments().FirstOrDefault();

            Assert.IsTrue(uri.IsValid);
            Assert.AreEqual("Channel", uri.ObjectType);
            Assert.AreEqual("ROPA", uri.ObjectId);
            Assert.AreEqual("2.0", uri.Version);

            Assert.IsNotNull(ids);
            Assert.AreEqual("Log", ids.ObjectType);
            Assert.AreEqual(uuid, ids.ObjectId);
        }