예제 #1
0
 public void Authenticate()
 {
     Task.Run(async() => {
         try {
             var result = await KeyStone.Authenticate(KEYSTONE_BASE_URL, TestConfig.TENANT, TestConfig.USERNAME, TestConfig.PASSWORD);
             Assert.IsNotNull(result);
         } catch (Exception ex) {
             Assert.Fail(ex.Message);
         }
     }).GetAwaiter().GetResult();
 }
예제 #2
0
 //[TestMethod]
 public void ObjectStorageQuota()
 {
     Task.Run(async() => {
         try {
             var keystone = await KeyStone.Authenticate(KEYSTONE_BASE_URL, TestConfig.TENANT, TestConfig.USERNAME, TestConfig.PASSWORD);
             var os       = ObjectStorage.FromKeyStone(keystone);
             await os.SetQuota(100);
         } catch (Exception ex) {
             Assert.Fail(ex.Message);
         }
     }).GetAwaiter().GetResult();
 }
예제 #3
0
        public bool CheckIfKeyAuthorExists(KeyStone key)
        {
            var list     = Db.GetAll <KeyStone>();
            var keyCheck = list.Where(o => o.UserName == key.UserName).FirstOrDefault();

            if (keyCheck != null)
            {
                Db.Delete(keyCheck);
                return(true);
            }
            return(false);
        }
예제 #4
0
        public void AuthStore()
        {
            Task.Run(async() => {
                try {
                    var keystone = await KeyStone.Authenticate(KEYSTONE_BASE_URL, TestConfig.TENANT, TestConfig.USERNAME, TestConfig.PASSWORD);
                    Assert.IsNotNull(keystone);

                    var jsonText = JsonConvert.SerializeObject(keystone.AuthData);
                    File.WriteAllText("auth.json", jsonText);
                } catch (Exception ex) {
                    Assert.Fail(ex.Message);
                }
            }).GetAwaiter().GetResult();
        }
예제 #5
0
 public void DeleteContainer()
 {
     Task.Run(async() => {
         try {
             var keystone = await KeyStone.Authenticate(KEYSTONE_BASE_URL, TestConfig.TENANT, TestConfig.USERNAME, TestConfig.PASSWORD);
             var os       = ObjectStorage.FromKeyStone(keystone);
             var c        = await os.CreateContainer("test-delete-container", new Dictionary <string, string>()
             {
             });
             var result = await os.DeleteContainer("test-delete-container");
         } catch (Exception ex) {
             Assert.Fail(ex.Message);
         }
     }).GetAwaiter().GetResult();
 }
예제 #6
0
        public void GetContainerList()
        {
            Task.Run(async() => {
                try {
                    var keystone = await KeyStone.Authenticate(KEYSTONE_BASE_URL, TestConfig.TENANT, TestConfig.USERNAME, TestConfig.PASSWORD);
                    Assert.IsNotNull(keystone);
                    var os = ObjectStorage.FromKeyStone(keystone);
                    Assert.IsNotNull(os);

                    var result = await os.GetContainerList();
                } catch (Exception ex) {
                    Assert.Fail(ex.Message);
                }
            }).GetAwaiter().GetResult();
        }
예제 #7
0
 public void GetObjectList()
 {
     Task.Run(async() => {
         try {
             var keystone = await KeyStone.Authenticate(KEYSTONE_BASE_URL, TestConfig.TENANT, TestConfig.USERNAME, TestConfig.PASSWORD);
             var os       = ObjectStorage.FromKeyStone(keystone);
             var result   = await os.GetObjectList("test", new Dictionary <string, string>()
             {
             });
             Console.WriteLine(result);
         } catch (Exception ex) {
             Assert.Fail(ex.Message);
         }
     }).GetAwaiter().GetResult();
 }
예제 #8
0
 public void CreateContainer()
 {
     Task.Run(async() => {
         try {
             var keystone = await KeyStone.Authenticate(KEYSTONE_BASE_URL, TestConfig.TENANT, TestConfig.USERNAME, TestConfig.PASSWORD);
             var os       = ObjectStorage.FromKeyStone(keystone);
             var result   = await os.CreateContainer("test-container", new Dictionary <string, string>()
             {
                 { "X-Web-Mode", "true" },
                 { "X-Container-Read", ".r:*" },
             });
             Console.WriteLine(result);
         } catch (Exception ex) {
             Assert.Fail(ex.Message);
         }
     }).GetAwaiter().GetResult();
 }
예제 #9
0
 public void DeleteObject()
 {
     Task.Run(async() => {
         try {
             var keystone = await KeyStone.Authenticate(KEYSTONE_BASE_URL, TestConfig.TENANT, TestConfig.USERNAME, TestConfig.PASSWORD);
             var os       = ObjectStorage.FromKeyStone(keystone);
             var result   = await os.GetObject("test/test.jpg", new Dictionary <string, string>()
             {
             });
             var tmpFileName = "test.jpg";
             File.WriteAllBytes(tmpFileName, await result.Content.ReadAsByteArrayAsync());
             //upload
             var result2 = await os.PutObject("test", tmpFileName, dstName: "test2.jpg", headers: new Dictionary <string, string>()
             {
             });
             await os.DeleteObject("test", "test5.jpg");
         } catch (Exception ex) {
             Assert.Fail(ex.Message);
         }
     }).GetAwaiter().GetResult();
 }
예제 #10
0
        public void CreateKeyFromStringAndSave(string input, string userName)
        {
            array = new int[2] {
                100, 100
            };
            var keyLevel   = 0;
            var splitIndex = FindIndexOfFirstNumber(input);

            if (array[0] == 100)
            {
                throw new FormatException("You need to specify keylevel");
            }
            if (splitIndex != 0)
            {
                input = input.Substring(0, splitIndex);
                input = input.Trim();
                input = CheckIfDungeonNameIsInList(input);
            }
            string SamletKeyLevel = string.Empty;

            if (array[1] != 100)
            {
                SamletKeyLevel = array[0].ToString() + array[1].ToString();
            }
            else
            {
                SamletKeyLevel = array[0].ToString();
            }

            var key = new KeyStone {
                Key = input, KeyLevel = Convert.ToInt32(SamletKeyLevel), UserName = userName, ExpireDate = Helpers.FindNextWednesday()
            };

            CheckIfKeyAuthorExists(key);
            Db.Create(key);
        }