def test_rf_negative_4(): ''' A test with negatives ''' test_list = [ 2, 3, 4, -10, 5, 6, -10, 4, 4, 4] expect = test_list[2] observ = rf.rfmean( test_list ) assert_almost_equal( observ, expect )
def test_rf_99_2(): ''' A test with 99s ''' test_list = [ 2, 3, 4, 99, 5, 6, 99, 4, 4, 4] expect = test_list[1] observ = rf.rfmean( test_list ) assert_almost_equal( observ, expect )
def test_rf_simple_1(): ''' A simple test which has no negative and no '99's ''' test_list = [ 1 ] expect = test_list[0] observ = rf.rfmean( test_list ) assert_almost_equal( observ, expect )
def test_rf_negative_3(): ''' A test with negatives ''' test_list = [ -1, 2, 3, 1, 4, 5] expect = test_list[2] observ = rf.rfmean( test_list ) assert_almost_equal( observ, expect )
def test_rf_negative_99_start_2(): ''' A test with no valid data points ''' test_list = [-1, -10, 99] expect = "No valid data points" observ = rf.rfmean( test_list ) assert observ == expect
def test_rf_99_start(): ''' A test where first value is 99 ''' test_list = [99] expect = "First value 99" observ = rf.rfmean( test_list ) assert observ == expect
def test_rf_empty(): ''' A test with empty list ''' test_list = [] expect = "Empty list" observ = rf.rfmean( test_list ) assert observ == expect
def test_rf_both(): ''' A test with negatives and 99s ''' test_list = [ 2, 3, 4, 99, 5, -1, 6, 99, 4, 4, 4] expect = test_list[1] observ = rf.rfmean( test_list ) assert_almost_equal( observ, expect )
def test_rnd_99(): ''' Generate a list of random integers: - of length [0:50] - in the range [0:99) In this notation the square bracket indicates inclusive, the parentheses exlusive i.e. Find the mean then add a terminating 99 and further 'fluff' values, Then disperse negative values in the resulting list. Finally test rfmean against the expected value. ''' rnd.seed() # Conduction 50 tests of: for itest in range(50): # Generate number of values nvalues = rnd.randrange(51) # Generate list of non-negative random numbers less thann 99 values = [] for ivalue in range(nvalues): values.append( rnd.randrange(99) ) # Calculate expected mean expect = sum(values) / nvalues # Add terminating 99 values.append(99) # Add some fluff after 99 fluff = [] for ivalue in range(50): fluff.append( rnd.randrange(100) ) values.extend( fluff ) # Disperse some (fewer than 11) negative numbers [-10:0) for x in range( rnd.randrange(1,11) ): insert_value = rnd.randrange(-10,0) insert_pos = rnd.randrange( len(values) ) values.insert( insert_pos, insert_value ) assert_almost_equal( rf.rfmean(values), expect)