Spaces:
Running
Running
import torch | |
from rstor.architecture.stacked_convolutions import StackedConvolutions | |
from rstor.properties import RELU | |
def test_stacked_convolutions(): | |
# Test case 1: Default parameters | |
model = StackedConvolutions() | |
assert isinstance(model, torch.nn.Module) | |
# Test case 2: Number of layers is not even | |
try: | |
model = StackedConvolutions(num_layers=7) | |
assert False, "Expected AssertionError" | |
except AssertionError: | |
pass | |
# Test case 3: Custom parameters | |
n, c, h, w = 1, 3, 64, 64 | |
model = StackedConvolutions(ch_in=c, ch_out=2, h_dim=32, num_layers=4, k_size=5, activation=RELU, bias=False) | |
assert isinstance(model, torch.nn.Module) | |
# Test case 4: Forward pass | |
input_tensor = torch.randn(n, c, h, w) | |
output_tensor = model(input_tensor) | |
assert model.receptive_field() == (25, 25) | |
assert output_tensor.shape == (1, 2, h, w) | |