Skip to content
Snippets Groups Projects
Select Git revision
  • 18def2004c25d2514b276245571fb223cbc2c5e0
  • main default protected
2 results

lsh_test.pl

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    lsh_test.pl 1.40 KiB
    
    :- module(lsh_tests, [run_lsh_tests/0]).
    
    :- use_module(library(plunit)).
    
    :- use_module(lsh).
    :- use_module('../../helper_files/helper.pl').
    
    reset_Model :-
            initModel(1,0,50,0.0001).
    
    %%
    %% TESTING predicate predicate/10
    %%
    :- begin_tests(predicate).      
    
    %% Failure Tests
                                                
    test(testDescription, [error(domain_error('expectation' , culprit), _)]) :-
            reset_Model_No_Train(perceptron),
            train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,0,0,0], 2, culprit, 50, 0.0001, _).
    
    test(testDescription2, [error(_,system_error('The values of the Label have to start at 0 and be >= 0 and < the given numClass!'))]) :-
            reset_Model_No_Train(perceptron),
            train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,1,0,2], 2, perceptron, 50, 0.0001, _).
            
    
    %% Successful Tests
    
    test(testDescription3, [true(Error =:= 1)]) :-
            reset_Model_No_Train(perceptron),
            train([5.1,3.5,1.4,4.9,3.0,1.4,4.7,3.2,1.3,4.6,3.1,1.5], 3, [0,0,0,0], 2, perceptron, 50, 0.0001, Error).
    
    test(testDescription4, [true(Error =:= 0.9797958971132711)]) :-
            reset_Model_No_Train(perceptron),
            open('src/data_csv/iris2.csv', read, File),
            take_csv_row(File, skipFirstRow,10, Data),
            train(Data, 4, [0,1,0,1,1,0,1,1,1,0], 2, perceptron, 50, 0.0001, Error).
    
    :- end_tests(predicate).
    
    run_lsh_tests :-
            run_tests.