@@ -79,15 +79,26 @@ using .NDTensorsTestUtils: devices_list
7979 A = BlockSparseTensor {elt} ([(1 , 1 ), (2 , 2 )], [3 , 2 , 3 ], [2 , 2 ])
8080 randn! (A)
8181 t = Tensor (DiagBlockSparse (one (elt), blockoffsets (A)), inds (A))
82- @test_broken dense (contract (A, (1 , - 2 ), (t), (3 , - 2 ))) ≈
82+ @test dense (contract (A, (1 , - 2 ), (t), (3 , - 2 ))) ≈
8383 contract (dense (A), (1 , - 2 ), dense (t), (3 , - 2 ))
84- @test_broken dense (contract (A, (- 2 , 1 ), t, (- 2 , 3 ))) ≈
84+ @test dense (contract (A, (- 2 , 1 ), t, (- 2 , 3 ))) ≈
8585 contract (dense (A), (- 2 , 1 ), dense (t), (- 2 , 3 ))
86- @test_broken contract (dev (A), (- 1 , - 2 ), dev (t), (- 1 , - 2 ))[] ≈
86+ @test contract (dev (A), (- 1 , - 2 ), dev (t), (- 1 , - 2 ))[] ≈
8787 contract (dense (A), (- 1 , - 2 ), dense (t), (- 1 , - 2 ))[]
8888end
8989
9090@testset " DiagBlockSparse denseblocks" begin
91+ elt = Float64
92+ blockoffsets_a = Dictionary ([Block (1 , 1 ), Block (2 , 2 )], [0 , 2 ])
93+ inds_a = ([2 , 2 ], [2 , 2 ])
94+ a = Tensor (DiagBlockSparse (elt, blockoffsets_a, 4 ), inds_a)
95+ a[Block (1 , 1 )][1 , 1 ] = 1
96+ a[Block (1 , 1 )][2 , 2 ] = 2
97+ a[Block (2 , 2 )][1 , 1 ] = 3
98+ a[Block (2 , 2 )][2 , 2 ] = 4
99+ a′ = denseblocks (a)
100+ @test dense (a) == dense (a′)
101+
91102 elt = Float64
92103 blockoffsets_a = Dictionary ([Block (1 , 1 )], [0 ])
93104 inds_a = ([2 ], [1 , 1 ])
0 commit comments