You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/* * MinIO .NET Library for Amazon S3 Compatible Cloud Storage, * (C) 2019, 2020 MinIO, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0
* * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */
using System; using System.Net;
namespace Minio.Functional.Tests { class Program { public static void Main(string[] args) { string endPoint = null; string accessKey = null; string secretKey = null; string enableHttps = "0"; string kmsEnabled = "0";
bool useAWS = Environment.GetEnvironmentVariable("AWS_ENDPOINT") != null; if (Environment.GetEnvironmentVariable("SERVER_ENDPOINT") != null) { endPoint = Environment.GetEnvironmentVariable("SERVER_ENDPOINT"); accessKey = Environment.GetEnvironmentVariable("ACCESS_KEY"); secretKey = Environment.GetEnvironmentVariable("SECRET_KEY"); enableHttps = Environment.GetEnvironmentVariable("ENABLE_HTTPS"); kmsEnabled = Environment.GetEnvironmentVariable("ENABLE_KMS"); } else { endPoint = "play.min.io"; accessKey = "Q3AM3UQ867SPQQA43P2F"; secretKey = "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG"; enableHttps = "1"; kmsEnabled = "1"; }
MinioClient minioClient = null; if (enableHttps == "1") // WithSSL() enables SSL support in MinIO client
minioClient = new MinioClient(endPoint, accessKey, secretKey).WithSSL(); else minioClient = new MinioClient(endPoint, accessKey, secretKey);
// Assign parameters before starting the test
string bucketName = FunctionalTest.GetRandomName(); string objectName = FunctionalTest.GetRandomName(); string destBucketName = FunctionalTest.GetRandomName(); string destObjectName = FunctionalTest.GetRandomName();
// Set app Info
minioClient.SetAppInfo("app-name", "app-version"); // Set HTTP Tracing On
// minioClient.SetTraceOn(new JsonNetLogger());
// Set HTTP Tracing Off
// minioClient.SetTraceOff();
string runMode = Environment.GetEnvironmentVariable("MINT_MODE");
if (!string.IsNullOrEmpty(runMode) && runMode == "core") { FunctionalTest.RunCoreTests(minioClient); Environment.Exit(0); }
FunctionalTest.ListenBucketNotificationsAsync_Test1(minioClient).Wait();
// Check if bucket exists
FunctionalTest.BucketExists_Test(minioClient).Wait();
// Create a new bucket
FunctionalTest.MakeBucket_Test1(minioClient).Wait(); FunctionalTest.MakeBucket_Test2(minioClient).Wait(); FunctionalTest.MakeBucket_Test5(minioClient).Wait();
if (useAWS) { FunctionalTest.MakeBucket_Test3(minioClient).Wait(); FunctionalTest.MakeBucket_Test4(minioClient).Wait(); }
// Test removal of bucket
FunctionalTest.RemoveBucket_Test1(minioClient).Wait();
// Test ListBuckets function
FunctionalTest.ListBuckets_Test(minioClient).Wait();
// Test Putobject function
FunctionalTest.PutObject_Test1(minioClient).Wait(); FunctionalTest.PutObject_Test2(minioClient).Wait(); FunctionalTest.PutObject_Test3(minioClient).Wait(); FunctionalTest.PutObject_Test4(minioClient).Wait(); FunctionalTest.PutObject_Test5(minioClient).Wait(); FunctionalTest.PutObject_Test6(minioClient).Wait(); FunctionalTest.PutObject_Test7(minioClient).Wait(); FunctionalTest.PutObject_Test8(minioClient).Wait();
// Test StatObject function
FunctionalTest.StatObject_Test1(minioClient).Wait();
// Test GetObjectAsync function
FunctionalTest.GetObject_Test1(minioClient).Wait(); FunctionalTest.GetObject_Test2(minioClient).Wait(); FunctionalTest.GetObject_Test3(minioClient).Wait();
// Test File GetObject and PutObject functions
FunctionalTest.FGetObject_Test1(minioClient).Wait(); // FIX=> FPutObject_Test1(minioClient).Wait();
FunctionalTest.FPutObject_Test2(minioClient).Wait();
// Test SelectObjectContentAsync function
FunctionalTest.SelectObjectContent_Test(minioClient).Wait();
// Test ListObjectAsync function
FunctionalTest.ListObjects_Test1(minioClient).Wait(); FunctionalTest.ListObjects_Test2(minioClient).Wait(); FunctionalTest.ListObjects_Test3(minioClient).Wait(); FunctionalTest.ListObjects_Test4(minioClient).Wait(); FunctionalTest.ListObjects_Test5(minioClient).Wait();
// Test RemoveObjectAsync function
FunctionalTest.RemoveObject_Test1(minioClient).Wait(); FunctionalTest.RemoveObjects_Test2(minioClient).Wait();
// Test CopyObjectAsync function
FunctionalTest.CopyObject_Test1(minioClient).Wait(); FunctionalTest.CopyObject_Test2(minioClient).Wait(); FunctionalTest.CopyObject_Test3(minioClient).Wait(); FunctionalTest.CopyObject_Test4(minioClient).Wait(); FunctionalTest.CopyObject_Test5(minioClient).Wait(); FunctionalTest.CopyObject_Test6(minioClient).Wait(); FunctionalTest.CopyObject_Test7(minioClient).Wait(); FunctionalTest.CopyObject_Test8(minioClient).Wait();
// Test SetPolicyAsync function
FunctionalTest.SetBucketPolicy_Test1(minioClient).Wait();
// Test Presigned Get/Put operations
FunctionalTest.PresignedGetObject_Test1(minioClient).Wait(); FunctionalTest.PresignedGetObject_Test2(minioClient).Wait(); FunctionalTest.PresignedGetObject_Test3(minioClient).Wait(); FunctionalTest.PresignedPutObject_Test1(minioClient).Wait(); FunctionalTest.PresignedPutObject_Test2(minioClient).Wait();
// Test incomplete uploads
FunctionalTest.ListIncompleteUpload_Test1(minioClient).Wait(); FunctionalTest.ListIncompleteUpload_Test2(minioClient).Wait(); FunctionalTest.ListIncompleteUpload_Test3(minioClient).Wait(); FunctionalTest.RemoveIncompleteUpload_Test(minioClient).Wait();
// Test GetBucket policy
FunctionalTest.GetBucketPolicy_Test1(minioClient).Wait();
// Test encryption
if (enableHttps == "1") { ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true; FunctionalTest.PutGetStatEncryptedObject_Test1(minioClient).Wait(); FunctionalTest.PutGetStatEncryptedObject_Test2(minioClient).Wait();
FunctionalTest.EncryptedCopyObject_Test1(minioClient).Wait(); FunctionalTest.EncryptedCopyObject_Test2(minioClient).Wait(); }
if (kmsEnabled != null && kmsEnabled == "1") { FunctionalTest.PutGetStatEncryptedObject_Test3(minioClient).Wait(); FunctionalTest.EncryptedCopyObject_Test3(minioClient).Wait(); FunctionalTest.EncryptedCopyObject_Test4(minioClient).Wait(); }
} } }
|