teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

マッチャエイリアス

2018/02/22 17:28

投稿

asm
asm

スコア15149

answer CHANGED
@@ -18,4 +18,10 @@
18
18
  # => 配列の中に"is too long"という文字列を含む文字列を含むのでマッチする
19
19
  ```
20
20
 
21
- という事です。
21
+ という事です。
22
+
23
+ ```ruby
24
+ expect(user.errors[:nickname]).to include a_string_including "is too long"
25
+ ```
26
+
27
+ とした方が英文として読みやすいですね。

2

kwsk

2018/02/22 17:28

投稿

asm
asm

スコア15149

answer CHANGED
@@ -3,4 +3,19 @@
3
3
 
4
4
  ```ruby
5
5
  expect(user.errors[:nickname]).to include include("is too long")
6
- ```
6
+ ```
7
+
8
+ ---
9
+
10
+ **追記:** 一応説明
11
+
12
+ ```ruby
13
+ expect(["is too long (maximum is 6 characters)"]).to include "is too long (maximum is 6 characters)"
14
+ # => 配列の中に"is too long (maximum is 6 characters)"という文字列を含むのでマッチする
15
+ expect(["is too long (maximum is 6 characters)"]).to include "is too long"
16
+ # => 配列の中に"is too long"という文字列を含まないのでマッチしない
17
+ expect(["is too long (maximum is 6 characters)"]).to include include "is too long"
18
+ # => 配列の中に"is too long"という文字列を含む文字列を含むのでマッチする
19
+ ```
20
+
21
+ という事です。

1

メッセージ変更

2018/02/22 17:17

投稿

asm
asm

スコア15149

answer CHANGED
@@ -2,5 +2,5 @@
2
2
  ](http://rspec.info/documentation/3.7/rspec-expectations/#Composing_Matchers)を使います
3
3
 
4
4
  ```ruby
5
- expect(user.errors[:nickname]).to include include("can't be blank")
5
+ expect(user.errors[:nickname]).to include include("is too long")
6
6
  ```