isn/test/isn.tests/PushTest.cs

80 lines
2.6 KiB
C#

using System;
using System.Data;
using System.IO;
using System.Xml;
using System.Net.Http;
using System.Threading.Tasks;
using Newtonsoft.Json;
using isn.Abstract;
using System.Linq;
using Xunit;
using isn.abst;
using isnd.Entities;
namespace isn.tests
{
public class Tests
{
private DataRow dataRow;
[Fact]
public void HAveADefaultDataProtector()
{
string pass = "a lame and big pass";
isn.IDataProtector _protector = new isn.DefaultDataProtector();
string protectedpass = _protector.Protect(pass);
string unprotectedpass = _protector.UnProtect(protectedpass);
Console.WriteLine(protectedpass);
Assert.Equal(pass, unprotectedpass);
Assert.True(protectedpass != null);
Assert.True(protectedpass.Length > 0);
}
[Fact]
public void Test()
{
System.Data.DataTable dataTable = new System.Data.DataTable();
dataTable.Columns.Add(new DataColumn("x"));
dataTable.Columns.Add(new DataColumn("y"));
dataRow = dataTable.NewRow();
dataRow[0] = 1;
dataRow[1] = 2;
dataTable.Rows.Add(dataRow);
}
[Fact]
public async Task TestHttpClient()
{
string url = "http://isn.pschneider.fr/" + ApiConfig.IndexDotJson;
HttpClient client = new HttpClient();
// var json = await client.GetStringAsync(new System.Uri(url));
var response = await client.GetAsync(url);
var json = await response.Content.ReadAsStringAsync();
var vm = JsonConvert.DeserializeObject<ApiIndexViewModel>(json);
Console.WriteLine(JsonConvert.SerializeObject(vm));
Assert.NotNull(vm);
Assert.NotNull(vm.Resources);
}
[Fact]
public void TestPush()
{
Program.LoadConfig();
var report = Program.PushPkg(new string[] { "/home/paul/Nupkgs/Yavsc.Abstract.1.0.8."
+ Constants.PaquetFileEstension });
}
[Fact]
public async Task GetServerResourcesUsingHttpClientAsyncTest()
{
var model = SourceHelpers.GetServerResources("Http://isn.pschneider.fr/index.json");
Console.WriteLine(JsonConvert.SerializeObject(model));
Assert.NotNull(model.Resources);
var pub = model.Resources.FirstOrDefault((r) => r.Type.StartsWith("PackagePublish/"));
Assert.True(pub != null);
}
}
}