@@ -3103,7 +3103,7 @@ int DLLEXPORT EN_addpattern(EN_ProjectHandle ph, char *id) {
|
||||
|
||||
if (!p->Openflag)
|
||||
return set_error(p->error_handle, 102);
|
||||
if (ENgetpatternindex(id, &i) == 0)
|
||||
if (EN_getpatternindex(ph, id, &i) == 0)
|
||||
return set_error(p->error_handle, 215);
|
||||
|
||||
/* Check that id name is not too long */
|
||||
@@ -3156,7 +3156,7 @@ int DLLEXPORT EN_addpattern(EN_ProjectHandle ph, char *id) {
|
||||
for (i = 0; i <= Npats; i++)
|
||||
free(Pattern[i].F);
|
||||
free(Pattern);
|
||||
Pattern = tmpPat;
|
||||
net->Pattern = tmpPat;
|
||||
net->Npats = n;
|
||||
par->MaxPats = n;
|
||||
return set_error(p->error_handle, 0);
|
||||
|
||||
@@ -204,4 +204,26 @@ BOOST_FIXTURE_TEST_CASE(test_progressive_stepping, Fixture)
|
||||
|
||||
}
|
||||
|
||||
BOOST_FIXTURE_TEST_CASE(test_addpattern, Fixture)
|
||||
{
|
||||
int pat_index, n_patterns_1, n_patterns_2;
|
||||
|
||||
// get the number of current patterns
|
||||
error = EN_getcount(ph, EN_PATCOUNT, &n_patterns_1);
|
||||
BOOST_REQUIRE(error == 0);
|
||||
|
||||
// add a new pattern
|
||||
error = EN_addpattern(ph, 'new_pattern');
|
||||
BOOST_REQUIRE(error == 0);
|
||||
|
||||
// get the new patterns count, shoul dbe the old one + 1
|
||||
error = EN_getcount(ph, EN_PATCOUNT, &n_patterns_2);
|
||||
BOOST_REQUIRE(error == 0);
|
||||
BOOST_REQUIRE(n_patterns_1 + 1 == n_patterns_2);
|
||||
|
||||
// gwt the new patterns index, should be as the number of patterns
|
||||
error = EN_getpatternindex(ph, 'new_pattern', &pat_index);
|
||||
BOOST_REQUIRE(pat_index == n_patterns_2);
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_SUITE_END()
|
||||
|
||||
Reference in New Issue
Block a user