Example #1
0
        public async void GetContactsAsync_InvalidSource_ShouldThrowException()
        {
            // Arrange
            var httpJsonContactsDataSource = new HttpJsonContactsDataSource("https://raw.githubusercontent.com/Newbilius/ElbaMobileXamarinDeveloperTest/master/json/generated-111111.json");

            // Assert
            await Assert.ThrowsAnyAsync <Exception>(async() => await httpJsonContactsDataSource.GetContactsAsync());
        }
Example #2
0
        public async void GetContactsAsync_ValidSource_ShouldReturnContacts()
        {
            // Arrange
            var httpJsonContactsDataSource = new HttpJsonContactsDataSource("https://raw.githubusercontent.com/Newbilius/ElbaMobileXamarinDeveloperTest/master/json/generated-01.json");

            // Act
            var actual = await httpJsonContactsDataSource.GetContactsAsync();

            // Assert
            Assert.NotEmpty(actual);
        }
Example #3
0
        public async void SaveContactsAsync_ShouldInsertToDB()
        {
            // Arrange
            var httpJsonContactsDataSource = new HttpJsonContactsDataSource("https://raw.githubusercontent.com/Newbilius/ElbaMobileXamarinDeveloperTest/master/json/generated-01.json");
            var SQLiteContactsDataStorage  = new SQLiteContactsCache(Path.Combine(Path.GetTempPath(), "XamTestEvaganov.db"), SQLiteOpenFlags.ReadWrite | SQLiteOpenFlags.Create | SQLiteOpenFlags.SharedCache);

            // Act
            var contacts = await httpJsonContactsDataSource.GetContactsAsync();

            var actual = await SQLiteContactsDataStorage.SaveContactsAsync(contacts);

            // Assert
            Assert.NotEqual(0, actual);
        }
Example #4
0
        public async void GetContactsAsync_ValidSource_ContactShouldContainData()
        {
            // Arrange
            var httpJsonContactsDataSource = new HttpJsonContactsDataSource("https://raw.githubusercontent.com/Newbilius/ElbaMobileXamarinDeveloperTest/master/json/generated-01.json");

            // Act
            var actual = await httpJsonContactsDataSource.GetContactsAsync();

            // Assert
            foreach (var contact in actual)
            {
                Assert.NotNull(contact.Id);
                Assert.NotNull(contact.Biography);
                Assert.NotNull(contact.EducationPeriod);
                Assert.NotNull(contact.Name);
                Assert.NotNull(contact.Phone);
                Assert.NotEqual(0, contact.Height);
            }
        }