public static void Cleanup() { var bResult = CouchDbHelper.GetDbInformation().Result; // stop the web host webAppInstance.Dispose(); id3SvrProcess.Kill(); }
public static void Main() { Task.Run(async() => { // create DBs if they don't exist if (!await CouchDbHelper.GetDbInformation()) { await CouchDbHelper.CreateDbs(); } // create a basic master document with some dummy metadata var reference = await CouchDbHelper.InsertNewDocument(metadata: @"<xml><metadata value=""2""></metadata></xml>"); // reget the newly created document - with no rev var regetNewDocument = await CouchDbHelper.FindDocumentById(reference.Id); Console.WriteLine($"Reget new document: {regetNewDocument.DocumentId} {regetNewDocument.RevisionId} " + $"{regetNewDocument.DatabaseName} {regetNewDocument.Metadata} {regetNewDocument.Status}"); // reget the newly created document - with the revision var regetNewDocumentWithRev = await CouchDbHelper.FindDocumentById(reference.Id, reference.RevisionId); Console.WriteLine($"Reget new document with rev: {regetNewDocumentWithRev.DocumentId} {regetNewDocumentWithRev.RevisionId} " + $"{regetNewDocumentWithRev.DatabaseName} {regetNewDocumentWithRev.Metadata} {regetNewDocumentWithRev.Status}"); // populate a random buffer Random rand = new Random(); var buffer = new byte[100 * 100]; rand.NextBytes(buffer); // attach the buffer to the document var attachmentReference = await CouchDbHelper.AddAttachment(reference.Id, reference.RevisionId, "image", buffer); Console.WriteLine($"Attachment reference: {attachmentReference.Id} {attachmentReference.RevisionId}"); // reget the attached buffer var regetAttachmentBuffer = await CouchDbHelper.GetAttachmentForDoc(reference.Id, "image"); Console.WriteLine($"Reget attachment length: {regetAttachmentBuffer.Length}"); // compare reget buffer with original for (int n = 0; n < buffer.Length; n++) { System.Diagnostics.Trace.Assert(buffer[n] == regetAttachmentBuffer[n]); } Console.WriteLine("Successfully compared reget buffer with original"); }).Wait(); Console.ReadLine(); }
public void CreateAndGetMasterDocumentWithRev() { // create a basic master document with some dummy metadata string initMetadata = CreateRandomMetadata(); var reference = CouchDbHelper.InsertNewDocument(metadata: initMetadata).Result; Assert.IsNotNull(reference.Id); Assert.IsNotNull(reference.RevisionId); // reget the newly created document - with the revision var regetNewDocumentWithRev = CouchDbHelper.FindDocumentById(reference.Id, reference.RevisionId).Result; Console.WriteLine($"Reget new document with rev: {regetNewDocumentWithRev.DocumentId} {regetNewDocumentWithRev.RevisionId} " + $"{regetNewDocumentWithRev.DatabaseName} {regetNewDocumentWithRev.Metadata} {regetNewDocumentWithRev.Status}"); Assert.AreEqual(reference.Id, regetNewDocumentWithRev.DocumentId); Assert.AreEqual(reference.RevisionId, regetNewDocumentWithRev.RevisionId); Assert.AreEqual(initMetadata, regetNewDocumentWithRev.Metadata); }
public static void Initialize(TestContext ctx) { var id3SvrPath = ConfigurationManager.AppSettings["IdSvr3ConsoleExePath"]; id3SvrProcess = Process.Start(id3SvrPath); // start the web server string baseAddress = ConfigurationManager.AppSettings["CouchDbProxyBaseAddress"]; // Start OWIN host webAppInstance = WebApp.Start <Startup>(url: baseAddress); // create the db, if needed if (!CouchDbHelper.GetDbInformation().Result) { var bResult = CouchDbHelper.CreateDbs().Result; } }
public void CreateAndGetAttachment() { // create a basic master document with some dummy metadata string initMetadata = CreateRandomMetadata(); var reference = CouchDbHelper.InsertNewDocument(metadata: initMetadata).Result; Assert.IsNotNull(reference.Id); Assert.IsNotNull(reference.RevisionId); // populate a random buffer Random rand = new Random(); var buffer = new byte[100 * 100]; rand.NextBytes(buffer); // attach the buffer to the document var attachmentReference = CouchDbHelper.AddAttachment(reference.Id, reference.RevisionId, "image", buffer).Result; Assert.IsNotNull(attachmentReference.Id); Assert.IsNotNull(attachmentReference.RevisionId); Console.WriteLine($"Attachment reference: {attachmentReference.Id} {attachmentReference.RevisionId}"); // reget the attached buffer var regetAttachmentBuffer = CouchDbHelper.GetAttachmentForDoc(reference.Id, "image").Result; Assert.AreEqual(regetAttachmentBuffer.Length, buffer.Length); Console.WriteLine($"Reget attachment length: {regetAttachmentBuffer.Length}"); // compare reget buffer with original for (int n = 0; n < buffer.Length; n++) { Assert.AreEqual(regetAttachmentBuffer[n], buffer[n]); } Console.WriteLine("Successfully compared reget buffer with original"); }