You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.3 KiB
37 lines
1.3 KiB
#include "test/storm_gtest.h"
|
|
#include "storm-config.h"
|
|
|
|
|
|
#include "storm/models/sparse/StateLabeling.h"
|
|
|
|
|
|
|
|
TEST(StateLabelingTest, RemoveLabel) {
|
|
|
|
storm::models::sparse::StateLabeling labeling(10);
|
|
EXPECT_EQ(10ul, labeling.getNumberOfItems());
|
|
EXPECT_EQ(0ul, labeling.getNumberOfLabels());
|
|
|
|
storm::storage::BitVector statesTest1 = storm::storage::BitVector(10, {1, 4, 6, 7});
|
|
labeling.addLabel("test1", statesTest1);
|
|
EXPECT_TRUE(labeling.containsLabel("test1"));
|
|
EXPECT_FALSE(labeling.containsLabel("abc"));
|
|
|
|
storm::storage::BitVector statesTest2 = storm::storage::BitVector(10, {2, 6, 7, 8, 9});
|
|
labeling.addLabel("test2", statesTest2);
|
|
|
|
EXPECT_FALSE(labeling.getStateHasLabel("test2", 5));
|
|
labeling.addLabelToState("test2", 5);
|
|
EXPECT_TRUE(labeling.getStateHasLabel("test2", 5));
|
|
|
|
EXPECT_TRUE(labeling.getStateHasLabel("test1", 4));
|
|
labeling.removeLabelFromState("test1", 4);
|
|
EXPECT_FALSE(labeling.getStateHasLabel("test1", 4));
|
|
|
|
EXPECT_EQ(2ul, labeling.getNumberOfLabels());
|
|
EXPECT_TRUE(labeling.getStateHasLabel("test1", 6));
|
|
labeling.removeLabel("test1");
|
|
EXPECT_FALSE(labeling.containsLabel("test1"));
|
|
EXPECT_EQ(1ul, labeling.getNumberOfLabels());
|
|
EXPECT_TRUE(labeling.getStateHasLabel("test2", 5));
|
|
}
|