|
|
|
@ -64,9 +64,9 @@ public class QualityItemOrganizerTest
|
|
|
|
|
NewQp.QualityDto(3, "three", true),
|
|
|
|
|
NewQp.QualityDto(6, "six", false),
|
|
|
|
|
NewQp.QualityDto(7, "seven", true),
|
|
|
|
|
NewQp.GroupDto(1002, "group3", true,
|
|
|
|
|
NewQp.GroupDto(1001, "group3", true,
|
|
|
|
|
NewQp.QualityDto(8, "eight", true)),
|
|
|
|
|
NewQp.GroupDto(1003, "group4", false,
|
|
|
|
|
NewQp.GroupDto(1002, "group4", false,
|
|
|
|
|
NewQp.QualityDto(9, "nine", false),
|
|
|
|
|
NewQp.QualityDto(10, "ten", false)),
|
|
|
|
|
NewQp.GroupDto(50, "group5", true,
|
|
|
|
@ -74,8 +74,7 @@ public class QualityItemOrganizerTest
|
|
|
|
|
// ------ NOT IN CONFIG ------
|
|
|
|
|
NewQp.QualityDto(2, "two", false),
|
|
|
|
|
NewQp.QualityDto(4, "four", false),
|
|
|
|
|
NewQp.GroupDto(1001, "group1", false,
|
|
|
|
|
NewQp.QualityDto(5, "five", false))
|
|
|
|
|
NewQp.QualityDto(5, "five", false)
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
@ -98,16 +97,15 @@ public class QualityItemOrganizerTest
|
|
|
|
|
// ------ NOT IN CONFIG ------
|
|
|
|
|
NewQp.QualityDto(2, "two", false),
|
|
|
|
|
NewQp.QualityDto(4, "four", false),
|
|
|
|
|
NewQp.GroupDto(1001, "group1", false,
|
|
|
|
|
NewQp.QualityDto(5, "five", false)),
|
|
|
|
|
NewQp.QualityDto(5, "five", false),
|
|
|
|
|
// ------ IN CONFIG ------
|
|
|
|
|
NewQp.QualityDto(1, "one", true),
|
|
|
|
|
NewQp.QualityDto(3, "three", true),
|
|
|
|
|
NewQp.QualityDto(6, "six", false),
|
|
|
|
|
NewQp.QualityDto(7, "seven", true),
|
|
|
|
|
NewQp.GroupDto(1002, "group3", true,
|
|
|
|
|
NewQp.GroupDto(1001, "group3", true,
|
|
|
|
|
NewQp.QualityDto(8, "eight", true)),
|
|
|
|
|
NewQp.GroupDto(1003, "group4", false,
|
|
|
|
|
NewQp.GroupDto(1002, "group4", false,
|
|
|
|
|
NewQp.QualityDto(9, "nine", false),
|
|
|
|
|
NewQp.QualityDto(10, "ten", false)),
|
|
|
|
|
NewQp.GroupDto(50, "group5", true,
|
|
|
|
@ -115,4 +113,98 @@ public class QualityItemOrganizerTest
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void Remove_empty_group()
|
|
|
|
|
{
|
|
|
|
|
var config = new QualityProfileConfig
|
|
|
|
|
{
|
|
|
|
|
Qualities = new[]
|
|
|
|
|
{
|
|
|
|
|
NewQp.QualityConfig("one")
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var dto = new QualityProfileDto
|
|
|
|
|
{
|
|
|
|
|
Items = new[]
|
|
|
|
|
{
|
|
|
|
|
NewQp.GroupDto(1001, "group1", true,
|
|
|
|
|
NewQp.QualityDto(1, "one", true))
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var sut = new QualityItemOrganizer();
|
|
|
|
|
var result = sut.OrganizeItems(dto, config);
|
|
|
|
|
|
|
|
|
|
result.Items.Should().BeEquivalentTo(new[]
|
|
|
|
|
{
|
|
|
|
|
NewQp.QualityDto(1, "one", true)
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void Flatten_group_with_one_remaining_item()
|
|
|
|
|
{
|
|
|
|
|
var config = new QualityProfileConfig
|
|
|
|
|
{
|
|
|
|
|
Qualities = new[]
|
|
|
|
|
{
|
|
|
|
|
NewQp.QualityConfig("one")
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var dto = new QualityProfileDto
|
|
|
|
|
{
|
|
|
|
|
Items = new[]
|
|
|
|
|
{
|
|
|
|
|
NewQp.GroupDto(1001, "group1", true,
|
|
|
|
|
NewQp.QualityDto(1, "one", true),
|
|
|
|
|
NewQp.QualityDto(2, "two", true))
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var sut = new QualityItemOrganizer();
|
|
|
|
|
var result = sut.OrganizeItems(dto, config);
|
|
|
|
|
|
|
|
|
|
result.Items.Should().BeEquivalentTo(new[]
|
|
|
|
|
{
|
|
|
|
|
NewQp.QualityDto(1, "one", true),
|
|
|
|
|
NewQp.QualityDto(2, "two", false)
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void Do_not_flatten_group_with_two_remaining_items()
|
|
|
|
|
{
|
|
|
|
|
var config = new QualityProfileConfig
|
|
|
|
|
{
|
|
|
|
|
Qualities = new[]
|
|
|
|
|
{
|
|
|
|
|
NewQp.QualityConfig("one")
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var dto = new QualityProfileDto
|
|
|
|
|
{
|
|
|
|
|
Items = new[]
|
|
|
|
|
{
|
|
|
|
|
NewQp.GroupDto(1001, "group1", true,
|
|
|
|
|
NewQp.QualityDto(1, "one", true),
|
|
|
|
|
NewQp.QualityDto(2, "two", true),
|
|
|
|
|
NewQp.QualityDto(3, "three", true))
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var sut = new QualityItemOrganizer();
|
|
|
|
|
var result = sut.OrganizeItems(dto, config);
|
|
|
|
|
|
|
|
|
|
result.Items.Should().BeEquivalentTo(new[]
|
|
|
|
|
{
|
|
|
|
|
NewQp.QualityDto(1, "one", true),
|
|
|
|
|
NewQp.GroupDto(1001, "group1", false,
|
|
|
|
|
NewQp.QualityDto(2, "two", false),
|
|
|
|
|
NewQp.QualityDto(3, "three", false))
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|