blob: c12af76252a595d0d660457e66de1d599261fda1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
# -*- encoding: utf-8 -*-
require "spec_helper"
describe ApplicationHelper do
describe "#logged_in?" do
context "when logged in" do
before do
session[:account] = FactoryGirl.create(:account_1)
session[:user_id] = session[:account].user_id
end
subject { !!helper.logged_in? }
it { should be true }
end
context "when not logged in" do
before do
session[:account] = session[:user_id] = nil
end
subject { !!helper.logged_in? }
it { should be false }
end
end
describe "#format_time" do
let(:str) { "2013-04-14 01:02:03" }
let(:source) { Time.parse("#{str} +09:00") }
subject { helper.format_time(source) }
it { should eq str }
end
describe "#format_tweet_text" do
subject { helper.format_tweet_text(str) }
context "when contains an @mention" do
let(:str) { "abcde <mention:cn> eigt" }
it { should eq "abcde <a href=\"/cn\">@cn</a> eigt" }
end
context "when contains an url" do
let(:str) { "abcde <url:https\\://pbs.twimg.com/media/BL6UraBCIAAyBLH.png\\:large:pbs.twimg.com/media/BL6UraBC…> !!" }
it { should eq "abcde <a href=\"https://pbs.twimg.com/media/BL6UraBCIAAyBLH.png:large\">pbs.twimg.com/media/BL6UraBC…</a> !!" }
end
context "when contains a hashtag" do
let(:str) { "aidf <hashtag:hashtags> end" }
it { should eq "aidf <a href=\"https://twitter.com/search?q=%23hashtags\">#hashtags</a> end" }
end
context "when contains a symbol" do
let(:str) { "aidf <symbol:kodaira> end" }
it { should eq "aidf <a href=\"https://twitter.com/search?q=%24kodaira\">$kodaira</a> end" }
end
context "when mixed" do
let(:str) { "<mention:cn> <symbol:see> this <hashtag:photo> <url:https\\://pbs.twimg.com/media/BL6UraBCIAAyBLH.png\\:large:pbs.twimg.com/media/BL6UraBC…>" }
it { should eq "<a href=\"/cn\">@cn</a> <a href=\"https://twitter.com/search?q=%24see\">$see</a> this <a href=\"https://twitter.com/search?q=%23photo\">#photo</a> <a href=\"https://pbs.twimg.com/media/BL6UraBCIAAyBLH.png:large\">pbs.twimg.com/media/BL6UraBC…</a>" }
end
end
describe "#twitter_status_url" do
let(:user) { FactoryGirl.create(:user) }
let(:tweet) { FactoryGirl.create(:tweet, user: user) }
subject { helper.twitter_status_url(tweet) }
it { should eq "https://twitter.com/#{user.screen_name}/status/#{tweet.id}" }
end
describe "#twitter_user_url" do
let(:screen_name) { "screen_name" }
subject { helper.twitter_user_url(screen_name) }
it { should eq "https://twitter.com/#{screen_name}" }
end
describe "#title" do
let(:user) { FactoryGirl.create(:user) }
let(:tweet) { FactoryGirl.create(:tweet, user: user, text: "<mention:cn> <symbol:see> this <hashtag:photo> > <url:https\\://pbs.twimg.com/media/BL6UraBCIAAyBLH.png\\:large:pbs.twimg.com/media/BL6UraBC…> <") }
before { @user = user; @tweet = tweet }
subject { helper.title }
it { should eq "\"@cn $see this #photo > pbs.twimg.com/media/BL6UraBC… <\" from #{user.screen_name} - aclog" }
end
end
|