def test_lookup_position(self): self.assertEqual(3, Cube((2, 2), np.zeros(4))._lookup_position((1, 1))) self.assertEqual(0, Cube((2, 3), np.zeros(6))._lookup_position((0, 0))) self.assertEqual( 36, Cube((2, 4, 5), np.zeros(40))._lookup_position((1, 3, 1))) self.assertEqual(3, Cube((2, 2), np.zeros(4))._lookup_position((-1, -1)))
def test_links(self): dims = dict((d.name, d) for d in self.dimensions) links = [{"name": "date"}] cube = Cube("contracts", dimension_links=links, measures=self.measures) cube.link_dimensions(dims) self.assertEqual(len(cube.dimensions), 1) dim = cube.dimension("date") self.assertEqual(len(dim.hierarchies), 2) links = [{"name": "date"}, "product", "flag"] cube = Cube("contracts", dimension_links=links, measures=self.measures) cube.link_dimensions(dims) self.assertEqual(len(cube.dimensions), 3) self.assertIsInstance(cube.dimension("flag"), Dimension)
def test_reduce_sum(self): flat_data = np.arange(4).astype('float') cube = Cube((2, 2), flat_data) cube0 = cube.reduce_sum((0, ), keepdims=True) cube1 = cube.reduce_sum((1, ), keepdims=True) cube01 = cube.reduce_sum((0, 1), keepdims=True) np.testing.assert_equal(np.array([2., 4., 2., 4.]), cube0.flat) np.testing.assert_equal(np.array([1., 1., 5., 5.]), cube1.flat) np.testing.assert_equal(np.array([6., 6., 6., 6.]), cube01.flat)
def setUp(self): a = [DIM_DATE_DESC, DIM_PRODUCT_DESC, DIM_FLAG_DESC] self.measures = attribute_list(["amount", "discount"], Measure) self.details = attribute_list(["detail"], Attribute) self.dimensions = [create_dimension(desc) for desc in a] self.cube = Cube("contracts", dimensions=self.dimensions, measures=self.measures, details=self.details)
def test_link_hierarchies(self): dims = dict((d.name, d) for d in self.dimensions) links = [{"name": "date"}] cube = Cube("contracts", dimension_links=links, measures=self.measures) cube.link_dimensions(dims) dim = cube.dimension("date") self.assertEqual(len(dim.hierarchies), 2) self.assertEqual(dim.hierarchy().name, "ymd") links = [{"name": "date", "nonadditive": None}] cube = Cube("contracts", dimension_links=links, measures=self.measures) cube.link_dimensions(dims) dim = cube.dimension("date") self.assertEqual(len(dim.hierarchies), 2) self.assertEqual(dim.hierarchy().name, "ymd") links = [{"name": "date", "hierarchies": ["ym"]}] cube = Cube("contracts", dimension_links=links, measures=self.measures) cube.link_dimensions(dims) dim = cube.dimension("date") self.assertEqual(len(dim.hierarchies), 1) self.assertEqual(dim.hierarchy().name, "ym")
def test_shift(self): cube = Cube((2, 2), np.array([0, 1, 2, 3])) np.testing.assert_equal( np.array([[0., 0., 1., 0.], [0., 0., 0., 1.], [1., 0., 0., 0.], [0., 1., 0., 0.]]), cube.shift((1, 0)))
def test_reverse_lookup(self): cube = Cube((2, 4, 5), np.zeros(40)) for i in range(40): self.assertEqual(i, cube._lookup_position(cube._reverse_lookup(i)))
'- - -', '- -', '----------------', ] sprite_group = pygame.sprite.Group() sprite_group.add(hero) boxes = [] x = 0 y = 0 for row in level: for col in row: if col == '-': bx = Cube(x, y) sprite_group.add(bx) boxes.append(bx) x = x + 40 y = y + 40 x = 0 #bx = pygame.Surface((40, 40)) #bx = pygame.image.load('box.png') wheel = True clock = pygame.time.Clock() while wheel: clock.tick(25) for e in pygame.event.get():