./bin/rails importmap:install
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
require 'rails_helper'
|
||||
|
||||
# Specs in this file have access to a helper object that includes
|
||||
# the ArticlesHelper. For example:
|
||||
#
|
||||
# describe ArticlesHelper do
|
||||
# describe "string concat" do
|
||||
# it "concats two strings with spaces" do
|
||||
# expect(helper.concat_strings("this","that")).to eq("this that")
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
RSpec.describe ArticlesHelper, type: :helper do
|
||||
pending "add some examples to (or delete) #{__FILE__}"
|
||||
end
|
||||
@@ -0,0 +1,15 @@
|
||||
require 'rails_helper'
|
||||
|
||||
# Specs in this file have access to a helper object that includes
|
||||
# the WelcomeHelper. For example:
|
||||
#
|
||||
# describe WelcomeHelper do
|
||||
# describe "string concat" do
|
||||
# it "concats two strings with spaces" do
|
||||
# expect(helper.concat_strings("this","that")).to eq("this that")
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
RSpec.describe WelcomeHelper, type: :helper do
|
||||
pending "add some examples to (or delete) #{__FILE__}"
|
||||
end
|
||||
@@ -0,0 +1,5 @@
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe Article, type: :model do
|
||||
pending "add some examples to (or delete) #{__FILE__}"
|
||||
end
|
||||
@@ -0,0 +1,130 @@
|
||||
require 'rails_helper'
|
||||
|
||||
# This spec was generated by rspec-rails when you ran the scaffold generator.
|
||||
# It demonstrates how one might use RSpec to test the controller code that
|
||||
# was generated by Rails when you ran the scaffold generator.
|
||||
#
|
||||
# It assumes that the implementation code is generated by the rails scaffold
|
||||
# generator. If you are using any extension libraries to generate different
|
||||
# controller code, this generated spec may or may not pass.
|
||||
#
|
||||
# It only uses APIs available in rails and/or rspec-rails. There are a number
|
||||
# of tools you can use to make these specs even more expressive, but we're
|
||||
# sticking to rails and rspec-rails APIs to keep things simple and stable.
|
||||
|
||||
RSpec.describe "/articles", type: :request do
|
||||
|
||||
# Article. As you add validations to Article, be sure to
|
||||
# adjust the attributes here as well.
|
||||
let(:valid_attributes) {
|
||||
skip("Add a hash of attributes valid for your model")
|
||||
}
|
||||
|
||||
let(:invalid_attributes) {
|
||||
skip("Add a hash of attributes invalid for your model")
|
||||
}
|
||||
|
||||
describe "GET /index" do
|
||||
it "renders a successful response" do
|
||||
Article.create! valid_attributes
|
||||
get articles_url
|
||||
expect(response).to be_successful
|
||||
end
|
||||
end
|
||||
|
||||
describe "GET /show" do
|
||||
it "renders a successful response" do
|
||||
article = Article.create! valid_attributes
|
||||
get article_url(article)
|
||||
expect(response).to be_successful
|
||||
end
|
||||
end
|
||||
|
||||
describe "GET /new" do
|
||||
it "renders a successful response" do
|
||||
get new_article_url
|
||||
expect(response).to be_successful
|
||||
end
|
||||
end
|
||||
|
||||
describe "GET /edit" do
|
||||
it "render a successful response" do
|
||||
article = Article.create! valid_attributes
|
||||
get edit_article_url(article)
|
||||
expect(response).to be_successful
|
||||
end
|
||||
end
|
||||
|
||||
describe "POST /create" do
|
||||
context "with valid parameters" do
|
||||
it "creates a new Article" do
|
||||
expect {
|
||||
post articles_url, params: { article: valid_attributes }
|
||||
}.to change(Article, :count).by(1)
|
||||
end
|
||||
|
||||
it "redirects to the created article" do
|
||||
post articles_url, params: { article: valid_attributes }
|
||||
expect(response).to redirect_to(article_url(Article.last))
|
||||
end
|
||||
end
|
||||
|
||||
context "with invalid parameters" do
|
||||
it "does not create a new Article" do
|
||||
expect {
|
||||
post articles_url, params: { article: invalid_attributes }
|
||||
}.to change(Article, :count).by(0)
|
||||
end
|
||||
|
||||
it "renders a successful response (i.e. to display the 'new' template)" do
|
||||
post articles_url, params: { article: invalid_attributes }
|
||||
expect(response).to be_successful
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe "PATCH /update" do
|
||||
context "with valid parameters" do
|
||||
let(:new_attributes) {
|
||||
skip("Add a hash of attributes valid for your model")
|
||||
}
|
||||
|
||||
it "updates the requested article" do
|
||||
article = Article.create! valid_attributes
|
||||
patch article_url(article), params: { article: new_attributes }
|
||||
article.reload
|
||||
skip("Add assertions for updated state")
|
||||
end
|
||||
|
||||
it "redirects to the article" do
|
||||
article = Article.create! valid_attributes
|
||||
patch article_url(article), params: { article: new_attributes }
|
||||
article.reload
|
||||
expect(response).to redirect_to(article_url(article))
|
||||
end
|
||||
end
|
||||
|
||||
context "with invalid parameters" do
|
||||
it "renders a successful response (i.e. to display the 'edit' template)" do
|
||||
article = Article.create! valid_attributes
|
||||
patch article_url(article), params: { article: invalid_attributes }
|
||||
expect(response).to be_successful
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe "DELETE /destroy" do
|
||||
it "destroys the requested article" do
|
||||
article = Article.create! valid_attributes
|
||||
expect {
|
||||
delete article_url(article)
|
||||
}.to change(Article, :count).by(-1)
|
||||
end
|
||||
|
||||
it "redirects to the articles list" do
|
||||
article = Article.create! valid_attributes
|
||||
delete article_url(article)
|
||||
expect(response).to redirect_to(articles_url)
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,7 @@
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe "Welcomes", type: :request do
|
||||
describe "GET /index" do
|
||||
pending "add some examples (or delete) #{__FILE__}"
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,38 @@
|
||||
require "rails_helper"
|
||||
|
||||
RSpec.describe ArticlesController, type: :routing do
|
||||
describe "routing" do
|
||||
it "routes to #index" do
|
||||
expect(get: "/articles").to route_to("articles#index")
|
||||
end
|
||||
|
||||
it "routes to #new" do
|
||||
expect(get: "/articles/new").to route_to("articles#new")
|
||||
end
|
||||
|
||||
it "routes to #show" do
|
||||
expect(get: "/articles/1").to route_to("articles#show", id: "1")
|
||||
end
|
||||
|
||||
it "routes to #edit" do
|
||||
expect(get: "/articles/1/edit").to route_to("articles#edit", id: "1")
|
||||
end
|
||||
|
||||
|
||||
it "routes to #create" do
|
||||
expect(post: "/articles").to route_to("articles#create")
|
||||
end
|
||||
|
||||
it "routes to #update via PUT" do
|
||||
expect(put: "/articles/1").to route_to("articles#update", id: "1")
|
||||
end
|
||||
|
||||
it "routes to #update via PATCH" do
|
||||
expect(patch: "/articles/1").to route_to("articles#update", id: "1")
|
||||
end
|
||||
|
||||
it "routes to #destroy" do
|
||||
expect(delete: "/articles/1").to route_to("articles#destroy", id: "1")
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,21 @@
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe "articles/edit", type: :view do
|
||||
before(:each) do
|
||||
@article = assign(:article, Article.create!(
|
||||
title: "MyString",
|
||||
text: "MyText"
|
||||
))
|
||||
end
|
||||
|
||||
it "renders the edit article form" do
|
||||
render
|
||||
|
||||
assert_select "form[action=?][method=?]", article_path(@article), "post" do
|
||||
|
||||
assert_select "input[name=?]", "article[title]"
|
||||
|
||||
assert_select "textarea[name=?]", "article[text]"
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,22 @@
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe "articles/index", type: :view do
|
||||
before(:each) do
|
||||
assign(:articles, [
|
||||
Article.create!(
|
||||
title: "Title",
|
||||
text: "MyText"
|
||||
),
|
||||
Article.create!(
|
||||
title: "Title",
|
||||
text: "MyText"
|
||||
)
|
||||
])
|
||||
end
|
||||
|
||||
it "renders a list of articles" do
|
||||
render
|
||||
assert_select "tr>td", text: "Title".to_s, count: 2
|
||||
assert_select "tr>td", text: "MyText".to_s, count: 2
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,21 @@
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe "articles/new", type: :view do
|
||||
before(:each) do
|
||||
assign(:article, Article.new(
|
||||
title: "MyString",
|
||||
text: "MyText"
|
||||
))
|
||||
end
|
||||
|
||||
it "renders new article form" do
|
||||
render
|
||||
|
||||
assert_select "form[action=?][method=?]", articles_path, "post" do
|
||||
|
||||
assert_select "input[name=?]", "article[title]"
|
||||
|
||||
assert_select "textarea[name=?]", "article[text]"
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,16 @@
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe "articles/show", type: :view do
|
||||
before(:each) do
|
||||
@article = assign(:article, Article.create!(
|
||||
title: "Title",
|
||||
text: "MyText"
|
||||
))
|
||||
end
|
||||
|
||||
it "renders attributes in <p>" do
|
||||
render
|
||||
expect(rendered).to match(/Title/)
|
||||
expect(rendered).to match(/MyText/)
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user