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.
163 lines
5.0 KiB
163 lines
5.0 KiB
/*
|
|
* MinIO .NET Library for Amazon S3 Compatible Cloud Storage, (C) 2017 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 Microsoft.VisualStudio.TestTools.UnitTesting;
|
|
using Minio.Exceptions;
|
|
using System;
|
|
using System.Net;
|
|
|
|
namespace Minio.Tests
|
|
{
|
|
/// <summary>
|
|
/// Summary description for UnitTest1
|
|
/// </summary>
|
|
[TestClass, Ignore("Class was previously skipped by unit tests.. See #211")]
|
|
public class UnitTest1
|
|
{
|
|
public UnitTest1()
|
|
{
|
|
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12
|
|
| SecurityProtocolType.Tls11
|
|
| SecurityProtocolType.Tls12;
|
|
var minio = new MinioClient("play.min.io",
|
|
"Q3AM3UQ867SPQQA43P2F",
|
|
"zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG");
|
|
}
|
|
|
|
private TestContext testContextInstance;
|
|
|
|
/// <summary>
|
|
///Gets or sets the test context which provides
|
|
///information about and functionality for the current test run.
|
|
///</summary>
|
|
public TestContext TestContext
|
|
{
|
|
get
|
|
{
|
|
return testContextInstance;
|
|
}
|
|
set
|
|
{
|
|
testContextInstance = value;
|
|
}
|
|
}
|
|
|
|
#region Additional test attributes
|
|
//
|
|
// You can use the following additional attributes as you write your tests:
|
|
//
|
|
// Use ClassInitialize to run code before running the first test in the class
|
|
// [ClassInitialize()]
|
|
// public static void MyClassInitialize(TestContext testContext) { }
|
|
//
|
|
// Use ClassCleanup to run code after all tests in a class have run
|
|
// [ClassCleanup()]
|
|
// public static void MyClassCleanup() { }
|
|
//
|
|
// Use TestInitialize to run code before running each test
|
|
// [TestInitialize()]
|
|
// public void MyTestInitialize() { }
|
|
//
|
|
// Use TestCleanup to run code after each test has run
|
|
// [TestCleanup()]
|
|
// public void MyTestCleanup() { }
|
|
//
|
|
#endregion
|
|
|
|
[TestMethod]
|
|
public void TestWithUrl()
|
|
{
|
|
new MinioClient(endpoint:"http://localhost:9000");
|
|
}
|
|
|
|
[TestMethod]
|
|
public void TestWithoutPort()
|
|
{
|
|
new MinioClient("http://localhost");
|
|
}
|
|
|
|
[TestMethod]
|
|
public void TestWithTrailingSlash()
|
|
{
|
|
new MinioClient("http://localhost:9000/");
|
|
}
|
|
|
|
[TestMethod]
|
|
[ExpectedException(typeof(InvalidEndpointException))]
|
|
public void TestUrlFailsWithMalformedScheme()
|
|
{
|
|
new MinioClient("htp://localhost:9000");
|
|
}
|
|
|
|
[TestMethod]
|
|
[ExpectedException(typeof(InvalidEndpointException))]
|
|
public void TestUrlFailsWithPath()
|
|
{
|
|
new MinioClient("http://localhost:9000/foo");
|
|
}
|
|
|
|
[TestMethod]
|
|
[ExpectedException(typeof(InvalidEndpointException))]
|
|
public void TestUrlFailsWithQuery()
|
|
{
|
|
new MinioClient("http://localhost:9000/?foo=bar");
|
|
}
|
|
|
|
[TestMethod]
|
|
[ExpectedException(typeof(ArgumentException))]
|
|
public void TestSetAppInfoFailsNullApp()
|
|
{
|
|
var client = new MinioClient("http://localhost:9000");
|
|
client.SetAppInfo(null, "1.2.2");
|
|
}
|
|
|
|
[TestMethod]
|
|
[ExpectedException(typeof(ArgumentException))]
|
|
public void TestSetAppInfoFailsNullVersion()
|
|
{
|
|
var client = new MinioClient("http://localhost:9000");
|
|
client.SetAppInfo("Hello-App", null);
|
|
}
|
|
|
|
[TestMethod]
|
|
public void TestSetAppInfoSuccess()
|
|
{
|
|
var client = new MinioClient("http://localhost:9000");
|
|
client.SetAppInfo("Hello-App", "1.2.1");
|
|
}
|
|
|
|
[TestMethod]
|
|
public void TestEndpointSuccess()
|
|
{
|
|
new MinioClient("s3.amazonaws.com");
|
|
}
|
|
|
|
[TestMethod]
|
|
[ExpectedException(typeof(InvalidEndpointException))]
|
|
public void TestEndpointFailure()
|
|
{
|
|
new MinioClient("s3-us-west-1.amazonaws.com");
|
|
}
|
|
|
|
//[TestMethod]
|
|
//[ExpectedException(typeof(ArgumentException))]
|
|
//public void TestPutObject()
|
|
//{
|
|
// var client = new MinioClient("localhost", 9000);
|
|
// await client.PutObjectAsync("bucket-name", "object-name", null, 5 * 1024L * 1024L * 11000, null);
|
|
//}
|
|
}
|
|
}
|