public void TestGetAsString()
        {
            var message = AnyValueMap.FromTuples(
                "key1", 123,
                "key2", "ABC"
                );

            var restoredMessageObject = JsonConverter.FromJson <object>(JsonConverter.ToJson(message));
            var restoredMessage       = AnyValueMap.FromValue(restoredMessageObject);

            Assert.Equal(2, restoredMessage.Count);
            Assert.Equal(123, restoredMessage.GetAsInteger("key1"));
            Assert.Equal("ABC", restoredMessage.GetAsString("key2"));
        }
        public async Task TestCrudOperationsAsync()
        {
            // Create one dummy
            var dummy1 = await _persistence.CreateAsync(null, _dummy1);

            Assert.NotNull(dummy1);
            Assert.NotNull(dummy1.Id);
            Assert.Equal(_dummy1.Key, dummy1.Key);
            Assert.Equal(_dummy1.Content, dummy1.Content);

            // Create another dummy
            var dummy2 = await _persistence.CreateAsync(null, _dummy2);

            Assert.NotNull(dummy2);
            Assert.NotNull(dummy2.Id);
            Assert.Equal(_dummy2.Key, dummy2.Key);
            Assert.Equal(_dummy2.Content, dummy2.Content);

            //// Get all dummies
            //var dummies = await _get.GetAllAsync(null);
            //Assert.NotNull(dummies);
            //Assert.Equal(2, dummies.Count());

            // Update the dummy
            dummy1.Content = "Updated Content 1";
            var dummy = await _persistence.UpdateAsync(null, dummy1);

            Assert.NotNull(dummy);
            Assert.Equal(dummy1.Id, dummy.Id);
            Assert.Equal(dummy1.Key, dummy.Key);
            Assert.Equal(dummy1.Content, dummy.Content);

            // Update partially the dummy
            dummy = await _persistence.UpdatePartiallyAsync(null, dummy1.Id, AnyValueMap.FromTuples(
                                                                "content", "Partially Updated Content 1"
                                                                ));

            Assert.NotNull(dummy);
            Assert.Equal(dummy1.Id, dummy.Id);
            Assert.Equal(dummy1.Key, dummy.Key);
            Assert.Equal("Partially Updated Content 1", dummy.Content);

            // Delete the dummy
            await _persistence.DeleteByIdAsync(null, dummy1.Id);

            // Try to get deleted dummy
            dummy = await _persistence.GetOneByIdAsync(null, dummy1.Id);

            Assert.Null(dummy);
        }
        public void TestSetMapProperty()
        {
            AnyValueMap map = AnyValueMap.FromTuples(
                "key1", 123,
                "key2", "ABC"
                );

            ObjectWriter.SetProperty(map, "key3", "AAAA");
            Assert.Equal("AAAA", map.Get("key3"));

            ObjectWriter.SetProperty(map, "Key1", 5555);
            Assert.Equal(5555, map.Get("Key1"));

            ObjectWriter.SetProperty(map, "Key2", "BBBB");
            Assert.Equal("BBBB", map.Get("Key2"));
        }
Ejemplo n.º 4
0
        public void TestGetMapProperties()
        {
            AnyValueMap map = AnyValueMap.FromTuples(
                "key1", 123,
                "key2", "ABC"
                );
            var names = ObjectReader.GetPropertyNames(map);

            Assert.Equal(2, names.Count);
            Assert.Contains("key1", names);
            Assert.Contains("key2", names);

            var values = ObjectReader.GetProperties(map);

            Assert.Equal(2, values.Count);
            Assert.Equal(123, values["key1"]);
            Assert.Equal("ABC", values["key2"]);
        }
Ejemplo n.º 5
0
        public void TestGetMapProperty()
        {
            var map = AnyValueMap.FromTuples(
                "key1", 123,
                "key2", "ABC"
                );

            var key3Value = ObjectReader.GetProperty(map, "key3");

            Assert.Null(key3Value);

            var key1Value = ObjectReader.GetProperty(map, "Key1");

            Assert.Equal(123, key1Value);

            var key2Value = ObjectReader.GetProperty(map, "KEY2");

            Assert.Equal("ABC", key2Value);
        }
Ejemplo n.º 6
0
        public void TestConfigFromObject()
        {
            var value = AnyValueMap.FromTuples(
                "field1", ConfigParams.FromString("field11=123;field12=ABC"),
                "field2", AnyValueArray.FromValues(
                    123, "ABC", ConfigParams.FromString("field21=543;field22=XYZ")
                    ),
                "field3", true
                );

            var config = ConfigParams.FromValue(value);

            Assert.Equal(7, config.Count);
            Assert.Equal(123, config.GetAsInteger("field1.field11"));
            Assert.Equal("ABC", config.GetAsString("field1.field12"));
            Assert.Equal(123, config.GetAsInteger("field2.0"));
            Assert.Equal("ABC", config.GetAsString("field2.1"));
            Assert.Equal(543, config.GetAsInteger("field2.2.field21"));
            Assert.Equal("XYZ", config.GetAsString("field2.2.field22"));
            Assert.Equal(true, config.GetAsBoolean("field3"));
        }
