mirror of
git://jb55.com/damus
synced 2024-10-06 11:43:21 +00:00
Fix localization and add tests for EventGroupView
This commit is contained in:
parent
64b1a57918
commit
77bcd1b715
@ -15,6 +15,7 @@
|
||||
3A3040EF29A8FEE9008A0F29 /* EventDetailBarTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A3040EE29A8FEE9008A0F29 /* EventDetailBarTests.swift */; };
|
||||
3A3040F129A8FF97008A0F29 /* LocalizationUtil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A3040F029A8FF97008A0F29 /* LocalizationUtil.swift */; };
|
||||
3A3040F329A91366008A0F29 /* ProfileViewTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A3040F229A91366008A0F29 /* ProfileViewTests.swift */; };
|
||||
3A30410129AB12AA008A0F29 /* EventGroupViewTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A30410029AB12AA008A0F29 /* EventGroupViewTests.swift */; };
|
||||
3A4325A82961E11400BFCD9D /* Localizable.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = 3A4325AA2961E11400BFCD9D /* Localizable.stringsdict */; };
|
||||
3AA247FD297E3CFF0090C62D /* RepostsModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AA247FC297E3CFF0090C62D /* RepostsModel.swift */; };
|
||||
3AA247FF297E3D900090C62D /* RepostsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AA247FE297E3D900090C62D /* RepostsView.swift */; };
|
||||
@ -280,6 +281,8 @@
|
||||
3A3040FC29A91F31008A0F29 /* zh-TW */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-TW"; path = "zh-TW.lproj/InfoPlist.strings"; sourceTree = "<group>"; };
|
||||
3A3040FD29A91F31008A0F29 /* zh-TW */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "zh-TW"; path = "zh-TW.lproj/Localizable.stringsdict"; sourceTree = "<group>"; };
|
||||
3A3040FE29A91F31008A0F29 /* zh-TW */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-TW"; path = "zh-TW.lproj/Localizable.strings"; sourceTree = "<group>"; };
|
||||
3A3040FF29AB02D1008A0F29 /* en-US */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "en-US"; path = "en-US.lproj/Localizable.strings"; sourceTree = "<group>"; };
|
||||
3A30410029AB12AA008A0F29 /* EventGroupViewTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EventGroupViewTests.swift; sourceTree = "<group>"; };
|
||||
3A41E559299D52BE001FA465 /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||
3A41E55A299D52BE001FA465 /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = id; path = id.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
3A41E55B299D52BE001FA465 /* id */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = id; path = id.lproj/Localizable.stringsdict; sourceTree = "<group>"; };
|
||||
@ -1032,6 +1035,7 @@
|
||||
3A3040EC29A5CB86008A0F29 /* ReplyDescriptionTests.swift */,
|
||||
3A3040EE29A8FEE9008A0F29 /* EventDetailBarTests.swift */,
|
||||
3A3040F229A91366008A0F29 /* ProfileViewTests.swift */,
|
||||
3A30410029AB12AA008A0F29 /* EventGroupViewTests.swift */,
|
||||
);
|
||||
path = damusTests;
|
||||
sourceTree = "<group>";
|
||||
@ -1490,6 +1494,7 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
3A3040ED29A5CB86008A0F29 /* ReplyDescriptionTests.swift in Sources */,
|
||||
3A30410129AB12AA008A0F29 /* EventGroupViewTests.swift in Sources */,
|
||||
3ACBCB78295FE5C70037388A /* TimeAgoTests.swift in Sources */,
|
||||
DD597CBD2963D85A00C64D32 /* MarkdownTests.swift in Sources */,
|
||||
3A3040EF29A8FEE9008A0F29 /* EventDetailBarTests.swift in Sources */,
|
||||
@ -1604,6 +1609,7 @@
|
||||
3A827A19299FC69D00C4D171 /* ru */,
|
||||
3A3040FA29A91EFC008A0F29 /* zh-HK */,
|
||||
3A3040FE29A91F31008A0F29 /* zh-TW */,
|
||||
3A3040FF29AB02D1008A0F29 /* en-US */,
|
||||
);
|
||||
name = Localizable.strings;
|
||||
sourceTree = "<group>";
|
||||
|
@ -7,8 +7,12 @@
|
||||
|
||||
import Foundation
|
||||
|
||||
func bundleForLocale(locale: Locale) -> Bundle {
|
||||
let path = Bundle.main.path(forResource: locale.identifier, ofType: "lproj")
|
||||
func bundleForLocale(locale: Locale?) -> Bundle {
|
||||
if locale == nil {
|
||||
return Bundle.main
|
||||
}
|
||||
|
||||
let path = Bundle.main.path(forResource: locale!.identifier, ofType: "lproj")
|
||||
return path != nil ? (Bundle(path: path!) ?? Bundle.main) : Bundle.main
|
||||
}
|
||||
|
||||
|
@ -46,62 +46,86 @@ func determine_reacting_to(our_pubkey: String, ev: NostrEvent?) -> ReactingTo {
|
||||
return .tagged_in
|
||||
}
|
||||
|
||||
func determine_reacting_to_text(_ r: ReactingTo) -> String {
|
||||
switch r {
|
||||
case .tagged_in:
|
||||
return "a post you were tagged in"
|
||||
case .your_post:
|
||||
return "your post"
|
||||
case .your_profile:
|
||||
return "your profile"
|
||||
}
|
||||
}
|
||||
|
||||
func event_author_name(profiles: Profiles, _ ev: NostrEvent) -> String {
|
||||
let alice_pk = ev.pubkey
|
||||
let alice_prof = profiles.lookup(id: alice_pk)
|
||||
return Profile.displayName(profile: alice_prof, pubkey: alice_pk)
|
||||
}
|
||||
|
||||
func reacting_to_text(profiles: Profiles, our_pubkey: String, group: EventGroupType, ev: NostrEvent?) -> String {
|
||||
/**
|
||||
Returns a notification string describing user actions in response to an event group type.
|
||||
|
||||
The localization keys read by this function are the following (although some keys may not actually be used in practice):
|
||||
|
||||
"??" - returned when there are no events associated with the specified event group type.
|
||||
|
||||
"reacted_tagged_in_1" - returned when 1 reaction occurred to a post that the current user was tagged in
|
||||
"reacted_tagged_in_2" - returned when 2 reactions occurred to a post that the current user was tagged in
|
||||
"reacted_tagged_in_3" - returned when 3 or more reactions occurred to a post that the current user was tagged in
|
||||
"reacted_your_post_1" - returned when 1 reaction occurred to the current user's post
|
||||
"reacted_your_post_2" - returned when 2 reactions occurred to the current user's post
|
||||
"reacted_your_post_3" - returned when 3 or more reactions occurred to the current user's post
|
||||
"reacted_your_profile_1" - returned when 1 reaction occurred to the current user's profile
|
||||
"reacted_your_profile_2" - returned when 2 reactions occurred to the current user's profile
|
||||
"reacted_your_profile_3" - returned when 3 or more reactions occurred to the current user's profile
|
||||
|
||||
"reposted_tagged_in_1" - returned when 1 repost occurred to a post that the current user was tagged in
|
||||
"reposted_tagged_in_2" - returned when 2 reposts occurred to a post that the current user was tagged in
|
||||
"reposted_tagged_in_3" - returned when 3 or more reposts occurred to a post that the current user was tagged in
|
||||
"reposted_your_post_1" - returned when 1 repost occurred to the current user's post
|
||||
"reposted_your_post_2" - returned when 2 reposts occurred to the current user's post
|
||||
"reposted_your_post_3" - returned when 3 or more reposts occurred to the current user's post
|
||||
"reposted_your_profile_1" - returned when 1 repost occurred to the current user's profile
|
||||
"reposted_your_profile_2" - returned when 2 reposts occurred to the current user's profile
|
||||
"reposted_your_profile_3" - returned when 3 or more reposts occurred to the current user's profile
|
||||
|
||||
"zapped_tagged_in_1" - returned when 1 zap occurred to a post that the current user was tagged in
|
||||
"zapped_tagged_in_2" - returned when 2 zaps occurred to a post that the current user was tagged in
|
||||
"zapped_tagged_in_3" - returned when 3 or more zaps occurred to a post that the current user was tagged in
|
||||
"zapped_your_post_1" - returned when 1 zap occurred to the current user's post
|
||||
"zapped_your_post_2" - returned when 2 zaps occurred to the current user's post
|
||||
"zapped_your_post_3" - returned when 3 or more zaps occurred to the current user's post
|
||||
"zapped_your_profile_1" - returned when 1 zap occurred to the current user's profile
|
||||
"zapped_your_profile_2" - returned when 2 zaps occurred to the current user's profile
|
||||
"zapped_your_profile_3" - returned when 3 or more zaps occurred to the current user's profile
|
||||
*/
|
||||
func reacting_to_text(profiles: Profiles, our_pubkey: String, group: EventGroupType, ev: NostrEvent?, locale: Locale? = nil) -> String {
|
||||
let verb = reacting_to_verb(group: group)
|
||||
|
||||
let reacting_to = determine_reacting_to(our_pubkey: our_pubkey, ev: ev)
|
||||
let target = determine_reacting_to_text(reacting_to)
|
||||
|
||||
if group.events.count == 1 {
|
||||
let localization_key = "\(verb)_\(reacting_to)_\(min(group.events.count, 3))"
|
||||
let bundle = bundleForLocale(locale: locale)
|
||||
|
||||
switch group.events.count {
|
||||
case 0:
|
||||
return NSLocalizedString("??", comment: "")
|
||||
case 1:
|
||||
let ev = group.events.first!
|
||||
let profile = profiles.lookup(id: ev.pubkey)
|
||||
let display_name = Profile.displayName(profile: profile, pubkey: ev.pubkey)
|
||||
return String(format: "%@ is %@ %@", display_name, verb, target)
|
||||
}
|
||||
|
||||
if group.events.count == 2 {
|
||||
|
||||
return String(format: bundle.localizedString(forKey: localization_key, value: bundleForLocale(locale: Locale(identifier: "en-US")).localizedString(forKey: localization_key, value: nil, table: nil), table: nil), locale: locale, display_name)
|
||||
case 2:
|
||||
let alice_name = event_author_name(profiles: profiles, group.events[0])
|
||||
let bob_name = event_author_name(profiles: profiles, group.events[1])
|
||||
|
||||
return String(format: "%@ and %@ are %@ %@", alice_name, bob_name, verb, target)
|
||||
}
|
||||
|
||||
if group.events.count > 2 {
|
||||
|
||||
return String(format: bundle.localizedString(forKey: localization_key, value: bundleForLocale(locale: Locale(identifier: "en-US")).localizedString(forKey: localization_key, value: nil, table: nil), table: nil), locale: locale, alice_name, bob_name)
|
||||
default:
|
||||
let alice_name = event_author_name(profiles: profiles, group.events.first!)
|
||||
let count = group.events.count - 1
|
||||
|
||||
return String(format: "%@ and %d other people are %@ %@", alice_name, count, verb, target)
|
||||
|
||||
return String(format: bundle.localizedString(forKey: localization_key, value: bundleForLocale(locale: Locale(identifier: "en-US")).localizedString(forKey: localization_key, value: nil, table: nil), table: nil), locale: locale, count, alice_name)
|
||||
}
|
||||
|
||||
return "??"
|
||||
}
|
||||
|
||||
func reacting_to_verb(group: EventGroupType) -> String {
|
||||
switch group {
|
||||
case .reaction:
|
||||
return "reacting"
|
||||
return "reacted"
|
||||
case .repost:
|
||||
return "reposting"
|
||||
return "reposted"
|
||||
case .zap: fallthrough
|
||||
case .profile_zap:
|
||||
return "zapping"
|
||||
return "zapped"
|
||||
}
|
||||
}
|
||||
|
||||
@ -111,7 +135,7 @@ struct EventGroupView: View {
|
||||
let group: EventGroupType
|
||||
|
||||
var GroupDescription: some View {
|
||||
Text(reacting_to_text(profiles: state.profiles, our_pubkey: state.pubkey, group: group, ev: event))
|
||||
Text(verbatim: "\(reacting_to_text(profiles: state.profiles, our_pubkey: state.pubkey, group: group, ev: event))")
|
||||
}
|
||||
|
||||
func ZapIcon(_ zapgrp: ZapGroup) -> some View {
|
||||
@ -168,8 +192,9 @@ struct EventGroupView: View {
|
||||
}
|
||||
|
||||
let test_encoded_post = "{\"id\": \"8ba545ab96959fe0ce7db31bc10f3ac3aa5353bc4428dbf1e56a7be7062516db\",\"pubkey\": \"7e27509ccf1e297e1df164912a43406218f8bd80129424c3ef798ca3ef5c8444\",\"created_at\": 1677013417,\"kind\": 1,\"tags\": [],\"content\": \"hello\",\"sig\": \"93684f15eddf11f42afbdd81828ee9fc35350344d8650c78909099d776e9ad8d959cd5c4bff7045be3b0b255144add43d0feef97940794a1bc9c309791bebe4a\"}"
|
||||
let test_repost = NostrEvent(id: "", content: test_encoded_post, pubkey: "", kind: 6, tags: [], createdAt: 1)
|
||||
let test_reposts = [test_repost, test_repost]
|
||||
let test_repost_1 = NostrEvent(id: "", content: test_encoded_post, pubkey: "pk1", kind: 6, tags: [], createdAt: 1)
|
||||
let test_repost_2 = NostrEvent(id: "", content: test_encoded_post, pubkey: "pk2", kind: 6, tags: [], createdAt: 1)
|
||||
let test_reposts = [test_repost_1, test_repost_2]
|
||||
let test_event_group = EventGroup(events: test_reposts)
|
||||
|
||||
struct EventGroupView_Previews: PreviewProvider {
|
||||
|
BIN
damus/en-US.lproj/Localizable.strings
Normal file
BIN
damus/en-US.lproj/Localizable.strings
Normal file
Binary file not shown.
@ -34,6 +34,54 @@
|
||||
<string>Followers</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reacted_tagged_in_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REACTED@</string>
|
||||
<key>REACTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reacted to a post you were tagged in</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reacted to a post you were tagged in</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reacted_your_post_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REACTED@</string>
|
||||
<key>REACTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reacted to your post</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reacted to your post</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reacted_your_profile_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REACTED@</string>
|
||||
<key>REACTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reacted to your profile</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reacted to your profile</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reactions_count</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
@ -82,6 +130,54 @@
|
||||
<string>Replying to %2$@, %3$@ & %1$d others</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reposted_tagged_in_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REPOSTED@</string>
|
||||
<key>REPOSTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reposted a post you were tagged in</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reposted a post you were tagged in</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reposted_your_post_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REPOSTED@</string>
|
||||
<key>REPOSTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reposted your post</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reposted your post</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reposted_your_profile_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REPOSTED@</string>
|
||||
<key>REPOSTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reposted your profile</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reposted your profile</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reposts_count</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
@ -114,6 +210,54 @@
|
||||
<string>%2$@ sats</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>zapped_tagged_in_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@ZAPPED@</string>
|
||||
<key>ZAPPED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other zapped a post you were tagged in</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others zapped a post you were tagged in</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>zapped_your_post_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@ZAPPED@</string>
|
||||
<key>ZAPPED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other zapped your post</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others zapped your post</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>zapped_your_profile_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@ZAPPED@</string>
|
||||
<key>ZAPPED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other zapped your profile</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others zapped your profile</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>zaps_count</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
|
@ -32,6 +32,11 @@
|
||||
<tool tool-id="com.apple.dt.xcode" tool-name="Xcode" tool-version="14.2" build-num="14C18"/>
|
||||
</header>
|
||||
<body>
|
||||
<trans-unit id="%@" xml:space="preserve">
|
||||
<source>%@</source>
|
||||
<target>%@</target>
|
||||
<note>No comment provided by engineer.</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="%@ %@" xml:space="preserve">
|
||||
<source>%@ %@</source>
|
||||
<target>%@ %@</target>
|
||||
@ -73,6 +78,11 @@ Sentence composed of 2 variables to describe how many people are following a use
|
||||
<target>'%@' is an invalid NIP-05 identifier. It should look like an email.</target>
|
||||
<note>Description of why the nip05 identifier is invalid.</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="??" xml:space="preserve">
|
||||
<source>??</source>
|
||||
<target>??</target>
|
||||
<note>No comment provided by engineer.</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="API Key (optional)" xml:space="preserve">
|
||||
<source>API Key (optional)</source>
|
||||
<target>API Key (optional)</target>
|
||||
@ -1209,6 +1219,66 @@ Label for filter for seeing your posts and replies (instead of only your posts).
|
||||
<target>optional</target>
|
||||
<note>Label indicating that a form input is optional.</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reacted_tagged_in_1" xml:space="preserve">
|
||||
<source>%@ reacted to a post you were tagged in</source>
|
||||
<target>%@ reacted to a post you were tagged in</target>
|
||||
<note>Notification that a user reacted to a post that the current user was tagged in</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reacted_tagged_in_2" xml:space="preserve">
|
||||
<source>%@ and %@ reacted to a post you were tagged in</source>
|
||||
<target>%@ and %@ reacted to a post you were tagged in</target>
|
||||
<note>Notification that 2 users reacted to a post that the current user was tagged in</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reacted_your_post_1" xml:space="preserve">
|
||||
<source>%@ reacted to your post</source>
|
||||
<target>%@ reacted to your post</target>
|
||||
<note>Notification that a user reacted to the current user's post</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reacted_your_post_2" xml:space="preserve">
|
||||
<source>%@ and %@ reacted to your post</source>
|
||||
<target>%@ and %@ reacted to your post</target>
|
||||
<note>Notification that 2 users reacted to the current user's profile</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reacted_your_profile_1" xml:space="preserve">
|
||||
<source>%@ reacted to your profile</source>
|
||||
<target>%@ reacted to your profile</target>
|
||||
<note>Notification that a user reacted to the current user's profile</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reacted_your_profile_2" xml:space="preserve">
|
||||
<source>%@ and %@ reacted to your profile</source>
|
||||
<target>%@ and %@ reacted to your profile</target>
|
||||
<note>Notification that 2 users reacted to the current user's profile</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reposted_tagged_in_1" xml:space="preserve">
|
||||
<source>%@ reposted a post you were tagged in</source>
|
||||
<target>%@ reposted a post you were tagged in</target>
|
||||
<note>Notification that a user reposted a post that the current user was tagged in</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reposted_tagged_in_2" xml:space="preserve">
|
||||
<source>%@ and %@ reposted a post you were tagged in</source>
|
||||
<target>%@ and %@ reposted a post you were tagged in</target>
|
||||
<note>Notification that 2 users reposted a post that the current user was tagged in</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reposted_your_post_1" xml:space="preserve">
|
||||
<source>%@ reposted your post</source>
|
||||
<target>%@ reposted your post</target>
|
||||
<note>Notification that a user reposted the current user's post</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reposted_your_post_2" xml:space="preserve">
|
||||
<source>%@ and %@ reposted your post</source>
|
||||
<target>%@ and %@ reposted your post</target>
|
||||
<note>Notification that 2 users reposted the current user's post</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reposted_your_profile_1" xml:space="preserve">
|
||||
<source>%@ reposted your profile</source>
|
||||
<target>%@ reposted your profile</target>
|
||||
<note>Notification that a user reposted the current user's profile</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="reposted_your_profile_2" xml:space="preserve">
|
||||
<source>%@ and %@ reposted your profile</source>
|
||||
<target>%@ and %@ reposted your profile</target>
|
||||
<note>Notification that 2 users reposted the current user's profile</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="satoshi" xml:space="preserve">
|
||||
<source>satoshi</source>
|
||||
<target>satoshi</target>
|
||||
@ -1224,6 +1294,36 @@ Label for filter for seeing your posts and replies (instead of only your posts).
|
||||
<target>you</target>
|
||||
<note>You, in this context, is the person who controls their own social network. You is used in the context of a larger sentence that welcomes the reader to the social network that they control themself.</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="zapped_tagged_in_1" xml:space="preserve">
|
||||
<source>%@ zapped a post you were tagged in</source>
|
||||
<target>%@ zapped a post you were tagged in</target>
|
||||
<note>Notification that a user zapped a post that the current user was tagged in</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="zapped_tagged_in_2" xml:space="preserve">
|
||||
<source>%@ and %@ zapped a post you were tagged in</source>
|
||||
<target>%@ and %@ zapped a post you were tagged in</target>
|
||||
<note>Notification that 2 users zapped a post that the current user was tagged in</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="zapped_your_post_1" xml:space="preserve">
|
||||
<source>%@ zapped your post</source>
|
||||
<target>%@ zapped your post</target>
|
||||
<note>Notification that a user zapped the current user's post</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="zapped_your_post_2" xml:space="preserve">
|
||||
<source>%@ and %@ zapped your post</source>
|
||||
<target>%@ and %@ zapped your post</target>
|
||||
<note>Notification that 2 users zapped the current user's post</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="zapped_your_profile_1" xml:space="preserve">
|
||||
<source>%@ zapped your profile</source>
|
||||
<target>%@ zapped your profile</target>
|
||||
<note>Notification that a user zapped the current user's profile</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="zapped_your_profile_2" xml:space="preserve">
|
||||
<source>%@ and %@ zapped your profile</source>
|
||||
<target>%@ and %@ zapped your profile</target>
|
||||
<note>Notification that 2 users zapped the current user's profile</note>
|
||||
</trans-unit>
|
||||
<trans-unit id="⚡️ %@" xml:space="preserve">
|
||||
<source>⚡️ %@</source>
|
||||
<target>⚡️ %@</target>
|
||||
@ -1266,6 +1366,51 @@ Label for filter for seeing your posts and replies (instead of only your posts).
|
||||
<target>%#@FOLLOWERS@</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reacted_tagged_in_3:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@REACTED@</source>
|
||||
<target>%#@REACTED@</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reacted_tagged_in_3:dict/REACTED:dict/one:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d other reacted to a post you were tagged in</source>
|
||||
<target>%2$@ and %1$d other reacted to a post you were tagged in</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reacted_tagged_in_3:dict/REACTED:dict/other:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d others reacted to a post you were tagged in</source>
|
||||
<target>%2$@ and %1$d others reacted to a post you were tagged in</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reacted_your_post_3:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@REACTED@</source>
|
||||
<target>%#@REACTED@</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reacted_your_post_3:dict/REACTED:dict/one:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d other reacted to your post</source>
|
||||
<target>%2$@ and %1$d other reacted to your post</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reacted_your_post_3:dict/REACTED:dict/other:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d others reacted to your post</source>
|
||||
<target>%2$@ and %1$d others reacted to your post</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reacted_your_profile_3:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@REACTED@</source>
|
||||
<target>%#@REACTED@</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reacted_your_profile_3:dict/REACTED:dict/one:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d other reacted to your profile</source>
|
||||
<target>%2$@ and %1$d other reacted to your profile</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reacted_your_profile_3:dict/REACTED:dict/other:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d others reacted to your profile</source>
|
||||
<target>%2$@ and %1$d others reacted to your profile</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reactions_count:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@REACTIONS@</source>
|
||||
<target>%#@REACTIONS@</target>
|
||||
@ -1311,6 +1456,51 @@ Label for filter for seeing your posts and replies (instead of only your posts).
|
||||
<target>Replying to %2$@, %3$@ & %1$d others</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reposted_tagged_in_3:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@REPOSTED@</source>
|
||||
<target>%#@REPOSTED@</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reposted_tagged_in_3:dict/REPOSTED:dict/one:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d other reposted a post you were tagged in</source>
|
||||
<target>%2$@ and %1$d other reposted a post you were tagged in</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reposted_tagged_in_3:dict/REPOSTED:dict/other:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d others reposted a post you were tagged in</source>
|
||||
<target>%2$@ and %1$d others reposted a post you were tagged in</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reposted_your_post_3:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@REPOSTED@</source>
|
||||
<target>%#@REPOSTED@</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reposted_your_post_3:dict/REPOSTED:dict/one:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d other reposted your post</source>
|
||||
<target>%2$@ and %1$d other reposted your post</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reposted_your_post_3:dict/REPOSTED:dict/other:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d others reposted your post</source>
|
||||
<target>%2$@ and %1$d others reposted your post</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reposted_your_profile_3:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@REPOSTED@</source>
|
||||
<target>%#@REPOSTED@</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reposted_your_profile_3:dict/REPOSTED:dict/one:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d other reposted your profile</source>
|
||||
<target>%2$@ and %1$d other reposted your profile</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reposted_your_profile_3:dict/REPOSTED:dict/other:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d others reposted your profile</source>
|
||||
<target>%2$@ and %1$d others reposted your profile</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/reposts_count:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@REPOSTS@</source>
|
||||
<target>%#@REPOSTS@</target>
|
||||
@ -1341,6 +1531,51 @@ Label for filter for seeing your posts and replies (instead of only your posts).
|
||||
<target>%2$@ sats</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/zapped_tagged_in_3:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@ZAPPED@</source>
|
||||
<target>%#@ZAPPED@</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/zapped_tagged_in_3:dict/ZAPPED:dict/one:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d other zapped a post you were tagged in</source>
|
||||
<target>%2$@ and %1$d other zapped a post you were tagged in</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/zapped_tagged_in_3:dict/ZAPPED:dict/other:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d others zapped a post you were tagged in</source>
|
||||
<target>%2$@ and %1$d others zapped a post you were tagged in</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/zapped_your_post_3:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@ZAPPED@</source>
|
||||
<target>%#@ZAPPED@</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/zapped_your_post_3:dict/ZAPPED:dict/one:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d other zapped your post</source>
|
||||
<target>%2$@ and %1$d other zapped your post</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/zapped_your_post_3:dict/ZAPPED:dict/other:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d others zapped your post</source>
|
||||
<target>%2$@ and %1$d others zapped your post</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/zapped_your_profile_3:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@ZAPPED@</source>
|
||||
<target>%#@ZAPPED@</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/zapped_your_profile_3:dict/ZAPPED:dict/one:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d other zapped your profile</source>
|
||||
<target>%2$@ and %1$d other zapped your profile</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/zapped_your_profile_3:dict/ZAPPED:dict/other:dict/:string" xml:space="preserve">
|
||||
<source>%2$@ and %1$d others zapped your profile</source>
|
||||
<target>%2$@ and %1$d others zapped your profile</target>
|
||||
<note/>
|
||||
</trans-unit>
|
||||
<trans-unit id="/zaps_count:dict/NSStringLocalizedFormatKey:dict/:string" xml:space="preserve">
|
||||
<source>%#@ZAPS@</source>
|
||||
<target>%#@ZAPS@</target>
|
||||
|
Binary file not shown.
@ -34,6 +34,54 @@
|
||||
<string>Followers</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reacted_tagged_in_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REACTED@</string>
|
||||
<key>REACTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reacted to a post you were tagged in</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reacted to a post you were tagged in</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reacted_your_post_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REACTED@</string>
|
||||
<key>REACTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reacted to your post</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reacted to your post</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reacted_your_profile_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REACTED@</string>
|
||||
<key>REACTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reacted to your profile</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reacted to your profile</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reactions_count</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
@ -82,6 +130,54 @@
|
||||
<string>Replying to %2$@, %3$@ & %1$d others</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reposted_tagged_in_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REPOSTED@</string>
|
||||
<key>REPOSTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reposted a post you were tagged in</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reposted a post you were tagged in</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reposted_your_post_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REPOSTED@</string>
|
||||
<key>REPOSTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reposted your post</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reposted your post</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reposted_your_profile_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@REPOSTED@</string>
|
||||
<key>REPOSTED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other reposted your profile</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others reposted your profile</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>reposts_count</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
@ -114,6 +210,54 @@
|
||||
<string>%2$@ sats</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>zapped_tagged_in_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@ZAPPED@</string>
|
||||
<key>ZAPPED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other zapped a post you were tagged in</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others zapped a post you were tagged in</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>zapped_your_post_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@ZAPPED@</string>
|
||||
<key>ZAPPED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other zapped your post</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others zapped your post</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>zapped_your_profile_3</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
<string>%#@ZAPPED@</string>
|
||||
<key>ZAPPED</key>
|
||||
<dict>
|
||||
<key>NSStringFormatSpecTypeKey</key>
|
||||
<string>NSStringPluralRuleType</string>
|
||||
<key>NSStringFormatValueTypeKey</key>
|
||||
<string>d</string>
|
||||
<key>one</key>
|
||||
<string>%2$@ and %1$d other zapped your profile</string>
|
||||
<key>other</key>
|
||||
<string>%2$@ and %1$d others zapped your profile</string>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>zaps_count</key>
|
||||
<dict>
|
||||
<key>NSStringLocalizedFormatKey</key>
|
||||
|
42
damusTests/EventGroupViewTests.swift
Normal file
42
damusTests/EventGroupViewTests.swift
Normal file
@ -0,0 +1,42 @@
|
||||
//
|
||||
// EventGroupViewTests.swift
|
||||
// damusTests
|
||||
//
|
||||
// Created by Terry Yiu on 2/26/23.
|
||||
//
|
||||
|
||||
import XCTest
|
||||
@testable import damus
|
||||
|
||||
final class EventGroupViewTests: XCTestCase {
|
||||
|
||||
override func setUpWithError() throws {
|
||||
// Put setup code here. This method is called before the invocation of each test method in the class.
|
||||
}
|
||||
|
||||
override func tearDownWithError() throws {
|
||||
// Put teardown code here. This method is called after the invocation of each test method in the class.
|
||||
}
|
||||
|
||||
func testReactingToText() throws {
|
||||
let enUsLocale = Locale(identifier: "en-US")
|
||||
let damusState = test_damus_state()
|
||||
|
||||
let encodedPost = "{\"id\": \"8ba545ab96959fe0ce7db31bc10f3ac3aa5353bc4428dbf1e56a7be7062516db\",\"pubkey\": \"7e27509ccf1e297e1df164912a43406218f8bd80129424c3ef798ca3ef5c8444\",\"created_at\": 1677013417,\"kind\": 1,\"tags\": [],\"content\": \"hello\",\"sig\": \"93684f15eddf11f42afbdd81828ee9fc35350344d8650c78909099d776e9ad8d959cd5c4bff7045be3b0b255144add43d0feef97940794a1bc9c309791bebe4a\"}"
|
||||
let repost1 = NostrEvent(id: "", content: encodedPost, pubkey: "pk1", kind: NostrKind.boost.rawValue, tags: [], createdAt: 1)
|
||||
let repost2 = NostrEvent(id: "", content: encodedPost, pubkey: "pk2", kind: NostrKind.boost.rawValue, tags: [], createdAt: 1)
|
||||
|
||||
XCTAssertEqual(reacting_to_text(profiles: damusState.profiles, our_pubkey: damusState.pubkey, group: .repost(EventGroup(events: [])), ev: test_event, locale: enUsLocale), "??")
|
||||
XCTAssertEqual(reacting_to_text(profiles: damusState.profiles, our_pubkey: damusState.pubkey, group: .repost(EventGroup(events: [repost1])), ev: test_event, locale: enUsLocale), "pk1:pk1 reposted a post you were tagged in")
|
||||
XCTAssertEqual(reacting_to_text(profiles: damusState.profiles, our_pubkey: damusState.pubkey, group: .repost(EventGroup(events: [repost1, repost2])), ev: test_event, locale: enUsLocale), "pk1:pk1 and pk2:pk2 reposted a post you were tagged in")
|
||||
XCTAssertEqual(reacting_to_text(profiles: damusState.profiles, our_pubkey: damusState.pubkey, group: .repost(EventGroup(events: [repost1, repost2, repost2])), ev: test_event, locale: enUsLocale), "pk1:pk1 and 2 others reposted a post you were tagged in")
|
||||
|
||||
Bundle.main.localizations.map { Locale(identifier: $0) }.forEach {
|
||||
XCTAssertNoThrow(reacting_to_text(profiles: damusState.profiles, our_pubkey: damusState.pubkey, group: .repost(EventGroup(events: [])), ev: test_event, locale: $0), "??")
|
||||
XCTAssertNoThrow(reacting_to_text(profiles: damusState.profiles, our_pubkey: damusState.pubkey, group: .repost(EventGroup(events: [repost1])), ev: test_event, locale: $0))
|
||||
XCTAssertNoThrow(reacting_to_text(profiles: damusState.profiles, our_pubkey: damusState.pubkey, group: .repost(EventGroup(events: [repost1, repost2])), ev: test_event, locale: $0))
|
||||
XCTAssertNoThrow(reacting_to_text(profiles: damusState.profiles, our_pubkey: damusState.pubkey, group: .repost(EventGroup(events: [repost1, repost2, repost2])), ev: test_event, locale: $0))
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@ -4,4 +4,4 @@
|
||||
xcodebuild -exportLocalizations -project damus.xcodeproj -localizationPath "damus" -exportLanguage en-US
|
||||
|
||||
# Generates all SwiftUI Text() wrapped localized strings.
|
||||
genstrings -o "damus/en-US.xcloc/Source Contents/damus/en-US.lproj/" -SwiftUI **/*.swift
|
||||
genstrings -a -d -o "damus/en-US.xcloc/Source Contents/damus/en-US.lproj/" -SwiftUI **/*.swift
|
||||
|
Loading…
Reference in New Issue
Block a user