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; 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/index.json"; 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(json); Console.WriteLine( JsonConvert.SerializeObject(vm)); Assert.NotNull(vm); Assert.NotNull(vm.Resources); } [Fact] public async Task TestPush() { Program.LoadConfig(); var report = await Program.PushPkgAsync(new string[] { "/home/paul/Nupkgs/Yavsc.Abstract.1.0.8.nupkg" }); } [Fact] public async Task GetServerResourcesUsingWebRequestAsyncTest() { var model = await SourceHelpers.GetServerResourcesUsingWebRequestAsync("Http://isn.pschneider.fr/index.json"); Console.WriteLine(JsonConvert.SerializeObject(model)); Assert.NotNull(model.Resources); var pub = model.Resources.FirstOrDefault((r) => r.Type == "PackagePublish/3.5.0"); Assert.True(pub!=null); } } }