Ejemplo n.º 7
0
 /// <summary>
 /// Creates a new Parameters object filled with provided key-value pairs called
 /// tuples.Tuples parameters contain a sequence of key1, value1, key2, value2, ... pairs.
 /// </summary>
 /// <param name="tuples">the tuples to fill a new Parameters object.</param>
 /// <returns>a new Parameters object.</returns>
 /// See <see cref="AnyValueMap.FromTuples(object[])"/>
 public new static Parameters FromTuples(params object[] tuples)
 {
     return(new Parameters(AnyValueMap.FromTuples(tuples)));
 }
Ejemplo n.º 8
0
        public async Task TestCrudOperationsAsync()
        {
            // Create one dummy
            var dummy1 = await _persistence.CreateAsync(null, _dummy1);

            Assert.NotNull(dummy1);
            Assert.NotNull(dummy1.SubDummy);
            Assert.Equal(_dummy1.Key, dummy1.Key);
            Assert.Equal(_dummy1.Content, dummy1.Content);
            Assert.Equal(_dummy1.CreateTimeUtc, dummy1.CreateTimeUtc, TimeSpan.FromMilliseconds(1000));
            Assert.Equal(_dummy1.SubDummy.Type, dummy1.SubDummy.Type);
            Assert.Equal(_dummy1.SubDummy.ArrayOfDouble, dummy1.SubDummy.ArrayOfDouble);

            // Create another dummy
            var dummy2 = await _persistence.CreateAsync(null, _dummy2);

            Assert.NotNull(dummy2);
            Assert.NotNull(dummy2.SubDummy);
            Assert.Equal(_dummy2.Key, dummy2.Key);
            Assert.Equal(_dummy2.Content, dummy2.Content);
            Assert.Equal(_dummy2.CreateTimeUtc, dummy2.CreateTimeUtc, TimeSpan.FromMilliseconds(1000));
            Assert.Equal(_dummy2.SubDummy.Type, dummy2.SubDummy.Type);
            Assert.Equal(_dummy2.SubDummy.ArrayOfDouble, dummy2.SubDummy.ArrayOfDouble);

            var page = await _persistence.GetPageByFilterAsync(null, null, null);

            Assert.NotNull(page);
            Assert.Equal(2, page.Data.Count);

            page = await _persistence.GetPageByFilterAsync(null, FilterParams.FromTuples("key", _dummy2.Key), null);

            Assert.NotNull(page);
            Assert.Single(page.Data);

            // Update the dummy
            dummy1.Content = "Updated Content 1";
            var result = await _persistence.UpdateAsync(null, dummy1);

            Assert.NotNull(result);
            Assert.NotNull(result.SubDummy);
            Assert.Equal(dummy1.Id, result.Id);
            Assert.Equal(dummy1.Key, result.Key);
            Assert.Equal(dummy1.Content, result.Content);
            Assert.Equal(dummy1.CreateTimeUtc, result.CreateTimeUtc, TimeSpan.FromMilliseconds(1000));
            Assert.Equal(dummy1.SubDummy.Type, result.SubDummy.Type);
            Assert.Equal(dummy1.SubDummy.ArrayOfDouble, result.SubDummy.ArrayOfDouble);

            // Set the dummy
            dummy1.Content = "Updated Content 2";
            result         = await _persistence.SetAsync(null, dummy1);

            Assert.NotNull(result);
            Assert.NotNull(result.SubDummy);
            Assert.Equal(dummy1.Id, result.Id);
            Assert.Equal(dummy1.Key, result.Key);
            Assert.Equal(dummy1.Content, result.Content);
            Assert.Equal(dummy1.CreateTimeUtc, result.CreateTimeUtc, TimeSpan.FromMilliseconds(1000));
            Assert.Equal(dummy1.SubDummy.Type, result.SubDummy.Type);
            Assert.Equal(dummy1.SubDummy.ArrayOfDouble, result.SubDummy.ArrayOfDouble);

            // Partially update the dummy
            result = await _persistence.UpdatePartially(null, dummy1.Id,
                                                        AnyValueMap.FromTuples("content", "Partially Updated Content 1"));

            Assert.NotNull(result);
            Assert.Equal(dummy1.Id, result.Id);
            Assert.Equal(dummy1.Key, result.Key);
            Assert.Equal("Partially Updated Content 1", result.Content);

            // Get the dummy by Id
            result = await _persistence.GetOneByIdAsync(null, dummy1.Id);

            Assert.NotNull(result);
            Assert.Equal(dummy1.Id, result.Id);
            Assert.Equal(dummy1.Key, result.Key);

            // Delete the dummy
            result = await _persistence.DeleteByIdAsync(null, dummy1.Id);

            Assert.NotNull(result);
            Assert.Equal(dummy1.Id, result.Id);
            Assert.Equal(dummy1.Key, result.Key);

            // Get the deleted dummy
            result = await _persistence.GetOneByIdAsync(null, dummy1.Id);

            Assert.Null(result);

            var count = await _persistence.GetCountByFilterAsync(null, null);

            Assert.Equal(1, count);
        }
