##################################################
# Copyright (c) Xuanyi Dong [GitHub D-X-Y], 2019 #
##################################################
import torch
import torch.nn as nn
from SoftSelect import ChannelWiseInter

if __name__ == '__main__':

    tensors = torch.rand((16, 128, 7, 7))

    for oc in range(200, 210):
        out_v1 = ChannelWiseInter(tensors, oc, 'v1')
        out_v2 = ChannelWiseInter(tensors, oc, 'v2')
        assert (out_v1 == out_v2).any().item() == 1
    for oc in range(48, 160):
        out_v1 = ChannelWiseInter(tensors, oc, 'v1')
        out_v2 = ChannelWiseInter(tensors, oc, 'v2')
        assert (out_v1 == out_v2).any().item() == 1
