public void DeserializeHostSecrets_ReturnsExpectedResult()
        {
            var serializer       = new ScriptSecretSerializerV1();
            var serializedSecret = "{'masterKey':{'name':'master','value':'1234','encrypted':false},'functionKeys':[{'name':'Key1','value':'Value1','encrypted':false},{'name':'Key2','value':'Value2','encrypted':true}]}";
            var expected         = new HostSecrets
            {
                MasterKey = new Key {
                    Name = "master", Value = "1234"
                },
                FunctionKeys = new List <Key>
                {
                    new Key
                    {
                        Name        = "Key1",
                        Value       = "Value1",
                        IsEncrypted = false
                    },
                    new Key
                    {
                        Name        = "Key2",
                        Value       = "Value2",
                        IsEncrypted = true
                    }
                }
            };

            HostSecrets actual = serializer.DeserializeSecrets <HostSecrets>(JObject.Parse(serializedSecret));

            Assert.NotNull(actual);
            Assert.Equal(expected.MasterKey, actual.MasterKey);
            AssertKeyCollectionsEquality(expected.FunctionKeys, actual.FunctionKeys);
        }
        public void SerializeFunctionSecrets_ReturnsExpectedResult()
        {
            var serializer = new ScriptSecretSerializerV1();

            var secrets = new FunctionSecrets
            {
                Keys = new List <Key>
                {
                    new Key
                    {
                        Name        = "Key1",
                        Value       = "Value1",
                        IsEncrypted = false
                    },
                    new Key
                    {
                        Name        = "Key2",
                        Value       = "Value2",
                        IsEncrypted = true
                    }
                }
            };

            string serializedSecret = serializer.SerializeSecrets(secrets);

            var jsonObject        = JObject.Parse(serializedSecret);
            var serializedSecrets = jsonObject.Property("keys")?.Value?.ToObject <List <Key> >();

            Assert.NotNull(serializedSecret);
            AssertKeyCollectionsEquality(secrets.Keys, serializedSecrets);
        }
Example #3
0
        public void DeserializeHostSecrets_ReturnsExpectedResult(string serializedSecret, string hostName)
        {
            var serializer = new ScriptSecretSerializerV1();
            var expected   = new HostSecrets
            {
                MasterKey = new Key {
                    Name = "master", Value = "1234"
                },
                FunctionKeys = new List <Key>
                {
                    new Key
                    {
                        Name        = "Key1",
                        Value       = "Value1",
                        IsEncrypted = false
                    },
                    new Key
                    {
                        Name        = "Key2",
                        Value       = "Value2",
                        IsEncrypted = true
                    }
                },
                HostName = hostName
            };

            HostSecrets actual = serializer.DeserializeSecrets <HostSecrets>(JObject.Parse(serializedSecret));

            Assert.NotNull(actual);
            Assert.Equal(expected.MasterKey, actual.MasterKey);
            Assert.Equal(actual.HostName, hostName);
            Assert.Equal(expected.Source, ScriptConstants.Runtime);
            AssertKeyCollectionsEquality(expected.FunctionKeys, actual.FunctionKeys);
        }
        public void DeserializeHostSecrets_ReturnsExpectedResult()
        {
            var serializer = new ScriptSecretSerializerV1();
            var serializedSecret = "{'masterKey':{'name':'master','value':'1234','encrypted':false},'functionKeys':[{'name':'Key1','value':'Value1','encrypted':false},{'name':'Key2','value':'Value2','encrypted':true}]}";
            var expected = new HostSecrets
            {
                MasterKey = new Key { Name = "master", Value = "1234" },
                FunctionKeys = new List<Key>
                {
                    new Key
                    {
                        Name = "Key1",
                        Value = "Value1",
                        IsEncrypted = false
                    },
                    new Key
                    {
                        Name = "Key2",
                        Value = "Value2",
                        IsEncrypted = true
                    }
                }
            };

            HostSecrets actual = serializer.DeserializeSecrets<HostSecrets>(JObject.Parse(serializedSecret));

            Assert.NotNull(actual);
            Assert.Equal(expected.MasterKey, actual.MasterKey);
            AssertKeyCollectionsEquality(expected.FunctionKeys, actual.FunctionKeys);
        }
        public void SerializeFunctionSecrets_ReturnsExpectedResult()
        {
            var serializer = new ScriptSecretSerializerV1();

            var secrets = new FunctionSecrets
            {
                Keys = new List<Key>
                {
                    new Key
                    {
                        Name = "Key1",
                        Value = "Value1",
                        IsEncrypted = false
                    },
                    new Key
                    {
                        Name = "Key2",
                        Value = "Value2",
                        IsEncrypted = true
                    }
                }
            };

            string serializedSecret = serializer.SerializeSecrets(secrets);

            var jsonObject = JObject.Parse(serializedSecret);
            var serializedSecrets = jsonObject.Property("keys")?.Value?.ToObject<List<Key>>();

            Assert.NotNull(serializedSecret);
            AssertKeyCollectionsEquality(secrets.Keys, serializedSecrets);
        }
        public void CanSerialize_WithValidHostPayload_ReturnsTrue(Type type, bool expectedResult, string input)
        {
            var serializer = new ScriptSecretSerializerV1();

            bool result = serializer.CanSerialize(JObject.Parse(input), type);

            Assert.Equal(expectedResult, result);
        }