Ejemplo n.º 9
0
 public static new RestOperationParameters FromTuples(params object[] tuples)
 {
     return(new RestOperationParameters((IDictionary)AnyValueMap.FromTuples(tuples)));
 }
Ejemplo n.º 10
0
        public async Task TestMultiThreadOperationsAsync(int i)
        {
            var dummy = new Dummy
            {
                Id            = null,
                Key           = $"Key {i}",
                Content       = "Content 1",
                CreateTimeUtc = DateTime.UtcNow,
                SubDummy      = new SubDummy {
                    Type = "some type", ArrayOfDouble = new double[] { 10, 10 }
                }
            };

            // Create one dummy
            var dummy1 = await _persistence.CreateAsync(null, dummy);

            Assert.NotNull(dummy1);
            Assert.NotNull(dummy1.SubDummy);
            Assert.Equal(dummy.Key, dummy1.Key);
            Assert.Equal(dummy.Content, dummy1.Content);
            Assert.Equal(dummy.CreateTimeUtc, dummy1.CreateTimeUtc, TimeSpan.FromMilliseconds(1000));
            Assert.Equal(dummy.SubDummy.Type, dummy1.SubDummy.Type);
            Assert.Equal(dummy.SubDummy.ArrayOfDouble, dummy1.SubDummy.ArrayOfDouble);

            // Update the dummy
            dummy1.Content = "Updated Content 1";
            var result = await _persistence.UpdateAsync(null, dummy1);

            Assert.NotNull(result);
            Assert.NotNull(result.SubDummy);
            Assert.Equal(dummy1.Id, result.Id);
            Assert.Equal(dummy1.Key, result.Key);
            Assert.Equal(dummy1.Content, result.Content);
            Assert.Equal(dummy1.CreateTimeUtc, result.CreateTimeUtc, TimeSpan.FromMilliseconds(1000));
            Assert.Equal(dummy1.SubDummy.Type, result.SubDummy.Type);
            Assert.Equal(dummy1.SubDummy.ArrayOfDouble, result.SubDummy.ArrayOfDouble);

            // Set the dummy
            dummy1.Content = "Updated Content 2";
            result         = await _persistence.SetAsync(null, dummy1);

            Assert.NotNull(result);
            Assert.NotNull(result.SubDummy);
            Assert.Equal(dummy1.Id, result.Id);
            Assert.Equal(dummy1.Key, result.Key);
            Assert.Equal(dummy1.Content, result.Content);
            Assert.Equal(dummy1.CreateTimeUtc, result.CreateTimeUtc, TimeSpan.FromMilliseconds(1000));
            Assert.Equal(dummy1.SubDummy.Type, result.SubDummy.Type);
            Assert.Equal(dummy1.SubDummy.ArrayOfDouble, result.SubDummy.ArrayOfDouble);

            // Partially update the dummy
            result = await _persistence.UpdatePartially(null, dummy1.Id,
                                                        AnyValueMap.FromTuples("content", "Partially Updated Content 1"));

            Assert.NotNull(result);
            Assert.Equal(dummy1.Id, result.Id);
            Assert.Equal(dummy1.Key, result.Key);
            Assert.Equal("Partially Updated Content 1", result.Content);

            // Get the dummy by Id
            result = await _persistence.GetOneByIdAsync(null, dummy1.Id);

            Assert.NotNull(result);
            Assert.Equal(dummy1.Id, result.Id);
            Assert.Equal(dummy1.Key, result.Key);

            // Delete the dummy
            result = await _persistence.DeleteByIdAsync(null, dummy1.Id);

            Assert.NotNull(result);
            Assert.Equal(dummy1.Id, result.Id);
            Assert.Equal(dummy1.Key, result.Key);

            // Get the deleted dummy
            result = await _persistence.GetOneByIdAsync(null, dummy1.Id);

            Assert.Null(result);
        }