root / trunk / Pithos.Network.Test / CloudFilesClientTest.cs @ 93dc3a84
History | View | Annotate | Download (2.8 kB)
1 |
using System; |
---|---|
2 |
using System.Collections.Concurrent; |
3 |
using System.Collections.Generic; |
4 |
using System.IO; |
5 |
using System.Linq; |
6 |
using System.Text; |
7 |
using System.Threading.Tasks; |
8 |
using NUnit.Framework; |
9 |
|
10 |
namespace Pithos.Network.Test |
11 |
{ |
12 |
[TestFixture] |
13 |
class CloudFilesClientTest |
14 |
{ |
15 |
[Test] |
16 |
public void TestPutHashMap() |
17 |
{ |
18 |
var account = "890329@vho.grnet.gr"; |
19 |
var apiKey = "24989dce4e0fcb072f8cb60c8922be19"; |
20 |
var client = new CloudFilesClient(account, apiKey) |
21 |
{ |
22 |
AuthenticationUrl = @"https://pithos.dev.grnet.gr", |
23 |
UsePithos = true |
24 |
}; |
25 |
client.Authenticate(); |
26 |
var fileName = @"vlc-1.1.11-win32.exe"; |
27 |
var treeHash=Signature.CalculateTreeHashAsync(Path.Combine(@"e:\pithos\" ,fileName), 4*1024*1024 , "sha256", 2).Result; |
28 |
var result = client.PutHashMap(account, "pithos", fileName, treeHash).Result; |
29 |
|
30 |
Assert.AreEqual(0,result.Count); |
31 |
} |
32 |
|
33 |
[Test] |
34 |
public void TestAuthentication() |
35 |
{ |
36 |
var account = "ikons@cslab.ece.ntua.gr"; |
37 |
var apiKey = "fKzKaRd7Uhov+xca4B4rOQ=="; |
38 |
var client = new CloudFilesClient(account, apiKey) |
39 |
{ |
40 |
AuthenticationUrl = @"https://plus.pithos.grnet.gr", |
41 |
UsePithos = true |
42 |
}; |
43 |
var accountInfo=client.Authenticate(); |
44 |
var containers=client.ListContainers(accountInfo.UserName); |
45 |
Assert.IsNotNull(containers); |
46 |
var result=client.GetAccountPolicies(accountInfo); |
47 |
|
48 |
Assert.IsNotNull(accountInfo); |
49 |
Assert.IsNotNull(result); |
50 |
} |
51 |
|
52 |
|
53 |
[Test] |
54 |
public void TestFolders() |
55 |
{ |
56 |
var account = "pkanavos@gmail.com"; |
57 |
var apiKey = "kAhnqSZwzzCMMjtPHkuFhw=="; |
58 |
|
59 |
var client = new CloudFilesClient(account, apiKey) |
60 |
{ |
61 |
AuthenticationUrl = @"https://pithos.dev.grnet.gr", |
62 |
UsePithos = true |
63 |
}; |
64 |
var accountInfo = client.Authenticate(); |
65 |
var containers = client.ListContainers(accountInfo.UserName); |
66 |
Assert.IsNotNull(containers); |
67 |
var result = client.GetAccountPolicies(accountInfo); |
68 |
|
69 |
Assert.IsNotNull(accountInfo); |
70 |
Assert.IsNotNull(result); |
71 |
|
72 |
|
73 |
var pithos=containers.First(c => c.Name == "pithos"); |
74 |
var directories=client.ListObjects(account,"pithos","").Where(info=>info.Content_Type=="application/directory"); |
75 |
Assert.That(directories,!Is.Empty); |
76 |
Assert.IsTrue(directories.All(info=>info.Content_Type=="application/directory")); |
77 |
} |
78 |
|
79 |
|
80 |
|
81 |
|
82 |
} |
83 |
} |