You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
972 B
Python
39 lines
972 B
Python
'''
|
|
Created on 14. feb. 2016
|
|
|
|
@author: pab
|
|
'''
|
|
import unittest
|
|
import wafo.bitwise as wb
|
|
import numpy as np
|
|
from numpy.testing import assert_array_equal
|
|
|
|
|
|
class Test(unittest.TestCase):
|
|
|
|
def test_getbit(self):
|
|
|
|
assert_array_equal(wb.getbit(13, np.arange(3, -1, -1)),
|
|
[1, 1, 0, 1])
|
|
assert_array_equal(wb.getbit(5, np.r_[0:4]), [1, 0, 1, 0])
|
|
|
|
def test_setbit(self):
|
|
"""
|
|
Set bit fifth bit in the five bit binary binary representation
|
|
of 9 (01001)
|
|
"""
|
|
assert_array_equal(wb.setbit(9, 4), 25)
|
|
|
|
def test_setbits(self):
|
|
assert_array_equal(wb.setbits([1, 1]), 3)
|
|
assert_array_equal(wb.setbits([1, 0]), 1)
|
|
|
|
def test_getbits(self):
|
|
assert_array_equal(wb.getbits(3), [1, 1, 0, 0, 0, 0, 0, 0])
|
|
assert_array_equal(wb.getbits(1), [1, 0, 0, 0, 0, 0, 0, 0])
|
|
|
|
|
|
if __name__ == "__main__":
|
|
# import sys;sys.argv = ['', 'Test.testName']
|
|
unittest.main()
|