poptart 0.0.13 → 0.0.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/lib/poptart.rb +1 -4
- data/lib/poptart/link.rb +9 -0
- data/lib/poptart/model.rb +13 -29
- data/lib/poptart/question.rb +21 -17
- data/lib/poptart/root.rb +10 -1
- data/lib/poptart/survey.rb +34 -7
- data/lib/poptart/survey_question.rb +32 -12
- data/lib/poptart/user.rb +4 -21
- data/lib/version.rb +1 -1
- data/poptart.gemspec +0 -4
- data/spec/lib/poptart/model_spec.rb +95 -0
- data/spec/lib/poptart/question_spec.rb +47 -0
- data/spec/lib/poptart/root_spec.rb +50 -0
- data/spec/lib/poptart/survey_question_spec.rb +166 -0
- data/spec/lib/poptart/survey_spec.rb +105 -0
- data/spec/lib/poptart/user_spec.rb +45 -0
- data/spec/requests/questions_spec.rb +31 -0
- data/spec/requests/survey_questions_spec.rb +150 -0
- data/spec/requests/surveys_spec.rb +34 -5
- data/spec/requests/{user_management_spec.rb → users_spec.rb} +5 -5
- data/spec/spec_helper.rb +1 -4
- data/spec/vcr/answering/survey_questions_answers_a_multiple_choice_question.yml +1527 -1596
- data/spec/vcr/answering/survey_questions_answers_a_survey_question.yml +2942 -2035
- data/spec/vcr/answering/survey_questions_creates_and_returns_a_random_question_survey.yml +254 -70
- data/spec/vcr/answering/survey_questions_creates_and_returns_an_empty_survey.yml +110 -48
- data/spec/vcr/answering/survey_questions_finds_survey_question_for_id.yml +1618 -286
- data/spec/vcr/poptart/survey/adds_a_question_to_a_survey.yml +1939 -0
- data/spec/vcr/poptart/survey/creates_a_random_survey.yml +318 -0
- data/spec/vcr/poptart/survey/creates_an_empty_survey.yml +702 -0
- data/spec/vcr/poptart/survey/returns_a_survey_by_id.yml +618 -0
- data/spec/vcr/poptart/user/creates_a_user.yml +179 -0
- data/spec/vcr/{user/management_creates_a_user.yml → poptart/user/returns_a_user.yml} +72 -69
- data/spec/vcr/questions/creates_a_question.yml +186 -0
- data/spec/vcr/questions/finds_a_question_by_id.yml +326 -0
- data/spec/vcr/questions/finds_a_question_by_key.yml +144 -0
- data/spec/vcr/questions/returns_all_answered_survey_questions_for_a_question.yml +1021 -0
- data/spec/vcr/retrieving/answers_returns_all_answered_survey_questions_for_a_question.yml +533 -479
- data/spec/vcr/survey/questions_answers_a_multiple_choice_question.yml +1454 -0
- data/spec/vcr/survey/questions_answers_a_survey_question.yml +1772 -0
- data/spec/vcr/survey/questions_creates_and_returns_an_empty_survey.yml +372 -0
- data/spec/vcr/survey/questions_finds_survey_question_for_id.yml +3083 -0
- data/spec/vcr/survey/questions_returns_all_answered_survey_questions_for_a_question.yml +5756 -0
- data/spec/vcr/survey/questions_returns_all_answered_survey_questions_for_a_question_by_key.yml +973 -0
- data/spec/vcr/survey/questions_returns_all_answered_survey_questions_for_a_survey.yml +620 -0
- metadata +55 -72
- data/lib/poptart/boolean_question.rb +0 -14
- data/lib/poptart/multiple_response_question.rb +0 -9
- data/lib/poptart/range_question.rb +0 -9
- data/lib/poptart/time_question.rb +0 -9
- data/spec/requests/answering_survey_questions_spec.rb +0 -79
- data/spec/requests/answers_spec.rb +0 -45
- data/spec/requests/creating_questions_spec.rb +0 -30
@@ -0,0 +1,47 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Poptart::Question do
|
4
|
+
context '.create' do
|
5
|
+
it 'returns a created question' do
|
6
|
+
response = {
|
7
|
+
'text' => 'Do you like poptarts?',
|
8
|
+
'question_type' => 'boolean',
|
9
|
+
'responses' => ['Yes', 'No'],
|
10
|
+
'key' => 'poptarts'
|
11
|
+
}
|
12
|
+
|
13
|
+
root = double(:root, url: 'questions_url')
|
14
|
+
allow(Poptart::Question).to receive(:root).and_return(root)
|
15
|
+
allow(Poptart::Question).to receive(:post).and_return(response)
|
16
|
+
|
17
|
+
question = Poptart::Question.create('Do you like poptarts?',
|
18
|
+
question_type: 'boolean',
|
19
|
+
responses: ['Yes', 'No'],
|
20
|
+
key: 'poptarts')
|
21
|
+
|
22
|
+
expect(root).to have_received(:url).with(relation: 'questions', method: 'POST')
|
23
|
+
expect(Poptart::Question).
|
24
|
+
to have_received(:post).
|
25
|
+
with('questions_url', 'question' => a_hash_including(response))
|
26
|
+
expect(question.responses).to eq(['Yes', 'No'])
|
27
|
+
expect(question.question_type).to eq('boolean')
|
28
|
+
expect(question.text).to eq('Do you like poptarts?')
|
29
|
+
expect(question.key).to eq('poptarts')
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
context '.find' do
|
34
|
+
it 'finds question' do
|
35
|
+
response = { 'id' => 1 }
|
36
|
+
|
37
|
+
root = double(:root, url: 'questions_url')
|
38
|
+
allow(Poptart::Question).to receive(:root).and_return(root)
|
39
|
+
allow(Poptart::Question).to receive(:get).and_return(response)
|
40
|
+
|
41
|
+
question = Poptart::Question.find(1)
|
42
|
+
|
43
|
+
expect(root).to have_received(:url).with(relation: 'questions', id: 1)
|
44
|
+
expect(question.id).to eq(1)
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Poptart::Root do
|
4
|
+
context '#url' do
|
5
|
+
it 'returns GET url by relation' do
|
6
|
+
root = Poptart::Root.new('_links' => [{
|
7
|
+
'rel' => 'survey_questions',
|
8
|
+
'href' => 'http://example.com{?query*}',
|
9
|
+
'method' => 'GET'
|
10
|
+
},
|
11
|
+
{
|
12
|
+
'rel' => 'survey_questions',
|
13
|
+
'href' => 'http://example.com/poptarts{?query*}',
|
14
|
+
'method' => 'POST'
|
15
|
+
},
|
16
|
+
])
|
17
|
+
|
18
|
+
expect(root.url(relation: 'survey_questions')).to eq('http://example.com')
|
19
|
+
expect(root.url(
|
20
|
+
relation: 'survey_questions',
|
21
|
+
method: 'POST')
|
22
|
+
).to eq('http://example.com/poptarts')
|
23
|
+
end
|
24
|
+
|
25
|
+
it 'returns GET url by relation' do
|
26
|
+
root = Poptart::Root.new('_links' => [{
|
27
|
+
'rel' => 'survey_questions',
|
28
|
+
'href' => 'http://example.com{?query*}',
|
29
|
+
'method' => 'GET'
|
30
|
+
}])
|
31
|
+
|
32
|
+
expect(root.url(relation: 'survey_questions')).to eq('http://example.com')
|
33
|
+
end
|
34
|
+
|
35
|
+
it 'returns url with query params' do
|
36
|
+
root = Poptart::Root.new('_links' => [{
|
37
|
+
'rel' => 'survey_questions',
|
38
|
+
'href' => 'http://example.com/{survey_id}/{id}{?query*}',
|
39
|
+
'method' => 'GET'
|
40
|
+
}])
|
41
|
+
|
42
|
+
expect(root.url(
|
43
|
+
relation: 'survey_questions',
|
44
|
+
survey_id: 'survey_id',
|
45
|
+
id: 'id',
|
46
|
+
query: { flavor: 'strawberry'}
|
47
|
+
)).to eq('http://example.com/survey_id/id?flavor=strawberry')
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,166 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Poptart::SurveyQuestion do
|
4
|
+
context 'attributes' do
|
5
|
+
it 'returns question id' do
|
6
|
+
survey_question = Poptart::SurveyQuestion.new('question_id' => 1)
|
7
|
+
expect(survey_question.question_id).to eq(1)
|
8
|
+
end
|
9
|
+
|
10
|
+
it 'returns text' do
|
11
|
+
survey_question = Poptart::SurveyQuestion.new('text' => 'poptarts')
|
12
|
+
expect(survey_question.text).to eq('poptarts')
|
13
|
+
end
|
14
|
+
|
15
|
+
it 'returns responses' do
|
16
|
+
survey_question = Poptart::SurveyQuestion.new('responses' => ['Yes', 'No'])
|
17
|
+
expect(survey_question.responses).to eq(['Yes', 'No'])
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'returns answer' do
|
21
|
+
survey_question = Poptart::SurveyQuestion.new('answer' => 'Toasted')
|
22
|
+
expect(survey_question.answer).to eq('Toasted')
|
23
|
+
end
|
24
|
+
|
25
|
+
it 'returns created at' do
|
26
|
+
survey_question = Poptart::SurveyQuestion.new('created_at' => '2014-01-01')
|
27
|
+
expect(survey_question.created_at).to eq(Date.parse('2014-01-01'))
|
28
|
+
end
|
29
|
+
|
30
|
+
it 'returns key' do
|
31
|
+
survey_question = Poptart::SurveyQuestion.new('key' => 'poptarts_key')
|
32
|
+
expect(survey_question.key).to eq('poptarts_key')
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
context '#boolean?' do
|
37
|
+
it 'returns true' do
|
38
|
+
survey_question = Poptart::SurveyQuestion.new('question_type' => 'boolean')
|
39
|
+
expect(survey_question.boolean?).to eq(true)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
context '#multiple?' do
|
44
|
+
it 'returns true' do
|
45
|
+
survey_question = Poptart::SurveyQuestion.new('question_type' => 'multiple')
|
46
|
+
expect(survey_question.multiple?).to eq(true)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
context '#range?' do
|
51
|
+
it 'returns true' do
|
52
|
+
survey_question = Poptart::SurveyQuestion.new('question_type' => 'range')
|
53
|
+
expect(survey_question.range?).to eq(true)
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
context '#time?' do
|
58
|
+
it 'returns true' do
|
59
|
+
survey_question = Poptart::SurveyQuestion.new('question_type' => 'time')
|
60
|
+
expect(survey_question.time?).to eq(true)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
context '#answer' do
|
65
|
+
it 'returns true if answer is "t"' do
|
66
|
+
survey_question = Poptart::SurveyQuestion.new('answer' => 't')
|
67
|
+
expect(survey_question.answer).to eq(true)
|
68
|
+
end
|
69
|
+
|
70
|
+
it 'returns false if answer is "f"' do
|
71
|
+
survey_question = Poptart::SurveyQuestion.new('answer' => 'f')
|
72
|
+
expect(survey_question.answer).to eq(false)
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
context '#submit' do
|
77
|
+
it 'submits a survey question' do
|
78
|
+
survey_question = Poptart::SurveyQuestion.new('id' => 1, 'answer' => 'poptarts')
|
79
|
+
allow(survey_question).to receive(:url).and_return('survey_questions_url')
|
80
|
+
response = double(:response, status: 204, body: { id: 1 }.to_json)
|
81
|
+
allow(survey_question).to receive(:put).and_return(response)
|
82
|
+
|
83
|
+
submit_result = survey_question.submit
|
84
|
+
|
85
|
+
expect(survey_question).to have_received(:url).with(
|
86
|
+
relation: 'self',
|
87
|
+
method: 'PUT'
|
88
|
+
)
|
89
|
+
expect(survey_question).to have_received(:put).with(
|
90
|
+
'survey_questions_url',
|
91
|
+
{
|
92
|
+
'id' => 1,
|
93
|
+
'survey_question' => {
|
94
|
+
'answer' => 'poptarts'
|
95
|
+
}
|
96
|
+
}
|
97
|
+
)
|
98
|
+
expect(submit_result).to eq(true)
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
context '.find_all' do
|
103
|
+
it 'finds all survey questions by question id' do
|
104
|
+
body = {
|
105
|
+
'survey_questions' => [{
|
106
|
+
'text' => 'Do you like poptarts?'
|
107
|
+
}]
|
108
|
+
}
|
109
|
+
response = double(:response, body: body.to_json)
|
110
|
+
|
111
|
+
root = double(:root, url: 'survey_questions_url')
|
112
|
+
allow(Poptart::SurveyQuestion).to receive(:root).and_return(root)
|
113
|
+
allow(Poptart::SurveyQuestion).to receive(:get).and_return(response)
|
114
|
+
|
115
|
+
survey_questions = Poptart::SurveyQuestion.find_all(question_id: 1)
|
116
|
+
|
117
|
+
expect(root).to have_received(:url).with(relation: 'survey-questions-by-query', query: { question_id: 1})
|
118
|
+
expect(Poptart::SurveyQuestion).to have_received(:get).with('survey_questions_url')
|
119
|
+
expect(survey_questions.count).to eq(1)
|
120
|
+
survey_question = survey_questions.first
|
121
|
+
expect(survey_question.text).to eq('Do you like poptarts?')
|
122
|
+
end
|
123
|
+
|
124
|
+
it 'finds all survey questions by question key' do
|
125
|
+
body = {
|
126
|
+
'survey_questions' => [{
|
127
|
+
'text' => 'Do you like poptarts?'
|
128
|
+
}]
|
129
|
+
}
|
130
|
+
response = double(:response, body: body.to_json)
|
131
|
+
|
132
|
+
root = double(:root, url: 'survey_questions_url')
|
133
|
+
allow(Poptart::SurveyQuestion).to receive(:root).and_return(root)
|
134
|
+
allow(Poptart::SurveyQuestion).to receive(:get).and_return(response)
|
135
|
+
|
136
|
+
survey_questions = Poptart::SurveyQuestion.find_all(key: 'poptarts')
|
137
|
+
|
138
|
+
expect(root).to have_received(:url).with(relation: 'survey-questions-by-query', query: { key: 'poptarts' })
|
139
|
+
expect(Poptart::SurveyQuestion).to have_received(:get).with('survey_questions_url')
|
140
|
+
expect(survey_questions.count).to eq(1)
|
141
|
+
survey_question = survey_questions.first
|
142
|
+
expect(survey_question.text).to eq('Do you like poptarts?')
|
143
|
+
end
|
144
|
+
|
145
|
+
it 'finds all survey questions by survey' do
|
146
|
+
body = {
|
147
|
+
'survey_questions' => [{
|
148
|
+
'text' => 'Do you like poptarts?'
|
149
|
+
}]
|
150
|
+
}
|
151
|
+
response = double(:response, body: body.to_json)
|
152
|
+
|
153
|
+
root = double(:root, url: 'survey_questions_url')
|
154
|
+
allow(Poptart::SurveyQuestion).to receive(:root).and_return(root)
|
155
|
+
allow(Poptart::SurveyQuestion).to receive(:get).and_return(response)
|
156
|
+
|
157
|
+
survey_questions = Poptart::SurveyQuestion.find_all(survey_id: 1)
|
158
|
+
|
159
|
+
expect(root).to have_received(:url).with(relation: 'survey-questions-by-query', query: { survey_id: 1 })
|
160
|
+
expect(Poptart::SurveyQuestion).to have_received(:get).with('survey_questions_url')
|
161
|
+
expect(survey_questions.count).to eq(1)
|
162
|
+
survey_question = survey_questions.first
|
163
|
+
expect(survey_question.text).to eq('Do you like poptarts?')
|
164
|
+
end
|
165
|
+
end
|
166
|
+
end
|
@@ -0,0 +1,105 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Poptart::Survey do
|
4
|
+
context '#completed?' do
|
5
|
+
it 'returns true' do
|
6
|
+
survey = Poptart::Survey.new('completed' => true, 'survey_questions' => [])
|
7
|
+
expect(survey.completed?).to be
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
context '#service_user_id' do
|
12
|
+
it 'returns the service user id' do
|
13
|
+
survey = Poptart::Survey.new('service_user_id' => 1, 'survey_questions' => [])
|
14
|
+
expect(survey.service_user_id).to eq(1)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
context '#survey_questions' do
|
19
|
+
it 'returns survey questions' do
|
20
|
+
survey_question_response = double(:response)
|
21
|
+
survey_question = double(:survey_question)
|
22
|
+
allow(Poptart::SurveyQuestion).to receive(:new).
|
23
|
+
with(survey_question_response).and_return(survey_question)
|
24
|
+
|
25
|
+
survey = Poptart::Survey.new('survey_questions' => [survey_question_response])
|
26
|
+
expect(survey.survey_questions.count).to eq(1)
|
27
|
+
expect(survey.survey_questions).to include(survey_question)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
context '.all' do
|
32
|
+
it 'returns all surveys' do
|
33
|
+
root = double(:root, url: 'surveys_url')
|
34
|
+
response = double(:response, body: { surveys: [{ id: 1 }] }.to_json)
|
35
|
+
allow(Poptart::Survey).to receive(:root).and_return(root)
|
36
|
+
allow(Poptart::Survey).to receive(:get).and_return(response)
|
37
|
+
|
38
|
+
surveys = Poptart::Survey.all
|
39
|
+
|
40
|
+
expect(root).to have_received(:url).with(relation: 'surveys')
|
41
|
+
expect(Poptart::Survey).to have_received(:get).with('surveys_url')
|
42
|
+
expect(surveys.count).to eq(1)
|
43
|
+
expect(surveys.first).to be
|
44
|
+
expect(surveys.first.id).to eq(1)
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
context '.create' do
|
49
|
+
it 'creates an empty survey' do
|
50
|
+
root = double(:root, url: 'surveys_url')
|
51
|
+
response = double(:response, status: 201, body: { id: 1 }.to_json)
|
52
|
+
allow(Poptart::Survey).to receive(:root).and_return(root)
|
53
|
+
allow(Poptart::Survey).to receive(:post).and_return(response)
|
54
|
+
|
55
|
+
survey = Poptart::Survey.create
|
56
|
+
|
57
|
+
expect(root).to have_received(:url).with(relation: 'surveys', method: 'POST')
|
58
|
+
expect(Poptart::Survey).to have_received(:post).with('surveys_url')
|
59
|
+
expect(survey.id).to be
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
context '.find' do
|
64
|
+
it 'returns a survey' do
|
65
|
+
root = double(:root, url: 'surveys_url/1')
|
66
|
+
response = double(:response, status: 200, body: { id: 1 }.to_json)
|
67
|
+
allow(Poptart::Survey).to receive(:root).and_return(root)
|
68
|
+
allow(Poptart::Survey).to receive(:get).and_return(response)
|
69
|
+
|
70
|
+
survey = Poptart::Survey.find(1)
|
71
|
+
|
72
|
+
expect(root).to have_received(:url).with(relation: 'surveys', id: 1)
|
73
|
+
expect(Poptart::Survey).to have_received(:get).with('surveys_url/1')
|
74
|
+
expect(survey.id).to eq(1)
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
context '#add_survey_question' do
|
79
|
+
it 'adds a survey question to a survey' do
|
80
|
+
survey = Poptart::Survey.new({})
|
81
|
+
allow(survey).to receive(:url).and_return('survey_questions_url')
|
82
|
+
|
83
|
+
response = double(:response, status: 201, body: { 'id' => 1 }.to_json)
|
84
|
+
allow(survey).to receive(:post).and_return(response)
|
85
|
+
|
86
|
+
survey_question = Poptart::SurveyQuestion.new(
|
87
|
+
'question_id' => 1,
|
88
|
+
'responses' => [true, false]
|
89
|
+
)
|
90
|
+
survey_question = survey.add_survey_question(survey_question)
|
91
|
+
|
92
|
+
body = {
|
93
|
+
'survey_question' => {
|
94
|
+
'question_id' => 1,
|
95
|
+
'responses' => [true, false]
|
96
|
+
}
|
97
|
+
}
|
98
|
+
|
99
|
+
expect(survey).to have_received(:url).with(relation: 'survey-questions', method: 'POST')
|
100
|
+
expect(survey).to have_received(:post).with('survey_questions_url', body)
|
101
|
+
expect(survey_question.id).to eq(1)
|
102
|
+
expect(survey.survey_questions.include?(survey_question)).to eq(true)
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Poptart::User do
|
4
|
+
context '.new' do
|
5
|
+
it 'sets service user id' do
|
6
|
+
user = Poptart::User.new('service_user_id' => 1)
|
7
|
+
expect(user.service_user_id).to eq(1)
|
8
|
+
end
|
9
|
+
|
10
|
+
it 'sets token' do
|
11
|
+
user = Poptart::User.new('token' => 'poptart')
|
12
|
+
expect(user.token).to eq('poptart')
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
context '.create' do
|
17
|
+
it 'creates a user' do
|
18
|
+
root = double(:root, url: 'user_url')
|
19
|
+
user_response = { 'id' => 1 }
|
20
|
+
allow(Poptart::User).to receive(:root).and_return(root)
|
21
|
+
allow(Poptart::User).to receive(:post).and_return(user_response)
|
22
|
+
|
23
|
+
user = Poptart::User.create
|
24
|
+
|
25
|
+
expect(root).to have_received(:url).with(relation: 'users', method: 'POST')
|
26
|
+
expect(Poptart::User).to have_received(:post).with('user_url')
|
27
|
+
expect(user.id).to eq(1)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
context '.get_user' do
|
32
|
+
it 'returns a user' do
|
33
|
+
root = double(:root, url: 'user_url')
|
34
|
+
user_response = { 'id' => 1 }
|
35
|
+
allow(Poptart::User).to receive(:root).and_return(root)
|
36
|
+
allow(Poptart::User).to receive(:get).and_return(user_response)
|
37
|
+
|
38
|
+
user = Poptart::User.get_user
|
39
|
+
|
40
|
+
expect(root).to have_received(:url).with(relation: 'users')
|
41
|
+
expect(Poptart::User).to have_received(:get).with('user_url')
|
42
|
+
expect(user.id).to eq(1)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe 'questions' do
|
4
|
+
it 'finds a question by id', :vcr do
|
5
|
+
question = Poptart::Question.create('Do you like poptarts?',
|
6
|
+
question_type: 'boolean',
|
7
|
+
responses: [true, false],
|
8
|
+
key: 'poptarts')
|
9
|
+
|
10
|
+
question = Poptart::Question.find(question.id)
|
11
|
+
|
12
|
+
expect(question.id).to eq(question.id)
|
13
|
+
expect(question.text).to eq('Do you like poptarts?')
|
14
|
+
expect(question.responses).to eq(['t', 'f'])
|
15
|
+
expect(question.key).to eq('poptarts')
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'finds a question by key', :vcr do
|
19
|
+
question = Poptart::Question.create('Do you like poptarts?',
|
20
|
+
question_type: 'boolean',
|
21
|
+
responses: [true, false],
|
22
|
+
key: 'poptarts')
|
23
|
+
|
24
|
+
question = Poptart::Question.find('poptarts')
|
25
|
+
|
26
|
+
expect(question.id).to eq(question.id)
|
27
|
+
expect(question.text).to eq('Do you like poptarts?')
|
28
|
+
expect(question.responses).to eq(['t', 'f'])
|
29
|
+
expect(question.key).to eq('poptarts')
|
30
|
+
end
|
31
|
+
end
|