public void CreateFileTest() { FileInfo fileToUpload = new FileInfo(Path.GetTempFileName()); FileInfo downloadedFile = new System.IO.FileInfo(Path.GetTempFileName()); // Set the file size using (var fstream = fileToUpload.OpenWrite()) { fstream.SetLength(1024 * 1024 * 1); } dynamic ynode = (JsonConvert.DeserializeObject(yamlOptions) as dynamic); IClient sc = Blobstore.CreateClient("dav", ynode["blobstore"]["options"]); string objectId = sc.Create(fileToUpload); sc.Get(objectId, downloadedFile); Assert.IsTrue(fileToUpload.Length == downloadedFile.Length); fileToUpload.Delete(); downloadedFile.Delete(); //sc.Delete(objectId); }
public void InvalidDeleteTest() { dynamic ynode = (JsonConvert.DeserializeObject(yamlOptions) as dynamic); IClient sc = Blobstore.CreateClient("dav", ynode["blobstore"]["options"]); sc.Delete("test"); }
internal static void UnpackBlob(string blobstoreId, string checksum, string installPath) { Logger.Info("Retrieving blob: {0}", blobstoreId); IClient blobstoreClient = Blobstore.CreateClient(Config.BlobstoreProvider, Config.BlobstoreOptions); FileInfo fileInfo = new FileInfo(Path.Combine(Config.BaseDir, "data", "tmp", blobstoreId + ".tgz")); try { if (!Directory.Exists(fileInfo.Directory.ToString())) { Directory.CreateDirectory(fileInfo.Directory.ToString()); } blobstoreClient.Get(blobstoreId, fileInfo); string blobDataFile = fileInfo.FullName; Logger.Info("Done retrieving blob"); if (!Directory.Exists(installPath)) { Logger.Info("Creating ", installPath); Directory.CreateDirectory(installPath); } string blobSHA1; using (FileStream fs = fileInfo.Open(FileMode.Open)) { using (SHA1 sha = new SHA1CryptoServiceProvider()) { blobSHA1 = BitConverter.ToString(sha.ComputeHash(fs)).Replace("-", ""); } } if (String.Compare(blobSHA1, checksum, StringComparison.OrdinalIgnoreCase) != 0) { throw new MessageHandlerException(String.Format(CultureInfo.InvariantCulture, "Expected sha1: {0}, Downloaded sha1: {1}", checksum, blobSHA1)); } Logger.Debug("Extracting {0}", blobDataFile); FileArchive.UnzipFile(installPath, blobDataFile); Logger.Debug("Done extracting {0}", blobDataFile); File.Delete(fileInfo.FullName); } catch (Exception ex) { Logger.Error("Failure unpacking blob.", ex.ToString()); throw; } }
public void TC001_TestCompilePackage() { byte[] packageBits; using (var ms = new MemoryStream()) { Assembly.GetExecutingAssembly().GetManifestResourceStream(packageFile).CopyTo(ms); packageBits = ms.ToArray(); } //Arrange string fileContent = new StreamReader(Assembly.GetExecutingAssembly().GetManifestResourceStream(configFile)).ReadToEnd(); Config.Setup(JsonConvert.DeserializeObject(fileContent), false); //ConfigBlobStore Config.Configure = true; Config.BlobstoreProvider = Config.Settings["blobstore"]["provider"].Value; Config.BlobstoreOptions = Config.Settings["blobstore"]["options"]; IClient bclient = Blobstore.CreateClient(Config.BlobstoreProvider, Config.BlobstoreOptions); string packageId = bclient.Create(packageBits); //Act Handler.Start(); Thread.Sleep(6000); string requestMessage = "{\"method\":\"compile_package\",\"arguments\":[\"" + packageId + "\",\"60209d197f9f93a338c93af3228739cdfbd38992\",\"postgresql\",\"5.1\",{}],\"reply_to\":\"director.6d811790-5ceb-4251-93d8-5efa8bbf3bac.5de47a59-21ce-4db6-a7b9-5012a6cdf3bb\"}"; ManualResetEvent resposeReceived = new ManualResetEvent(false); string response = null; var natsClient = NatsClient.ReactorFactory.GetReactor(typeof(NatsClient.Reactor)); natsClient.Start(Config.MessageBus); natsClient.Subscribe("director.6d811790-5ceb-4251-93d8-5efa8bbf3bac.5de47a59-21ce-4db6-a7b9-5012a6cdf3bb", delegate(string msg, string reply, string subject) { response = msg; resposeReceived.Set(); }); natsClient.Publish("agent.07dcbefe-e4fc-48b9-97c1-1752d5c1b6df", new SimpleCallback(MessageCallback), requestMessage); resposeReceived.WaitOne(4000); Assert.AreNotEqual(response, null); bclient.Delete(packageId); }
[TestMethod] //todo: vladi: fix this test public void CreateContentTest() { dynamic ynode = (JsonConvert.DeserializeObject(yamlOptions) as dynamic); IClient sc = Blobstore.CreateClient("dav", ynode["blobstore"]["options"]); string objectId = sc.Create(content); string pulledContent = sc.Get(objectId); Assert.AreEqual(content, pulledContent); sc.Delete(objectId); }
private static string UploadTarball(string path) { Logger.Info("Uploading tarball"); string blobstoreId = null; try { dynamic bscOptions = Config.BlobstoreOptions; string bscProvider = Config.BlobstoreProvider; Logger.Info("Uploading tarball to blobstore"); IClient blobstore = Blobstore.CreateClient(bscProvider, bscOptions); blobstoreId = blobstore.Create(new FileInfo(path)); } catch (Exception e) { BaseMessage.ErrorHandler(String.Format(CultureInfo.InvariantCulture, "unable to upload logs to blobstore: {0}", e.Message)); } return(blobstoreId); }