mirror of
https://github.com/nbd-wtf/go-nostr.git
synced 2025-07-12 20:42:25 +02:00
nip29: fix group address parsing and encoding order.
This commit is contained in:
@ -15,7 +15,7 @@ type GroupAddress struct {
|
||||
|
||||
func (gid GroupAddress) String() string {
|
||||
p, _ := url.Parse(gid.Relay)
|
||||
return fmt.Sprintf("%s'%s", gid.ID, p.Host)
|
||||
return fmt.Sprintf("%s'%s", p.Host, gid.ID)
|
||||
}
|
||||
|
||||
func (gid GroupAddress) IsValid() bool {
|
||||
@ -31,7 +31,7 @@ func ParseGroupAddress(raw string) (GroupAddress, error) {
|
||||
if len(spl) != 2 {
|
||||
return GroupAddress{}, fmt.Errorf("invalid group id")
|
||||
}
|
||||
return GroupAddress{ID: spl[0], Relay: nostr.NormalizeURL(spl[1])}, nil
|
||||
return GroupAddress{ID: spl[1], Relay: nostr.NormalizeURL(spl[0])}, nil
|
||||
}
|
||||
|
||||
type Group struct {
|
||||
|
@ -12,7 +12,7 @@ const (
|
||||
)
|
||||
|
||||
func TestGroupEventBackAndForth(t *testing.T) {
|
||||
group1, _ := NewGroup("xyz'relay.com")
|
||||
group1, _ := NewGroup("relay.com'xyz")
|
||||
group1.Name = "banana"
|
||||
group1.Private = true
|
||||
meta1 := group1.ToMetadataEvent()
|
||||
@ -22,7 +22,7 @@ func TestGroupEventBackAndForth(t *testing.T) {
|
||||
t.Fatalf("translation of group1 to metadata event failed: %s", meta1)
|
||||
}
|
||||
|
||||
group2, _ := NewGroup("abc'groups.com")
|
||||
group2, _ := NewGroup("groups.com'abc")
|
||||
group2.Members[ALICE] = &Role{Name: "nada", Permissions: map[Permission]struct{}{PermAddUser: {}}}
|
||||
group2.Members[BOB] = &Role{Name: "nada", Permissions: map[Permission]struct{}{PermEditMetadata: {}}}
|
||||
group2.Members[CAROL] = EmptyRole
|
||||
|
Reference in New Issue
Block a user