@@ -131,80 +131,80 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
131
131
}).reduceLeft(_ && _)
132
132
}
133
133
134
- // property("sameElements must be equal") = forAllNoShrink(collectionPairsWithModifiedWithLengths) {
135
- // case (s, coll, collmodif, len) =>
136
- // val pos = if (len < 0) 0 else len
137
- // val scm = s.sameElements(collmodif)
138
- // val ccm = coll.sameElements(collmodif)
139
- // if (scm != ccm) {
140
- // println("Comparing: " + s)
141
- // println("and: " + coll)
142
- // println("with: " + collmodif)
143
- // println(scm)
144
- // println(ccm)
145
- // }
146
- // ("Nil" |: s.sameElements(Nil) == coll.sameElements(Nil)) &&
147
- // ("toList" |: s.sameElements(s.toList) == coll.sameElements(coll.toList)) &&
148
- // ("identity" |: s.sameElements(s.map(e => e)) == coll.sameElements(coll.map(e => e))) &&
149
- // ("vice-versa" |: s.sameElements(coll) == coll.sameElements(s)) &&
150
- // ("equal" |: s.sameElements(coll)) &&
151
- // ("modified" |: scm == ccm) &&
152
- // (for ((it, ind) <- sameElementsSeqs.zipWithIndex) yield {
153
- // val sres = s.sameElements(it)
154
- // val pres = coll.sameElements(it)
155
- // if (sres != pres) {
156
- // println("Comparing: " + s)
157
- // println("and: " + coll)
158
- // println("with: " + it)
159
- // println(sres)
160
- // println(pres)
161
- // }
162
- // ("collection " + ind) |: sres == pres
163
- // }).reduceLeft(_ && _)
164
- // }
134
+ property(" sameElements must be equal" ) = forAllNoShrink(collectionPairsWithModifiedWithLengths) {
135
+ case (s, coll, collmodif, len) =>
136
+ val pos = if (len < 0 ) 0 else len
137
+ val scm = s.sameElements(collmodif)
138
+ val ccm = coll.sameElements(collmodif)
139
+ if (scm != ccm) {
140
+ println(" Comparing: " + s)
141
+ println(" and: " + coll)
142
+ println(" with: " + collmodif)
143
+ println(scm)
144
+ println(ccm)
145
+ }
146
+ (" Nil" |: s.sameElements(Nil ) == coll.sameElements(Nil )) &&
147
+ (" toList" |: s.sameElements(s.toList) == coll.sameElements(coll.toList)) &&
148
+ (" identity" |: s.sameElements(s.map(e => e)) == coll.sameElements(coll.map(e => e))) &&
149
+ (" vice-versa" |: s.sameElements(coll) == coll.sameElements(s)) &&
150
+ (" equal" |: s.sameElements(coll)) &&
151
+ (" modified" |: scm == ccm) &&
152
+ (for ((it, ind) <- sameElementsSeqs.zipWithIndex) yield {
153
+ val sres = s.sameElements(it)
154
+ val pres = coll.sameElements(it)
155
+ if (sres != pres) {
156
+ println(" Comparing: " + s)
157
+ println(" and: " + coll)
158
+ println(" with: " + it)
159
+ println(sres)
160
+ println(pres)
161
+ }
162
+ (" collection " + ind) |: sres == pres
163
+ }).reduceLeft(_ && _)
164
+ }
165
165
166
- // property("startsWiths must be equal") = forAllNoShrink(collectionPairsWithModifiedWithLengths) {
167
- // case (s, coll, collmodif, len) =>
168
- // val pos = if (len < 0) 0 else len
169
- // ("start with self" |: s.startsWith(s) == coll.startsWith(coll)) &&
170
- // ("tails correspond" |: (s.length == 0 || s.startsWith(s.tail, 1) == coll.startsWith(coll.tail, 1))) &&
171
- // ("with each other" |: coll.startsWith(s)) &&
172
- // ("modified" |: s.startsWith(collmodif) == coll.startsWith(collmodif)) &&
173
- // ("modified2" |: s.startsWith(collmodif, pos) == coll.startsWith(collmodif, pos)) &&
174
- // (for (sq <- startEndSeqs) yield {
175
- // val ss = s.startsWith(sq, pos)
176
- // val cs = coll.startsWith(fromSeq(sq), pos)
177
- // if (ss != cs) {
178
- // println("from: " + s)
179
- // println("and: " + coll)
180
- // println("test seq: " + sq)
181
- // println("from pos: " + pos)
182
- // println(ss)
183
- // println(cs)
184
- // println(coll.iterator.psplit(pos, coll.length - pos)(1).toList)
185
- // }
186
- // ("seq " + sq) |: ss == cs
187
- // }).reduceLeft(_ && _)
188
- // }
166
+ property(" startsWiths must be equal" ) = forAllNoShrink(collectionPairsWithModifiedWithLengths) {
167
+ case (s, coll, collmodif, len) =>
168
+ val pos = if (len < 0 ) 0 else len
169
+ (" start with self" |: s.startsWith(s) == coll.startsWith(coll)) &&
170
+ (" tails correspond" |: (s.length == 0 || s.startsWith(s.tail, 1 ) == coll.startsWith(coll.tail, 1 ))) &&
171
+ (" with each other" |: coll.startsWith(s)) &&
172
+ (" modified" |: s.startsWith(collmodif) == coll.startsWith(collmodif)) &&
173
+ (" modified2" |: s.startsWith(collmodif, pos) == coll.startsWith(collmodif, pos)) &&
174
+ (for (sq <- startEndSeqs) yield {
175
+ val ss = s.startsWith(sq, pos)
176
+ val cs = coll.startsWith(fromSeq(sq), pos)
177
+ if (ss != cs) {
178
+ println(" from: " + s)
179
+ println(" and: " + coll)
180
+ println(" test seq: " + sq)
181
+ println(" from pos: " + pos)
182
+ println(ss)
183
+ println(cs)
184
+ println(coll.iterator.psplit(pos, coll.length - pos)(1 ).toList)
185
+ }
186
+ (" seq " + sq) |: ss == cs
187
+ }).reduceLeft(_ && _)
188
+ }
189
189
190
- // property("endsWiths must be equal") = forAllNoShrink(collectionPairsWithModified) {
191
- // case (s, coll, collmodif) =>
192
- // ("ends with self" |: s.endsWith(s) == coll.endsWith(s)) &&
193
- // ("ends with tail" |: (s.length == 0 || s.endsWith(s.tail) == coll.endsWith(coll.tail))) &&
194
- // ("with each other" |: coll.endsWith(s)) &&
195
- // ("modified" |: s.startsWith(collmodif) == coll.endsWith(collmodif)) &&
196
- // (for (sq <- startEndSeqs) yield {
197
- // val sew = s.endsWith(sq)
198
- // val cew = coll.endsWith(fromSeq(sq))
199
- // if (sew != cew) {
200
- // println("from: " + s)
201
- // println("and: " + coll)
202
- // println(sew)
203
- // println(cew)
204
- // }
205
- // ("seq " + sq) |: sew == cew
206
- // }).reduceLeft (_ && _)
207
- // }
190
+ property(" endsWiths must be equal" ) = forAllNoShrink(collectionPairsWithModified) {
191
+ case (s, coll, collmodif) =>
192
+ (" ends with self" |: s.endsWith(s) == coll.endsWith(s)) &&
193
+ (" ends with tail" |: (s.length == 0 || s.endsWith(s.tail) == coll.endsWith(coll.tail))) &&
194
+ (" with each other" |: coll.endsWith(s)) &&
195
+ (" modified" |: s.startsWith(collmodif) == coll.endsWith(collmodif)) &&
196
+ (for (sq <- startEndSeqs if s.nonEmpty /* guard because of https://github.com/scala/bug/issues/11328 */ ) yield {
197
+ val sew = s.endsWith(sq)
198
+ val cew = coll.endsWith(fromSeq(sq))
199
+ if (sew != cew) {
200
+ println(" from: " + s)
201
+ println(" and: " + coll)
202
+ println(sew)
203
+ println(cew)
204
+ }
205
+ (" seq " + sq) |: sew == cew
206
+ }).foldLeft( Prop .passed) (_ && _)
207
+ }
208
208
209
209
// property("unions must be equal") = forAllNoShrink(collectionPairsWithModified) { case (s, coll, collmodif) =>
210
210
// ("modified" |: s.union(collmodif.seq) == coll.union(collmodif)) &&
0 commit comments