logic: add name delimiter to NameHierarchy
* NameHierarchy now looks like this: <delimiter>\tm<all the rest> * made new baseclasses for SettingsMigration and SettingsMigrator * Use the migration system for SqliteBookmarkStorage as well
This commit is contained in:
@@ -3412,8 +3412,6 @@ public:
|
||||
private:
|
||||
std::shared_ptr<TestParserClient> parseCode(std::string code, bool logErrors = true)
|
||||
{
|
||||
NameHierarchy::setDelimiter("::");
|
||||
|
||||
std::shared_ptr<TestFileRegister> fileRegister = std::make_shared<TestFileRegister>();
|
||||
std::shared_ptr<TestParserClient> parserClient = std::make_shared<TestParserClient>();
|
||||
CxxParser parser(parserClient, fileRegister);
|
||||
|
||||
+29
-29
@@ -92,7 +92,7 @@ public:
|
||||
|
||||
void test_nodes_are_nodes()
|
||||
{
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
|
||||
TS_ASSERT(a.isNode());
|
||||
TS_ASSERT(!a.isEdge());
|
||||
@@ -100,8 +100,8 @@ public:
|
||||
|
||||
void test_edges_are_edges()
|
||||
{
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B"), false);
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B", NAME_DELIMITER_CXX), false);
|
||||
Edge e(3, Edge::EDGE_USAGE, &a, &b);
|
||||
|
||||
TS_ASSERT(!e.isNode());
|
||||
@@ -110,27 +110,27 @@ public:
|
||||
|
||||
void test_set_type_of_node_from_constructor()
|
||||
{
|
||||
Node n(1, Node::NODE_FUNCTION, NameHierarchy("A"), false);
|
||||
Node n(1, Node::NODE_FUNCTION, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
TS_ASSERT_EQUALS(Node::NODE_FUNCTION, n.getType());
|
||||
}
|
||||
|
||||
void test_set_type_of_node_from_non_indexed()
|
||||
{
|
||||
Node n(2, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
Node n(2, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
n.setType(Node::NODE_CLASS);
|
||||
TS_ASSERT_EQUALS(Node::NODE_CLASS, n.getType());
|
||||
}
|
||||
|
||||
void test_can_not_change_type_of_node_after_it_was_set()
|
||||
{
|
||||
Node n(3, Node::NODE_NAMESPACE, NameHierarchy("A"), false);
|
||||
Node n(3, Node::NODE_NAMESPACE, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
n.setType(Node::NODE_CLASS);
|
||||
TS_ASSERT_DIFFERS(Node::NODE_CLASS, n.getType());
|
||||
}
|
||||
|
||||
void test_node_can_be_copied_and_keeps_same_id()
|
||||
{
|
||||
Node n(4, Node::NODE_NAMESPACE, NameHierarchy("A"), false);
|
||||
Node n(4, Node::NODE_NAMESPACE, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
Node n2(n);
|
||||
|
||||
TS_ASSERT_DIFFERS(&n, &n2);
|
||||
@@ -141,15 +141,15 @@ public:
|
||||
|
||||
void test_node_type_bit_masking()
|
||||
{
|
||||
Node n(1, Node::NODE_NAMESPACE, NameHierarchy("A"), false);
|
||||
Node n(1, Node::NODE_NAMESPACE, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
TS_ASSERT(n.isType(Node::NODE_FUNCTION | Node::NODE_NAMESPACE | Node::NODE_CLASS));
|
||||
TS_ASSERT(!n.isType(Node::NODE_FUNCTION | Node::NODE_METHOD | Node::NODE_CLASS));
|
||||
}
|
||||
|
||||
void test_get_type_of_edges()
|
||||
{
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B"), false);
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B", NAME_DELIMITER_CXX), false);
|
||||
Edge e(3, Edge::EDGE_USAGE, &a, &b);
|
||||
|
||||
TS_ASSERT_EQUALS(Edge::EDGE_USAGE, e.getType());
|
||||
@@ -157,8 +157,8 @@ public:
|
||||
|
||||
void test_edge_can_be_copied_and_keeps_same_id()
|
||||
{
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B"), false);
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B", NAME_DELIMITER_CXX), false);
|
||||
Edge e(3, Edge::EDGE_USAGE, &a, &b);
|
||||
Edge e2(e, &a, &b);
|
||||
|
||||
@@ -169,8 +169,8 @@ public:
|
||||
|
||||
void test_edge_type_bit_masking()
|
||||
{
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B"), false);
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B", NAME_DELIMITER_CXX), false);
|
||||
Edge e(3, Edge::EDGE_USAGE, &a, &b);
|
||||
|
||||
TS_ASSERT(e.isType(Edge::EDGE_MEMBER | Edge::EDGE_CALL | Edge::EDGE_USAGE));
|
||||
@@ -179,9 +179,9 @@ public:
|
||||
|
||||
void test_node_finds_child_node()
|
||||
{
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B"), false);
|
||||
Node c(3, Node::NODE_NON_INDEXED, NameHierarchy("C"), false);
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B", NAME_DELIMITER_CXX), false);
|
||||
Node c(3, Node::NODE_NON_INDEXED, NameHierarchy("C", NAME_DELIMITER_CXX), false);
|
||||
Edge e(4, Edge::EDGE_MEMBER, &a, &b);
|
||||
Edge e2(5, Edge::EDGE_MEMBER, &a, &c);
|
||||
|
||||
@@ -198,9 +198,9 @@ public:
|
||||
|
||||
void test_node_can_not_find_child_node()
|
||||
{
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B"), false);
|
||||
Node c(3, Node::NODE_NON_INDEXED, NameHierarchy("C"), false);
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B", NAME_DELIMITER_CXX), false);
|
||||
Node c(3, Node::NODE_NON_INDEXED, NameHierarchy("C", NAME_DELIMITER_CXX), false);
|
||||
Edge e(4, Edge::EDGE_MEMBER, &a, &b);
|
||||
Edge e2(5, Edge::EDGE_MEMBER, &a, &c);
|
||||
|
||||
@@ -216,9 +216,9 @@ public:
|
||||
|
||||
void test_node_visits_child_nodes()
|
||||
{
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B"), false);
|
||||
Node c(3, Node::NODE_NON_INDEXED, NameHierarchy("C"), false);
|
||||
Node a(1, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
Node b(2, Node::NODE_NON_INDEXED, NameHierarchy("B", NAME_DELIMITER_CXX), false);
|
||||
Node c(3, Node::NODE_NON_INDEXED, NameHierarchy("C", NAME_DELIMITER_CXX), false);
|
||||
Edge e(4, Edge::EDGE_MEMBER, &a, &b);
|
||||
Edge e2(5, Edge::EDGE_MEMBER, &a, &c);
|
||||
|
||||
@@ -238,8 +238,8 @@ public:
|
||||
void test_graph_saves_nodes()
|
||||
{
|
||||
Graph graph;
|
||||
Node* a = graph.createNode(1, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
Node* b = graph.createNode(2, Node::NODE_NON_INDEXED, NameHierarchy("B"), false);
|
||||
Node* a = graph.createNode(1, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
Node* b = graph.createNode(2, Node::NODE_NON_INDEXED, NameHierarchy("B", NAME_DELIMITER_CXX), false);
|
||||
|
||||
TS_ASSERT_EQUALS(2, graph.getNodeCount());
|
||||
TS_ASSERT_EQUALS(0, graph.getEdgeCount());
|
||||
@@ -257,8 +257,8 @@ public:
|
||||
{
|
||||
Graph graph;
|
||||
|
||||
Node* a = graph.createNode(1, Node::NODE_FUNCTION, NameHierarchy("A"), false);
|
||||
Node* b = graph.createNode(2, Node::NODE_FUNCTION, NameHierarchy("B"), false);
|
||||
Node* a = graph.createNode(1, Node::NODE_FUNCTION, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
Node* b = graph.createNode(2, Node::NODE_FUNCTION, NameHierarchy("B", NAME_DELIMITER_CXX), false);
|
||||
|
||||
Edge* e = graph.createEdge(3, Edge::EDGE_CALL, a, b);
|
||||
|
||||
@@ -273,8 +273,8 @@ public:
|
||||
{
|
||||
Graph graph;
|
||||
|
||||
Node* a = graph.createNode(1, Node::NODE_NON_INDEXED, NameHierarchy("A"), false);
|
||||
graph.createNode(2, Node::NODE_NON_INDEXED, NameHierarchy("B"), false);
|
||||
Node* a = graph.createNode(1, Node::NODE_NON_INDEXED, NameHierarchy("A", NAME_DELIMITER_CXX), false);
|
||||
graph.createNode(2, Node::NODE_NON_INDEXED, NameHierarchy("B", NAME_DELIMITER_CXX), false);
|
||||
|
||||
TS_ASSERT_EQUALS(2, graph.getNodeCount());
|
||||
TS_ASSERT_EQUALS(0, graph.getEdgeCount());
|
||||
|
||||
@@ -832,8 +832,6 @@ private:
|
||||
|
||||
std::shared_ptr<TestParserClient> parseCode(std::string code, bool logErrors = true)
|
||||
{
|
||||
NameHierarchy::setDelimiter(".");
|
||||
|
||||
std::shared_ptr<TestParserClient> parserClient = std::make_shared<TestParserClient>();
|
||||
|
||||
std::shared_ptr<TextAccess> textAccess = TextAccess::createFromString(code);
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#include "cxxtest/TestSuite.h"
|
||||
|
||||
#include "utility/utilityString.h"
|
||||
|
||||
#include "data/name/NameHierarchy.h"
|
||||
#include "data/search/SearchIndex.h"
|
||||
#include "utility/utilityString.h"
|
||||
|
||||
class SearchIndexTestSuite : public CxxTest::TestSuite
|
||||
{
|
||||
@@ -11,7 +11,7 @@ public:
|
||||
void test_search_index_finds_id_of_element_added()
|
||||
{
|
||||
SearchIndex index;
|
||||
index.addNode(1, NameHierarchy::deserialize("foo\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(1, NameHierarchy::deserialize("::\tmfoo\tsvoid\tp() const").getQualifiedName());
|
||||
index.finishSetup();
|
||||
std::vector<SearchResult> results = index.search("oo", 0);
|
||||
|
||||
@@ -23,7 +23,7 @@ public:
|
||||
void test_search_index_finds_correct_indices_for_query()
|
||||
{
|
||||
SearchIndex index;
|
||||
index.addNode(1, NameHierarchy::deserialize("foo\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(1, NameHierarchy::deserialize("::\tmfoo\tsvoid\tp() const").getQualifiedName());
|
||||
index.finishSetup();
|
||||
std::vector<SearchResult> results = index.search("oo", 0);
|
||||
|
||||
@@ -36,8 +36,8 @@ public:
|
||||
void test_search_index_finds_ids_for_ambiguous_query()
|
||||
{
|
||||
SearchIndex index;
|
||||
index.addNode(1, NameHierarchy::deserialize("for\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(2, NameHierarchy::deserialize("fos\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(1, NameHierarchy::deserialize("::\tmfor\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(2, NameHierarchy::deserialize("::\tmfos\tsvoid\tp() const").getQualifiedName());
|
||||
index.finishSetup();
|
||||
std::vector<SearchResult> results = index.search("fo", 0);
|
||||
|
||||
@@ -51,7 +51,7 @@ public:
|
||||
void test_search_index_does_not_find_anything_after_clear()
|
||||
{
|
||||
SearchIndex index;
|
||||
index.addNode(1, NameHierarchy::deserialize("foo\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(1, NameHierarchy::deserialize("::\tmfoo\tsvoid\tp() const").getQualifiedName());
|
||||
index.finishSetup();
|
||||
index.clear();
|
||||
std::vector<SearchResult> results = index.search("oo", 0);
|
||||
@@ -62,8 +62,8 @@ public:
|
||||
void test_search_index_does_not_find_all_results_when_max_amount_is_limited()
|
||||
{
|
||||
SearchIndex index;
|
||||
index.addNode(1, NameHierarchy::deserialize("foo1\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(2, NameHierarchy::deserialize("foo2\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(1, NameHierarchy::deserialize("::\tmfoo1\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(2, NameHierarchy::deserialize("::\tmfoo2\tsvoid\tp() const").getQualifiedName());
|
||||
index.finishSetup();
|
||||
std::vector<SearchResult> results = index.search("oo", 1);
|
||||
|
||||
@@ -73,8 +73,8 @@ public:
|
||||
void test_search_index_query_is_case_insensitive()
|
||||
{
|
||||
SearchIndex index;
|
||||
index.addNode(1, NameHierarchy::deserialize("foo1\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(2, NameHierarchy::deserialize("FOO2\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(1, NameHierarchy::deserialize("::\tmfoo1\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(2, NameHierarchy::deserialize("::\tmFOO2\tsvoid\tp() const").getQualifiedName());
|
||||
index.finishSetup();
|
||||
std::vector<SearchResult> results = index.search("oo", 0);
|
||||
|
||||
@@ -85,8 +85,8 @@ public:
|
||||
{
|
||||
|
||||
SearchIndex index;
|
||||
index.addNode(1, NameHierarchy::deserialize("oaabbcc\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(2, NameHierarchy::deserialize("ocbcabc\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(1, NameHierarchy::deserialize("::\tmoaabbcc\tsvoid\tp() const").getQualifiedName());
|
||||
index.addNode(2, NameHierarchy::deserialize("::\tmocbcabc\tsvoid\tp() const").getQualifiedName());
|
||||
index.finishSetup();
|
||||
std::vector<SearchResult> results = index.search("abc", 0);
|
||||
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
|
||||
#include "settings/Settings.h"
|
||||
#include "settings/migration/SettingsMigrator.h"
|
||||
#include "settings/migration/MigrationLambda.h"
|
||||
#include "settings/migration/MigrationMoveKey.h"
|
||||
#include "settings/migration/SettingsMigrationLambda.h"
|
||||
#include "settings/migration/SettingsMigrationMoveKey.h"
|
||||
#include "utility/text/TextAccess.h"
|
||||
|
||||
class SettingsMigratorTestSuite : public CxxTest::TestSuite
|
||||
{
|
||||
@@ -49,7 +50,7 @@ public:
|
||||
);
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("value", "int"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("value", "int"));
|
||||
migrator.migrate(&settingsBefore, 1);
|
||||
|
||||
TS_ASSERT_EQUALS(settingsBefore.getAsText(), settingsAfter.getAsText());
|
||||
@@ -75,7 +76,7 @@ public:
|
||||
);
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("value", "sub/int"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("value", "sub/int"));
|
||||
migrator.migrate(&settingsBefore, 1);
|
||||
|
||||
TS_ASSERT_EQUALS(settingsBefore.getAsText(), settingsAfter.getAsText());
|
||||
@@ -107,7 +108,7 @@ public:
|
||||
);
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("values/value", "vals/value"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("values/value", "vals/value"));
|
||||
migrator.migrate(&settingsBefore, 1);
|
||||
|
||||
TS_ASSERT_EQUALS(settingsBefore.getAsText(), settingsAfter.getAsText());
|
||||
@@ -139,7 +140,7 @@ public:
|
||||
);
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("values/value", "values/val"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("values/value", "values/val"));
|
||||
migrator.migrate(&settingsBefore, 1);
|
||||
|
||||
TS_ASSERT_EQUALS(settingsBefore.getAsText(), settingsAfter.getAsText());
|
||||
@@ -163,8 +164,8 @@ public:
|
||||
);
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("value", "int"));
|
||||
migrator.addMigration(2, std::make_shared<MigrationMoveKey>("int", "val"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("value", "int"));
|
||||
migrator.addMigration(2, std::make_shared<SettingsMigrationMoveKey>("int", "val"));
|
||||
migrator.migrate(&settingsBefore, 1);
|
||||
|
||||
TS_ASSERT_EQUALS(settingsBefore.getAsText(), settingsAfter.getAsText());
|
||||
@@ -189,8 +190,8 @@ public:
|
||||
);
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("value", "int"));
|
||||
migrator.addMigration(2, std::make_shared<MigrationMoveKey>("int", "val"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("value", "int"));
|
||||
migrator.addMigration(2, std::make_shared<SettingsMigrationMoveKey>("int", "val"));
|
||||
migrator.migrate(&settingsBefore, 2);
|
||||
|
||||
TS_ASSERT_EQUALS(settingsBefore.getAsText(), settingsAfter.getAsText());
|
||||
@@ -214,8 +215,8 @@ public:
|
||||
);
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("value", "int"));
|
||||
migrator.addMigration(2, std::make_shared<MigrationMoveKey>("int", "val"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("value", "int"));
|
||||
migrator.addMigration(2, std::make_shared<SettingsMigrationMoveKey>("int", "val"));
|
||||
migrator.migrate(&settingsBefore, 2);
|
||||
|
||||
TS_ASSERT_EQUALS(settingsBefore.getAsText(), settingsAfter.getAsText());
|
||||
@@ -241,8 +242,8 @@ public:
|
||||
);
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("value", "val"));
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("element", "ele"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("value", "val"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("element", "ele"));
|
||||
migrator.migrate(&settingsBefore, 2);
|
||||
|
||||
TS_ASSERT_EQUALS(settingsBefore.getAsText(), settingsAfter.getAsText());
|
||||
@@ -274,10 +275,10 @@ public:
|
||||
);
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("value", "int/val"));
|
||||
migrator.addMigration(1, std::make_shared<MigrationMoveKey>("element", "ele"));
|
||||
migrator.addMigration(2, std::make_shared<MigrationMoveKey>("int/val", "int"));
|
||||
migrator.addMigration(3, std::make_shared<MigrationMoveKey>("ele", "elements/element"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("value", "int/val"));
|
||||
migrator.addMigration(1, std::make_shared<SettingsMigrationMoveKey>("element", "ele"));
|
||||
migrator.addMigration(2, std::make_shared<SettingsMigrationMoveKey>("int/val", "int"));
|
||||
migrator.addMigration(3, std::make_shared<SettingsMigrationMoveKey>("ele", "elements/element"));
|
||||
migrator.migrate(&settingsBefore, 3);
|
||||
|
||||
TS_ASSERT_EQUALS(settingsBefore.getAsText(), settingsAfter.getAsText());
|
||||
@@ -302,8 +303,8 @@ public:
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(
|
||||
1, std::make_shared<MigrationLambda>(
|
||||
[](const Migration* migration, Settings* settings)
|
||||
1, std::make_shared<SettingsMigrationLambda>(
|
||||
[](const SettingsMigration* migration, Settings* settings)
|
||||
{
|
||||
migration->setValueInSettings<int>(settings, "value", migration->getValueFromSettings<int>(settings, "value", 0) * 2);
|
||||
}
|
||||
@@ -332,19 +333,21 @@ public:
|
||||
|
||||
SettingsMigrator migrator;
|
||||
migrator.addMigration(
|
||||
1, std::make_shared<MigrationLambda>(
|
||||
[](const Migration* migration, Settings* settings)
|
||||
{
|
||||
migration->setValueInSettings<int>(settings, "value", migration->getValueFromSettings<int>(settings, "value", 0) * 2);
|
||||
}
|
||||
));
|
||||
1, std::make_shared<SettingsMigrationLambda>(
|
||||
[](const SettingsMigration* migration, Settings* settings)
|
||||
{
|
||||
migration->setValueInSettings<int>(settings, "value", migration->getValueFromSettings<int>(settings, "value", 0) * 2);
|
||||
}
|
||||
)
|
||||
);
|
||||
migrator.addMigration(
|
||||
2, std::make_shared<MigrationLambda>(
|
||||
[](const Migration* migration, Settings* settings)
|
||||
{
|
||||
migration->setValueInSettings<int>(settings, "value", migration->getValueFromSettings<int>(settings, "value", 0) - 1);
|
||||
}
|
||||
));
|
||||
2, std::make_shared<SettingsMigrationLambda>(
|
||||
[](const SettingsMigration* migration, Settings* settings)
|
||||
{
|
||||
migration->setValueInSettings<int>(settings, "value", migration->getValueFromSettings<int>(settings, "value", 0) - 1);
|
||||
}
|
||||
)
|
||||
);
|
||||
migrator.migrate(&settingsBefore, 2);
|
||||
|
||||
TS_ASSERT_EQUALS(settingsBefore.getAsText(), settingsAfter.getAsText());
|
||||
|
||||
@@ -23,7 +23,7 @@ public:
|
||||
std::string filePath = "path/to/test.h";
|
||||
|
||||
std::shared_ptr<IntermediateStorage> intermetiateStorage = std::make_shared<IntermediateStorage>();
|
||||
Id id = intermetiateStorage->addNode(Node::typeToInt(Node::NODE_FILE), NameHierarchy::serialize(NameHierarchy(filePath)));
|
||||
Id id = intermetiateStorage->addNode(Node::typeToInt(Node::NODE_FILE), NameHierarchy::serialize(NameHierarchy(filePath, NAME_DELIMITER_FILE)));
|
||||
intermetiateStorage->addFile(id, filePath, "someTime", true);
|
||||
|
||||
storage.inject(intermetiateStorage.get());
|
||||
@@ -249,8 +249,6 @@ private:
|
||||
|
||||
Id getEdgeId(Edge::EdgeType type, const NameHierarchy& fromName, const NameHierarchy& toName) const
|
||||
{
|
||||
NameHierarchy from;
|
||||
|
||||
return getIdForEdge(type, fromName, toName);
|
||||
}
|
||||
};
|
||||
@@ -271,8 +269,8 @@ private:
|
||||
|
||||
NameHierarchy createNameHierarchy(std::string s) const
|
||||
{
|
||||
NameHierarchy nameHierarchy;
|
||||
for (std::string element: utility::splitToVector(s, "::"))
|
||||
NameHierarchy nameHierarchy(NAME_DELIMITER_CXX);
|
||||
for (std::string element: utility::splitToVector(s, nameDelimiterTypeToString(NAME_DELIMITER_CXX)))
|
||||
{
|
||||
nameHierarchy.push(std::make_shared<NameElement>(element, NameElement::Signature()));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user