Skip to content
GitLab
Explore
Projects
Groups
Snippets
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Register
Sign in
Toggle navigation
Menu
Open sidebar
Tiger Ton
mastodon
Commits
253ab265
Commit
253ab265
authored
8 years ago
by
Eugen Rochko
Browse files
Options
Download
Email Patches
Plain Diff
Adding more tests for helpers
parent
b640f356
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
app/helpers/atom_builder_helper.rb
+1
-1
app/helpers/atom_builder_helper.rb
config/environments/test.rb
+1
-0
config/environments/test.rb
spec/helpers/atom_builder_helper_spec.rb
+93
-25
spec/helpers/atom_builder_helper_spec.rb
with
95 additions
and
26 deletions
+95
-26
app/helpers/atom_builder_helper.rb
+
1
-
1
View file @
253ab265
...
...
@@ -3,7 +3,7 @@ module AtomBuilderHelper
@account
.
stream_entries
.
last
?
(
@account
.
updated_at
>
@account
.
stream_entries
.
last
.
created_at
?
@account
.
updated_at
:
@account
.
stream_entries
.
last
.
created_at
)
:
@account
.
updated_at
end
def
entry
(
xml
,
is_root
,
&
block
)
def
entry
(
xml
,
is_root
=
false
,
&
block
)
if
is_root
root_tag
(
xml
,
:entry
,
&
block
)
else
...
...
This diff is collapsed.
Click to expand it.
config/environments/test.rb
+
1
-
0
View file @
253ab265
...
...
@@ -15,6 +15,7 @@ Rails.application.configure do
# Configure static file server for tests with Cache-Control for performance.
config
.
serve_static_files
=
true
config
.
static_cache_control
=
'public, max-age=3600'
config
.
assets
.
digest
=
false
# Show full error reports and disable caching.
config
.
consider_all_requests_local
=
true
...
...
This diff is collapsed.
Click to expand it.
spec/helpers/atom_builder_helper_spec.rb
+
93
-
25
View file @
253ab265
...
...
@@ -6,95 +6,148 @@ RSpec.describe AtomBuilderHelper, type: :helper do
end
describe
'#entry'
do
pending
it
'creates an entry'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
entry
(
xml
)
}).
to
match
'<entry/>'
end
end
describe
'#feed'
do
pending
it
'creates a feed'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
feed
(
xml
)
}).
to
match
'<feed xmlns="http://www.w3.org/2005/Atom" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:activity="http://activitystrea.ms/spec/1.0/" xmlns:poco="http://portablecontacts.net/spec/1.0" xmlns:media="http://purl.org/syndication/atommedia"/>'
end
end
describe
'#unique_id'
do
pending
it
'creates an id'
do
time
=
Time
.
now
expect
(
used_in_builder
{
|
xml
|
helper
.
unique_id
(
xml
,
time
,
1
,
'Status'
)
}).
to
match
"<id>
#{
helper
.
unique_tag
(
time
,
1
,
'Status'
)
}
</id>"
end
end
describe
'#simple_id'
do
pending
it
'creates an id'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
simple_id
(
xml
,
1
)
}).
to
match
'<id>1</id>'
end
end
describe
'#published_at'
do
pending
it
'creates a published tag'
do
time
=
Time
.
now
expect
(
used_in_builder
{
|
xml
|
helper
.
published_at
(
xml
,
time
)
}).
to
match
"<published>
#{
time
.
iso8601
}
</published>"
end
end
describe
'#updated_at'
do
pending
it
'creates an updated tag'
do
time
=
Time
.
now
expect
(
used_in_builder
{
|
xml
|
helper
.
updated_at
(
xml
,
time
)
}).
to
match
"<updated>
#{
time
.
iso8601
}
</updated>"
end
end
describe
'#verb'
do
pending
it
'creates an entry'
do
expect
(
used_with_namespaces
{
|
xml
|
helper
.
verb
(
xml
,
'verb'
)
}).
to
match
'<activity:verb>http://activitystrea.ms/schema/1.0/verb</activity:verb>'
end
end
describe
'#content'
do
pending
it
'creates a content'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
content
(
xml
,
'foo'
)
}).
to
match
'<content type="html">foo</content>'
end
end
describe
'#title'
do
pending
it
'creates a title'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
title
(
xml
,
'foo'
)
}).
to
match
'<title>foo</title>'
end
end
describe
'#author'
do
pending
it
'creates an author'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
author
(
xml
)
}).
to
match
'<author/>'
end
end
describe
'#target'
do
pending
it
'creates a target'
do
expect
(
used_with_namespaces
{
|
xml
|
helper
.
target
(
xml
)
}).
to
match
'<activity:object/>'
end
end
describe
'#object_type'
do
pending
it
'creates an object type'
do
expect
(
used_with_namespaces
{
|
xml
|
helper
.
object_type
(
xml
,
'test'
)
}).
to
match
'<activity:object-type>http://activitystrea.ms/schema/1.0/test</activity:object-type>'
end
end
describe
'#uri'
do
pending
it
'creates a uri'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
uri
(
xml
,
1
)
}).
to
match
'<uri>1</uri>'
end
end
describe
'#name'
do
pending
it
'creates a name'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
name
(
xml
,
1
)
}).
to
match
'<name>1</name>'
end
end
describe
'#summary'
do
pending
it
'creates a summary'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
summary
(
xml
,
1
)
}).
to
match
'<summary>1</summary>'
end
end
describe
'#subtitle'
do
pending
it
'creates a subtitle'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
subtitle
(
xml
,
1
)
}).
to
match
'<subtitle>1</subtitle>'
end
end
describe
'#link_alternate'
do
pending
it
'creates a link'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
link_alternate
(
xml
,
1
)
}).
to
match
'<link rel="alternate" type="text/html" href="1"/>'
end
end
describe
'#link_self'
do
pending
it
'creates a link'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
link_self
(
xml
,
1
)
}).
to
match
'<link rel="self" type="application/atom+xml" href="1"/>'
end
end
describe
'#link_hub'
do
pending
it
'creates a link'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
link_hub
(
xml
,
1
)
}).
to
match
'<link rel="hub" href="1"/>'
end
end
describe
'#link_salmon'
do
pending
it
'creates a link'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
link_salmon
(
xml
,
1
)
}).
to
match
'<link rel="salmon" href="1"/>'
end
end
describe
'#portable_contact'
do
pending
let
(
:account
)
{
Fabricate
(
:account
,
username:
'alice'
,
display_name:
'Alice in Wonderland'
)
}
it
'creates portable contacts entries'
do
expect
(
used_with_namespaces
{
|
xml
|
helper
.
portable_contact
(
xml
,
account
)
}).
to
match
'<poco:displayName>Alice in Wonderland</poco:displayName>'
end
end
describe
'#in_reply_to'
do
pending
it
'creates a thread'
do
expect
(
used_with_namespaces
{
|
xml
|
helper
.
in_reply_to
(
xml
,
'uri'
,
'url'
)
}).
to
match
'<thr:in-reply-to ref="uri" href="url" type="text/html"/>'
end
end
describe
'#link_mention'
do
pending
let
(
:account
)
{
Fabricate
(
:account
,
username:
'alice'
)
}
it
'creates a link'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
link_mention
(
xml
,
account
)
}).
to
match
'<link rel="mentioned" href="http://test.host/users/alice"/>'
end
end
describe
'#disambiguate_uri'
do
...
...
@@ -114,10 +167,25 @@ RSpec.describe AtomBuilderHelper, type: :helper do
end
describe
'#link_avatar'
do
pending
let
(
:account
)
{
Fabricate
(
:account
,
username:
'alice'
)
}
it
'creates a link'
do
expect
(
used_with_namespaces
{
|
xml
|
helper
.
link_avatar
(
xml
,
account
)
}).
to
match
'<link rel="avatar" type="" media:width="300" media:height="300" href="http://test.host/assets/avatars/missing.png"/>'
end
end
describe
'#logo'
do
pending
it
'creates a logo'
do
expect
(
used_in_builder
{
|
xml
|
helper
.
logo
(
xml
,
1
)
}).
to
match
'<logo>1</logo>'
end
end
def
used_in_builder
(
&
block
)
builder
=
Nokogiri
::
XML
::
Builder
.
new
(
&
block
)
builder
.
doc
.
root
.
to_xml
end
def
used_with_namespaces
(
&
block
)
used_in_builder
{
|
xml
|
helper
.
entry
(
xml
,
true
,
&
block
)
}
end
end
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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
Menu
Explore
Projects
Groups
Snippets