Exemple #1
0
        public void WhenAddingMultipeAccounts_TheyShouldBeAdded()
        {
            // Given
            var facebookAccount  = FakeData.FakeDataGenerator.GetFacebookAccount();
            var facebookPassword = FakeData.FakeDataGenerator.GetFacebookPassword();

            facebookAccount.Fields.Add(facebookPassword);

            var twitterAccount  = FakeData.FakeDataGenerator.GetTwitterAccount();
            var twitterPassword = FakeData.FakeDataGenerator.GetTwitterPassword();

            facebookAccount.Fields.Add(twitterPassword);

            IDatastore originalDatastore = null;

            // When
            TestWithEmptyDatastore(dataStore =>
            {
                dataStore.SaveAccountDto(facebookAccount);
                dataStore.SaveAccountDto(twitterAccount);
                originalDatastore = dataStore;
            });

            // Then
            originalDatastore.GetAccountDtos().Should().HaveCount(2);
            TestAccountAndPassword(originalDatastore, facebookAccount);
            TestAccountAndPassword(originalDatastore, twitterAccount);
        }
Exemple #2
0
        public void WhenDeletingAnAccount_ItShouldBeDeleted()
        {
            // Given
            IDatastore originalDatastore = null;
            AccountDto twitterAccount    = null;

            // When
            TestWithPrepopulatedDatastore(dataStore => {
                originalDatastore = dataStore;
                twitterAccount    =
                    dataStore.GetAccountDtos().First(account =>
                                                     account.ProviderKey == FakeData.FakeDataGenerator.TwitterProviderKey);
                dataStore.DeleteAccountDto(twitterAccount.Id);
            });

            // Then
            originalDatastore.GetAccountDtos().Should().NotContain(account => account.Id == twitterAccount.Id);
            originalDatastore.GetAccountDtos().Should().NotContain(account => account.ProviderKey == FakeData.FakeDataGenerator.TwitterProviderKey);
        }
Exemple #3
0
 public Accounts(IDatastore dataStore)
 {
     _dataStore = dataStore;
     _providers = new Providers();
     _fieldTypes = new FieldTypes();
     foreach (var accountDto in dataStore.GetAccountDtos()) {
         var account = new Account(_fieldTypes);
         account.Load(accountDto);
         _accounts.Add(account);
     }
 }
Exemple #4
0
 public Accounts(IDatastore dataStore)
 {
     _dataStore  = dataStore;
     _providers  = new Providers();
     _fieldTypes = new FieldTypes();
     foreach (var accountDto in dataStore.GetAccountDtos())
     {
         var account = new Account(_fieldTypes);
         account.Load(accountDto);
         _accounts.Add(account);
     }
 }
Exemple #5
0
        //private void TestWithBothDatastores(Action<IDatastore> test) {
        //    test(GetDatastoreWithFakeData());
        //    test(GetDatastore());
        //}

        private void TestAccountAndPassword(IDatastore dataStore, AccountDto accountDto)
        {
            dataStore.GetAllAccountIds().Should().Contain(id => id.Equals(accountDto.Id));
            dataStore.GetAccountDtos().Should().Contain(dataStoreAccountDto => accountDto.Id == dataStoreAccountDto.Id);
            dataStore.GetAccountDto(accountDto.Id).Equals(accountDto).Should().BeTrue();
            dataStore.GetAccountDto(accountDto.Id).IsDeleted.Should().Be(accountDto.IsDeleted);
            dataStore.GetAccountDto(accountDto.Id).Id.Should().Be(accountDto.Id);
            dataStore.GetAccountDto(accountDto.Id).LastChangedUtc.Should().Be(accountDto.LastChangedUtc);
            dataStore.GetAccountDto(accountDto.Id).Notes.Should().Be(accountDto.Notes);
            dataStore.GetAccountDto(accountDto.Id).ProviderKey.Should().Be(accountDto.ProviderKey);
            dataStore.GetAccountDto(accountDto.Id).Tags.Should().Equal(accountDto.Tags);
            dataStore.GetAccountDto(accountDto.Id).Fields.Should().Equal(accountDto.Fields);
            //dataStore.GetPasswordDtos(accountDto.Id).Should().HaveCount(passwordDtos.Count());
            //dataStore.GetPasswordDtos(accountDto.Id).First().Equals(passwordDtos.First()).Should().BeTrue();
            //dataStore.GetPasswordDtos(accountDto.Id).Should().Equal(passwordDtos);
        }
Exemple #6
0
        public void WhenAddingASingleAccount_ItShouldBeAdded()
        {
            // Given
            var facebookAccount  = FakeData.FakeDataGenerator.GetFacebookAccount();
            var facebookPassword = FakeData.FakeDataGenerator.GetFacebookPassword();

            facebookAccount.Fields.Add(facebookPassword);

            IDatastore originalDatastore = null;

            // When
            TestWithEmptyDatastore(dataStore => {
                dataStore.SaveAccountDto(facebookAccount);
                originalDatastore = dataStore;
            });

            // Then
            originalDatastore.GetAllAccountIds().Should().HaveCount(1);
            originalDatastore.GetAccountDtos().Should().HaveCount(1);
            TestAccountAndPassword(originalDatastore, facebookAccount);
        }
 //private void TestWithBothDatastores(Action<IDatastore> test) {
 //    test(GetDatastoreWithFakeData());
 //    test(GetDatastore());
 //}
 private void TestAccountAndPassword(IDatastore dataStore, AccountDto accountDto)
 {
     dataStore.GetAllAccountIds().Should().Contain(id => id.Equals(accountDto.Id));
     dataStore.GetAccountDtos().Should().Contain(dataStoreAccountDto => accountDto.Id == dataStoreAccountDto.Id);
     dataStore.GetAccountDto(accountDto.Id).Equals(accountDto).Should().BeTrue();
     dataStore.GetAccountDto(accountDto.Id).IsDeleted.Should().Be(accountDto.IsDeleted);
     dataStore.GetAccountDto(accountDto.Id).Id.Should().Be(accountDto.Id);
     dataStore.GetAccountDto(accountDto.Id).LastChangedUtc.Should().Be(accountDto.LastChangedUtc);
     dataStore.GetAccountDto(accountDto.Id).Notes.Should().Be(accountDto.Notes);
     dataStore.GetAccountDto(accountDto.Id).ProviderKey.Should().Be(accountDto.ProviderKey);
     dataStore.GetAccountDto(accountDto.Id).Tags.Should().Equal(accountDto.Tags);
     dataStore.GetAccountDto(accountDto.Id).Fields.Should().Equal(accountDto.Fields);
     //dataStore.GetPasswordDtos(accountDto.Id).Should().HaveCount(passwordDtos.Count());
     //dataStore.GetPasswordDtos(accountDto.Id).First().Equals(passwordDtos.First()).Should().BeTrue();
     //dataStore.GetPasswordDtos(accountDto.Id).Should().Equal(passwordDtos);
 }