RegressionTests__IntervalAndGeometricSeriesTests.st
author Claus Gittinger <cg@exept.de>
Tue, 25 Feb 2020 17:19:49 +0100
changeset 2586 7dc7be5a6f3d
parent 2369 6df45ae0a5ef
permissions -rw-r--r--
#OTHER by cg s

"{ Encoding: utf8 }"

"{ Package: 'stx:goodies/regression' }"

"{ NameSpace: RegressionTests }"

TestCase subclass:#IntervalAndGeometricSeriesTests
	instanceVariableNames:''
	classVariableNames:''
	poolDictionaries:''
	category:'tests-Regression-Collections'
!


!IntervalAndGeometricSeriesTests class methodsFor:'queries'!

coveredClassNames
    "These classes will be instrumented for coverage analysis,
     before running the suite to provide coverage analysis/report"

    ^ #(GeometricSeries)
! !

!IntervalAndGeometricSeriesTests methodsFor:'tests'!

test10_geometricSeries
     {
        (1 to:100 byFactor:2)       .
        (1 to:100 byFactor:3)       .
        (10 to:100 byFactor:3)      .
        (100 to:10 byFactor:1/3)    .
        (100 to:1 byFactor:1/2)     .

        (1 to:100 byFactor:2.0)     .
        (1 to:64.0 byFactor:2.0)    .
        (1 to:100 byFactor:3.0)     .
        (10 to:100.0 byFactor:3)    .
        (100 to:10.0 byFactor:0.3)  .  
        (100 to:3 byFactor:1/2)     .
        (100 to:3 byFactor:0.5)     .
    } do:[:each |
        |eachEnumeratedAsArray|

        eachEnumeratedAsArray := Array streamContents:[:s | each do:[:el | s nextPut:el]].
        self assert:eachEnumeratedAsArray = each asArray.
        self assert:eachEnumeratedAsArray size = each size.
        self assert:eachEnumeratedAsArray last = each last.
        self assert:eachEnumeratedAsArray first = each first.
    ]

    "
     self run:#test10_geometricSeries
    "
!

test11_geometricSeries
    self assert:((1 to:100 byFactor:2) sameContentsAs: (1 to:100 byFactor:2) asArray).
    self assert:((1 to:100 byFactor:2) sameContentsAs: (1 to:99 byFactor:2)).
    self assert:((1 to:100 byFactor:2) = (1 to:100 byFactor:2) asArray) not.

    self assert:(1 to:100 byFactor:2) last = 64.
    self assert:(1 to:64 byFactor:2) last = 64.
    self assert:(64 to:1 byFactor:1/2) last = 1.

    "
     self run:#test11_geometricSeries
    "
!

test12_geometricSeries
    self assert:(1 to:100 byFactor:2) printString = '1 to:100 byFactor:2'.
    self assert:(1 to:100 byFactor:2) storeString = '(1 to:100 byFactor:2)'.

    "
     self run:#test12_geometricSeries
    "
! !

!IntervalAndGeometricSeriesTests class methodsFor:'documentation'!

version_CVS
    ^ '$Header$'
! !