Esempio n. 1
0
    def it_creates_items(self, time, generate_id):
        generate_id.return_value = 'random'
        time.return_value = 1400000000.00

        key3 = Mock()
        key3.identifier = 'abcd'
        key3.level = 'SL3'

        key5 = Mock()
        key5.identifier = 'efgh'
        key5.level = 'SL5'

        data_source = DataSource('some_path')
        data_source._keys = [key3, key5]

        item = data_source.create_item()

        assert type(item) is AgileKeychainItem
        assert item['uuid'] == 'random'
        assert item['createdAt'] == 1400000000
        assert item['location'] == ''
        assert item['locationKey'] == ''
        assert item['title'] == 'Untitled'
        assert item['typeName'] == 'passwords.Password'
        assert item['keyID'] == 'efgh'
        assert item['encrypted'] == {}
Esempio n. 2
0
    def it_creates_items(self, time, generate_id):
        generate_id.return_value = 'random'
        time.return_value = 1400000000.00

        key3 = Mock()
        key3.identifier = 'abcd'
        key3.level = 'SL3'

        key5 = Mock()
        key5.identifier = 'efgh'
        key5.level = 'SL5'

        data_source = DataSource('some_path')
        data_source._keys = [key3, key5]

        item = data_source.create_item()

        assert type(item) is AgileKeychainItem
        assert item['uuid'] == 'random'
        assert item['createdAt'] == 1400000000
        assert item['location'] == ''
        assert item['locationKey'] == ''
        assert item['title'] == 'Untitled'
        assert item['typeName'] == 'passwords.Password'
        assert item['keyID'] == 'efgh'
        assert item['encrypted'] == {}
Esempio n. 3
0
    def it_unsets_keys_and_triggers_garbage_collection_on_deauthentication(self, gc):
        data_source = DataSource('some_path')
        data_source._keys = [1, 2, 3]
        data_source.deauthenticate()

        gc.collect.assert_called_with()

        assert data_source._keys == []
        assert data_source.is_authenticated() is False
Esempio n. 4
0
    def it_unsets_keys_and_triggers_garbage_collection_on_deauthentication(
            self, gc):
        data_source = DataSource('some_path')
        data_source._keys = [1, 2, 3]
        data_source.deauthenticate()

        gc.collect.assert_called_with()

        assert data_source._keys == []
        assert data_source.is_authenticated() is False
Esempio n. 5
0
    def it_creates_items_item_initialised_with_data(self, generate_id):
        generate_id.return_value = 'random'

        key3 = Mock()
        key3.identifier = 'abcd'
        key3.level = 'SL3'

        key5 = Mock()
        key5.identifier = 'efgh'
        key5.level = 'SL5'

        data_source = DataSource('some_path')
        data_source._keys = [key3, key5]

        item = data_source.create_item({'title': 'Thing'})

        assert type(item) is AgileKeychainItem
        assert item['title'] == 'Thing'
Esempio n. 6
0
    def it_guarantees_generated_item_id_is_unique(self, generate_id, get_item_by_id):
        get_item_by_id.side_effect = [Mock(), ItemNotFoundException]
        generate_id.side_effect = ['123', '567']

        key3 = Mock()
        key3.identifier = 'abcd'
        key3.level = 'SL3'

        key5 = Mock()
        key5.identifier = 'efgh'
        key5.level = 'SL5'

        data_source = DataSource('some_path')
        data_source._keys = [key3, key5]

        item = data_source.create_item()

        assert item['uuid'] == '567'
Esempio n. 7
0
    def it_creates_items_item_initialised_with_data(self, generate_id):
        generate_id.return_value = 'random'

        key3 = Mock()
        key3.identifier = 'abcd'
        key3.level = 'SL3'

        key5 = Mock()
        key5.identifier = 'efgh'
        key5.level = 'SL5'

        data_source = DataSource('some_path')
        data_source._keys = [key3, key5]

        item = data_source.create_item({'title': 'Thing'})

        assert type(item) is AgileKeychainItem
        assert item['title'] == 'Thing'
Esempio n. 8
0
    def it_guarantees_generated_item_id_is_unique(self, generate_id,
                                                  get_item_by_id):
        get_item_by_id.side_effect = [Mock(), ItemNotFoundException]
        generate_id.side_effect = ['123', '567']

        key3 = Mock()
        key3.identifier = 'abcd'
        key3.level = 'SL3'

        key5 = Mock()
        key5.identifier = 'efgh'
        key5.level = 'SL5'

        data_source = DataSource('some_path')
        data_source._keys = [key3, key5]

        item = data_source.create_item()

        assert item['uuid'] == '567'