mirror of
git://jb55.com/damus
synced 2024-09-30 08:50:42 +00:00
8cdbc84093
This adds the initial support code for counting and handling quote reposts. Eventually we are going to replace all of the event counts by stats within nostrdb, but we do this in the meantime now. Signed-off-by: William Casarin <jb55@jb55.com>
57 lines
2.2 KiB
Swift
57 lines
2.2 KiB
Swift
//
|
||
// MockDamusState.swift
|
||
// damusTests
|
||
//
|
||
// Created by Daniel D’Aquino on 2023-10-13.
|
||
//
|
||
|
||
import Foundation
|
||
@testable import damus
|
||
|
||
// Generates a test damus state with configurable mock parameters
|
||
func generate_test_damus_state(
|
||
mock_profile_info: [Pubkey: Profile]?
|
||
) -> DamusState {
|
||
// Create a unique temporary directory
|
||
let ndb = Ndb.test
|
||
let our_pubkey = test_pubkey
|
||
let pool = RelayPool(ndb: ndb)
|
||
let settings = UserSettingsStore()
|
||
|
||
let profiles: Profiles = {
|
||
guard let mock_profile_info, let profiles: Profiles = MockProfiles(mocked_profiles: mock_profile_info, ndb: ndb) else {
|
||
return Profiles.init(ndb: ndb)
|
||
}
|
||
return profiles
|
||
}()
|
||
|
||
let mutelist_manager = MutelistManager()
|
||
let damus = DamusState(pool: pool,
|
||
keypair: test_keypair,
|
||
likes: .init(our_pubkey: our_pubkey),
|
||
boosts: .init(our_pubkey: our_pubkey),
|
||
contacts: .init(our_pubkey: our_pubkey), mutelist_manager: mutelist_manager,
|
||
profiles: profiles,
|
||
dms: .init(our_pubkey: our_pubkey),
|
||
previews: .init(),
|
||
zaps: .init(our_pubkey: our_pubkey),
|
||
lnurls: .init(),
|
||
settings: settings,
|
||
relay_filters: .init(our_pubkey: our_pubkey),
|
||
relay_model_cache: .init(),
|
||
drafts: .init(),
|
||
events: .init(ndb: ndb),
|
||
bookmarks: .init(pubkey: our_pubkey),
|
||
postbox: .init(pool: pool),
|
||
bootstrap_relays: .init(),
|
||
replies: .init(our_pubkey: our_pubkey),
|
||
wallet: .init(settings: settings),
|
||
nav: .init(),
|
||
music: .init(onChange: {_ in }),
|
||
video: .init(),
|
||
ndb: ndb,
|
||
quote_reposts: .init(our_pubkey: our_pubkey) )
|
||
|
||
return damus
|
||
}
|