Example #7
0
        public void SerializeHostSecrets_ReturnsExpectedResult()
        {
            var serializer = new ScriptSecretSerializerV1();

            var secrets = new HostSecrets
            {
                MasterKey = new Key {
                    Name = "master", Value = "1234"
                },
                FunctionKeys = new List <Key>
                {
                    new Key
                    {
                        Name        = "Key1",
                        Value       = "Value1",
                        IsEncrypted = false
                    },
                    new Key
                    {
                        Name        = "Key2",
                        Value       = "Value2",
                        IsEncrypted = true
                    }
                }
            };

            string serializedSecret = serializer.SerializeSecrets(secrets);

            var jsonObject      = JObject.Parse(serializedSecret);
            var functionSecrets = jsonObject.Property("functionKeys")?.Value?.ToObject <List <Key> >();
            var masterKey       = jsonObject.Property("masterKey")?.Value?.ToObject <Key>();
            var instanceId      = jsonObject.Property("instanceId")?.Value;

            Assert.NotNull(serializedSecret);
            Assert.Equal(secrets.MasterKey, masterKey);
            AssertKeyCollectionsEquality(secrets.FunctionKeys, functionSecrets);
            Assert.Equal(instanceId, secrets.InstanceId);
        }
        public void DeserializeFunctionSecrets_ReturnsExpectedResult()
        {
            var serializer = new ScriptSecretSerializerV1();
            var serializedSecret = "{ 'keys': [ { 'name': 'Key1', 'value': 'Value1', 'encrypted': false }, { 'name': 'Key2', 'value': 'Value2', 'encrypted': true } ] }";
            var expected = new List<Key>
            {
                new Key
                {
                    Name = "Key1",
                    Value = "Value1",
                    IsEncrypted = false
                },
                new Key
                {
                    Name = "Key2",
                    Value = "Value2",
                    IsEncrypted = true
                }
            };

            FunctionSecrets actual = serializer.DeserializeSecrets<FunctionSecrets>(JObject.Parse(serializedSecret));
            AssertKeyCollectionsEquality(expected, actual.Keys);
        }
        public void DeserializeFunctionSecrets_ReturnsExpectedResult()
        {
            var serializer       = new ScriptSecretSerializerV1();
            var serializedSecret = "{ 'keys': [ { 'name': 'Key1', 'value': 'Value1', 'encrypted': false }, { 'name': 'Key2', 'value': 'Value2', 'encrypted': true } ] }";
            var expected         = new List <Key>
            {
                new Key
                {
                    Name        = "Key1",
                    Value       = "Value1",
                    IsEncrypted = false
                },
                new Key
                {
                    Name        = "Key2",
                    Value       = "Value2",
                    IsEncrypted = true
                }
            };

            FunctionSecrets actual = serializer.DeserializeSecrets <FunctionSecrets>(JObject.Parse(serializedSecret));

            AssertKeyCollectionsEquality(expected, actual.Keys);
        }
Example #10
0
        public void DeserializeFunctionSecrets_ReturnsExpectedResult(string serializedSecret, string hostName)
        {
            var serializer = new ScriptSecretSerializerV1();
            var expected   = new List <Key>
            {
                new Key
                {
                    Name        = "Key1",
                    Value       = "Value1",
                    IsEncrypted = false
                },
                new Key
                {
                    Name        = "Key2",
                    Value       = "Value2",
                    IsEncrypted = true
                }
            };

            FunctionSecrets actual = serializer.DeserializeSecrets <FunctionSecrets>(JObject.Parse(serializedSecret));

            Assert.Equal(hostName, actual.HostName);
            AssertKeyCollectionsEquality(expected, actual.Keys);
        }
        public void CanSerialize_WithValidHostPayload_ReturnsTrue(Type type, bool expectedResult, string input)
        {
            var serializer = new ScriptSecretSerializerV1();

            bool result = serializer.CanSerialize(JObject.Parse(input), type);

            Assert.Equal(expectedResult, result);
        }
        public void SerializeHostSecrets_ReturnsExpectedResult()
        {
            var serializer = new ScriptSecretSerializerV1();

            var secrets = new HostSecrets
            {
                MasterKey = new Key { Name = "master", Value = "1234" },
                FunctionKeys = new List<Key>
                {
                    new Key
                    {
                        Name = "Key1",
                        Value = "Value1",
                        IsEncrypted = false
                    },
                    new Key
                    {
                        Name = "Key2",
                        Value = "Value2",
                        IsEncrypted = true
                    }
                }
            };

            string serializedSecret = serializer.SerializeSecrets(secrets);

            var jsonObject = JObject.Parse(serializedSecret);
            var functionSecrets = jsonObject.Property("functionKeys")?.Value?.ToObject<List<Key>>();
            var masterKey = jsonObject.Property("masterKey")?.Value?.ToObject<Key>();

            Assert.NotNull(serializedSecret);
            Assert.Equal(secrets.MasterKey, masterKey);
            AssertKeyCollectionsEquality(secrets.FunctionKeys, functionSecrets);
        }