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) | |