spec/wordnik_spec.rb in wordnik-0.4.4 vs spec/wordnik_spec.rb in wordnik-0.4.5
- old
+ new
@@ -104,39 +104,71 @@
it "passes optional key-value arguments to the query string" do
@request.query_string.should == "?limit=10&skip=2"
end
- it "puts key-value arguments in the request body instead of the query params"
+ it "puts key-value arguments in the request body instead of the query params for POSTs and PUTs" do
+ body = {
+ :name => "Wordnik Ruby Test List #{RAND}",
+ :description => 'This is created by the test suite.',
+ :type => 'PUBLIC',
+ :user_id => Wordnik.configuration.user_id
+ }
+ @request = Wordnik.word_lists.build_post(body)
+ @request.body.should have_key(:name)
+ @request.body.should have_key(:description)
+ @request.body.should have_key(:type)
+ @request.body.should have_key(:userId)
+ end
end
context "wordlists" do
before do
configure_wordnik
- Wordnik.authenticate
+ Wordnik.authenticate
+ @permalink = "wordnik-ruby-test-list-#{RAND}"
end
it "creates a wordlist" do
body = {
- :name=> "Wordnik Ruby Test List #{RAND}",
+ :name => "Wordnik Ruby Test List #{RAND}",
:description => 'This is created by the test suite.',
:type => 'PUBLIC',
:user_id => Wordnik.configuration.user_id
}
- request = Wordnik::Request.new(:post, "wordLists", :body => body)
- request.response.body.should be_a_kind_of(Hash)
- request.response.body.should have_key('permalink')
+ request = Wordnik.word_lists.build_post(body)
+ response = request.response
+ response.body.should be_a_kind_of(Hash)
+ response.body.should have_key('permalink')
+ response.body['permalink'].should == @permalink
end
- it "finds the new wordlist" do
+ it "finds the new wordlist (method 1, using the wordList resource)" do
+ list = Wordnik.word_list.get(@permalink)
+ list.should have_key('permalink')
+ list['permalink'].should == @permalink
+ end
+
+ it "finds the new wordlist (method 2, among user's wordlists)" do
lists = Wordnik.account.get_word_lists
permalinks = lists.map { |list| list['permalink'] }
- permalinks.should include("wordnik-ruby-test-list-#{RAND}")
+ permalinks.should include(@permalink)
end
- it "finds the new wordlist and adds words to it"
+ it "adds words to it" do
+ body = [
+ {:word => 'foo'},
+ {:word => 'bar'},
+ {:word => 'metasyntactic'},
+ ]
+ request = Wordnik.word_list.build_post_words(@permalink, body)
+ # raise request.response.inspect
+
+ list = Wordnik.word_list.get(@permalink)
+ # raise list.inspect
+ end
it "updates words"
it "get all the words"
\ No newline at end of file