Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
dms3
go-dms3
Commits
5a8aa1af
Commit
5a8aa1af
authored
10 years ago
by
Juan Batiz-Benet
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ipfsaddr: Transport part.
parent
d0dd22b7
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
32 additions
and
0 deletions
+32
-0
util/ipfsaddr/ipfsaddr.go
util/ipfsaddr/ipfsaddr.go
+12
-0
util/ipfsaddr/ipfsaddr_test.go
util/ipfsaddr/ipfsaddr_test.go
+20
-0
No files found.
util/ipfsaddr/ipfsaddr.go
View file @
5a8aa1af
...
...
@@ -18,6 +18,7 @@ var ErrInvalidAddr = errors.New("invalid ipfs address")
type
IPFSAddr
interface
{
ID
()
peer
.
ID
Multiaddr
()
ma
.
Multiaddr
Transport
()
ma
.
Multiaddr
String
()
string
Equal
(
b
interface
{})
bool
}
...
...
@@ -35,6 +36,10 @@ func (a ipfsAddr) Multiaddr() ma.Multiaddr {
return
a
.
ma
}
func
(
a
ipfsAddr
)
Transport
()
ma
.
Multiaddr
{
return
Transport
(
a
)
}
func
(
a
ipfsAddr
)
String
()
string
{
return
a
.
ma
.
String
()
}
...
...
@@ -98,3 +103,10 @@ func ParseMultiaddr(m ma.Multiaddr) (a IPFSAddr, err error) {
return
ipfsAddr
{
ma
:
m
,
id
:
id
},
nil
}
func
Transport
(
iaddr
IPFSAddr
)
(
maddr
ma
.
Multiaddr
)
{
maddr
=
iaddr
.
Multiaddr
()
split
:=
ma
.
Split
(
maddr
)
maddr
=
ma
.
Join
(
split
[
:
len
(
split
)
-
1
]
...
)
return
}
This diff is collapsed.
Click to expand it.
util/ipfsaddr/ipfsaddr_test.go
View file @
5a8aa1af
...
...
@@ -115,3 +115,23 @@ func TestMultiaddrMatches(t *testing.T) {
}
}
}
func
TestTransport
(
t
*
testing
.
T
)
{
for
_
,
g
:=
range
good
{
a
,
err
:=
ParseString
(
g
)
if
err
!=
nil
{
t
.
Error
(
"failed to parse"
,
g
,
err
)
continue
}
m
:=
newMultiaddr
(
t
,
g
)
split
:=
ma
.
Split
(
m
)
m
=
ma
.
Join
(
split
[
:
len
(
split
)
-
1
]
...
)
if
a
.
Multiaddr
()
.
Equal
(
m
)
{
t
.
Error
(
"should not be equal"
,
a
.
Multiaddr
(),
m
)
}
if
!
Transport
(
a
)
.
Equal
(
m
)
{
t
.
Error
(
"should be equal"
,
Transport
(
a
),
m
)
}
}
}
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment