Example #1
0
        public async Task Subscription_PrimitiveChildAdded_ShouldDeserializePrimitiveObject()
        {
            // Arrange
            await FirebaseHelper.ImportDatabase("NumberArray.json");

            Semaphore semaphore = new Semaphore(0, 7);
            bool      wasNumberProperlyDeserialized = false;

            Action <int> onChildAdded = (int number) =>
            {
                if (number == 6)
                {
                    wasNumberProperlyDeserialized = true;
                }
                semaphore.Release();
            };

            var childAddedSub = Database.Ref("Array").OnChildAdded(onChildAdded);

            // Act
            await Database.Ref("Array").Child("6").Set(6);

            // Assert
            WaitFor(7, semaphore);
            Assert.IsTrue(wasNumberProperlyDeserialized);

            // Teardown
            childAddedSub.Stop();
        }
Example #2
0
        public async Task SetUp()
        {
            FirebaseHelper = new FirebaseHelper();
            Database       = new FirebaseDatabase(DatabaseUrl, () => Task.FromResult(DatabaseSecret));
            await FirebaseHelper.UpdateRules("AllowEverything.json");

            await FirebaseHelper.ImportDatabase("People.json");
        }
Example #3
0
        public async Task Once_StringArray_ShouldDeserializeIntoList()
        {
            // Arrange
            await FirebaseHelper.ImportDatabase("StringArray.json");

            // Act
            var list = await Database.Ref("Array").Once <List <string> >();

            // Assert
            Assert.AreEqual("Helo", list[0]);
            Assert.AreEqual("Hey", list[1]);
            Assert.AreEqual("Bonjourno", list[2]);
            Assert.AreEqual("Hola", list[3]);
        }