classdef Signalgenerator_test < IMDDTestCase methods (Test, TestTags = {'unit', 'fast', 'transmit', 'signalgenerator'}) function constructorStoresDefaultConfiguration(testCase) gen = Signalgenerator(); testCase.verifyEqual(gen.form, signalform.sine); testCase.verifyEqual(gen.length, 1024); testCase.verifyEqual(gen.fs, 1000); testCase.verifyEqual(gen.fsig, 50); end function buildSignalProducesExpectedSineWave(testCase) gen = Signalgenerator( ... "form", signalform.sine, ... "length", 4, ... "fs", 4, ... "fsig", 1); signal = gen.build_signal(); expected = [0 1 0 -1]; testCase.verifySize(signal, [1 4]); testCase.verifyEqual(signal, expected, "AbsTol", 1e-12); end function processWrapsGeneratedSignalInInformationsignal(testCase) gen = Signalgenerator( ... "form", signalform.sine, ... "length", 4, ... "fs", 4, ... "fsig", 1); out = gen.process(); testCase.verifyClass(out, 'Informationsignal'); testCase.verifySize(out.signal, [1 4]); testCase.verifyEqual(out.fs, 4); testCase.verifyEqual(out.signal, [0 1 0 -1], "AbsTol", 1e-12); testCase.verifyEqual(height(out.logbook), 1); end end end