Beispiel #1
0
        public void BuildUrlSegmentsTest(string type, string param, string path)
        {
            var url = string.Empty;

            switch (type)
            {
            case "child":
                url = _firebaseQuery.Child(param).BuildUrlSegment();
                break;

            case "shallow":
                url = _firebaseQuery.Shallow(param).BuildUrlSegment();
                break;

            case "print":
                url = _firebaseQuery.Print(param).BuildUrlSegment();
                break;

            case "limit-to-first":
                url = _firebaseQuery.LimitToFirst(param).BuildUrlSegment();
                break;

            case "limit-to-last":
                url = _firebaseQuery.LimitToLast(param).BuildUrlSegment();
                break;

            case "start-at":
                url = _firebaseQuery.StartAt(param).BuildUrlSegment();
                break;

            case "end-at":
                url = _firebaseQuery.EndAt(param).BuildUrlSegment();
                break;

            case "equal-to":
                url = _firebaseQuery.EqualTo(param).BuildUrlSegment();
                break;

            case "order-by":
                url = _firebaseQuery.OrderBy(param).BuildUrlSegment();
                break;

            case "order-by-key":
                url = _firebaseQuery.OrderByKey().BuildUrlSegment();
                break;

            case "order-by-value":
                url = _firebaseQuery.OrderByValue().BuildUrlSegment();
                break;

            default:
                Assert.True(false, "Not Called");
                break;
            }

            Assert.Contains(path, url);
        }
Beispiel #2
0
        private static async Task <dynamic> PatchAsync(FirebaseQuery fq, string key)
        {
            const string json          = @"{
              'Name': 'Jean Doe',
              'Gender': 'Rather not say'
            }";
            var          dynamicPerson = JsonConvert.DeserializeObject(json);
            var          patchResult   = await fq.Child("MockData").Child(key).PatchAsync <dynamic>(dynamicPerson);

            Console.WriteLine($"Patched: {key}");
            Console.WriteLine($"Name: {patchResult.Name}");
            Console.WriteLine($"Gender: {patchResult.Gender}");
            Console.WriteLine();
            return(patchResult);
        }
Beispiel #3
0
        private static async Task <FirebaseObject <Person> > PostAsync(FirebaseQuery fq)
        {
            var person = new Person
            {
                Name   = "John",
                Age    = 12,
                Gender = "Male"
            };
            var postResult = await fq.Child("MockData").PostAsync(person);

            Console.WriteLine($"Posted: {postResult.Key}");
            Console.WriteLine($"Name: {postResult.Object.Name}");
            Console.WriteLine($"Age: {postResult.Object.Age}");
            Console.WriteLine($"Gender: {postResult.Object.Gender}");
            Console.WriteLine();
            return(postResult);
        }
Beispiel #4
0
        private static async Task GetSingleAsync(FirebaseQuery fq)
        {
            const string itemKey = "-KsMRp__P7M3wGBHK6uz";
            var          result  = await fq.Child("AddressBook").Child(itemKey).GetSingleAsync <AddressBook>();

            if (null != result)
            {
                Console.WriteLine($"Key: {itemKey}");
                PrintAddressBook(result);
            }
            else
            {
                Console.WriteLine("Nothing");
            }

            Console.WriteLine();
        }
Beispiel #5
0
        private static async Task GetShallowAsync(FirebaseQuery fq)
        {
            var results = await fq.Child("AddressBook").Shallow("true").Print("pretty").GetAsync <bool>();

            if (results.Any())
            {
                foreach (var result in results)
                {
                    Console.WriteLine($"Key: {result.Key} Value: {result.Object}");
                }
            }
            else
            {
                Console.WriteLine("Nothing");
            }
            Console.WriteLine();
        }
Beispiel #6
0
        private static async Task <Person> PutAsync(FirebaseQuery fq, string key)
        {
            var person = new Person
            {
                Name   = "John Doe",
                Age    = 12,
                Gender = "Male"
            };
            var putResult = await fq.Child("MockData").Child(key).PutAsync(person);

            Console.WriteLine($"Put: {key}");
            Console.WriteLine($"Name: {putResult.Name}");
            Console.WriteLine($"Age: {putResult.Age}");
            Console.WriteLine($"Gender: {putResult.Gender}");
            Console.WriteLine();
            return(putResult);
        }
Beispiel #7
0
        private static async Task GetAsync(FirebaseQuery fq)
        {
            var results = await fq.Child("AddressBook").GetAsync <AddressBook>();

            if (results.Any())
            {
                var addressbooks = results.Take(5);
                foreach (var addressbook in addressbooks)
                {
                    Console.WriteLine($"Key: {addressbook.Key}");
                    PrintAddressBook(addressbook.Object);
                    Console.WriteLine();
                }
            }
            else
            {
                Console.WriteLine("Nothing");
            }
        }
Beispiel #8
0
        private static async Task DeleteAsync(FirebaseQuery fq, string key)
        {
            await fq.Child("MockData").Child(key).DeleteAsync();

            Console.WriteLine($"Deleted: {key}");
        }
 private void RemoveMocks()
 {
     var result = _firebaseQuery.Child(FirebaseMockNode).DeleteAsync();
 }
Beispiel #10
0
        private async Task <List <FirebaseObject <MockFirebasePerson> > > CreateMocks()
        {
            var people  = _fixture.PersonList;
            var results = new List <FirebaseObject <MockFirebasePerson> >();

            foreach (var person in people)
            {
                var result = await _firebaseQuery.Child(FirebaseMockNode).PostAsync(person);

                results.Add(result);
            }

            return(results);
        }
        public async Task <IReadOnlyCollection <FirebaseObject <T> > > GetAllAsync()
        {
            var results = await _query.Child(_path).GetAsync <T>();

            return(results);
        }