Browse Source

fixed corner case, divide by zero when min == max

drhodes 13 năm trước cách đây
mục cha
commit
6e38d8d5e4
2 tập tin đã thay đổi với 9 bổ sung5 xóa
  1. 6 0
      lorem.go
  2. 3 5
      lorem_test.go

+ 6 - 0
lorem.go

@@ -48,6 +48,12 @@ func genWordLen() int {
 }
 }
 
 
 func intRange(min, max int) int {
 func intRange(min, max int) int {
+	if min == max {
+		return intRange(min, min+1)
+	}
+	if min > max {
+		return intRange(max, min)
+	}
 	n := src.Int() % (max - min)
 	n := src.Int() % (max - min)
 	return n + min
 	return n + min
 }
 }

+ 3 - 5
lorem_test.go

@@ -11,11 +11,9 @@ func TestAll(t *testing.T) {
 	for i := 1; i < 14; i++ {
 	for i := 1; i < 14; i++ {
 		log.Print(word(i))
 		log.Print(word(i))
 		for j := 1; j < 14; j++ {
 		for j := 1; j < 14; j++ {
-			if j > i {
-				log.Print(Word(i, j))
-				log.Print(Sentence(i, j))
-				log.Print(Paragraph(i, j))
-			}
+			log.Print(Word(i, j))
+			log.Print(Sentence(i, j))
+			log.Print(Paragraph(i, j))
 		}
 		}
 		log.Print(Url())
 		log.Print(Url())
 		log.Print(Host())
 		log.Print(Host())