def test_filter_duplicate_facts_None_contextID(self): """ Tests to see if duplicate facts with a contextID equal to None are filtered """ facts = [ # Should be included because no duplicates Mock( contextID='context1', unitID='unit1', isNil=False, xValid=True ), # Should skip because None contextID Mock( contextID=None, unitID='unit1', isNil=False, xValid=True ), Mock( contextID=None, unitID=None, isNil=False, xValid=True ), # Should skip because empty contextID Mock( contextID=None, unitID='unit1', isNil=False, xValid=True ), Mock( contextID=None, unitID=None, isNil=False, xValid=True ), ] results = fact_lib.filter_duplicate_facts(facts) self.assertEqual(1, len(results)) self.assertEqual('context1', results[0].contextID) self.assertEqual('unit1', results[0].unitID)
def test_filter_duplicate_facts_duplicate_contextID_unitID(self): """ Tests to see if duplicate facts with the same contextID are filtered """ facts = [ # Should be included because no duplicates Mock( contextID='context1', unitID='unit1', isNil=False, xValid=True ), # Should skip because duplicate Mock( contextID='context2', unitID='unit1', isNil=False, xValid=True ), Mock( contextID='context2', unitID='unit1', isNil=False, xValid=True ), # Should include because new unit Mock( contextID='context1', unitID='unit2', isNil=False, xValid=True ), Mock( contextID='context2', unitID='unit2', isNil=False, xValid=True ), # Should not include because dupes Mock( contextID='context3', unitID=None, isNil=False, xValid=True ), Mock( contextID='context3', unitID=None, isNil=False, xValid=True ), # Should include because none units Mock( contextID='context1', unitID=None, isNil=False, xValid=True ), Mock( contextID='context2', unitID=None, isNil=False, xValid=True ), ] results = fact_lib.filter_duplicate_facts(facts) self.assertEqual(5, len(results)) self.assertIn(facts[0], results) self.assertIn(facts[3], results) self.assertIn(facts[4], results) self.assertIn(facts[7], results) self.assertIn(facts[8], results)
def test_xValid_filtering(self): facts = [ Mock( contextID='context1', unitID='unit1', isNil=False, xValid=False ), Mock( contextID='context2', unitID='unit1', isNil=False, xValid=True ) ] results = fact_lib.filter_duplicate_facts(facts, ignore_units=False) self.assertEqual(1, len(results)) self.assertEqual('context2', results[0].contextID) self.assertEqual('unit1', results[0].unitID)
def test_isNil_filtering(self): """ Test to see if isNil filtering correctly works """ facts = [ Mock(contextID='context1', unitID='unit1', isNil=True, xValid=True), Mock(contextID='context2', unitID='unit1', isNil=False, xValid=True) ] results = fact_lib.filter_duplicate_facts(facts, ignore_units=False) self.assertEqual(1, len(results)) self.assertEqual('context2', results[0].contextID) self.assertEqual('unit1', results[0].unitID)
def test_isNil_filtering(self): """ Test to see if isNil filtering correctly works """ facts = [ Mock( contextID='context1', unitID='unit1', isNil=True, xValid=True ), Mock( contextID='context2', unitID='unit1', isNil=False, xValid=True ) ] results = fact_lib.filter_duplicate_facts(facts, ignore_units=False) self.assertEqual(1, len(results)) self.assertEqual('context2', results[0].contextID) self.assertEqual('unit1', results[0].unitID)
def test_filter_duplicate_facts_duplicate_contextID_unitID(self): """ Tests to see if duplicate facts with the same contextID are filtered """ facts = [ # Should be included because no duplicates Mock(contextID='context1', unitID='unit1', isNil=False, xValid=True), # Should skip because duplicate Mock(contextID='context2', unitID='unit1', isNil=False, xValid=True), Mock(contextID='context2', unitID='unit1', isNil=False, xValid=True), # Should include because new unit Mock(contextID='context1', unitID='unit2', isNil=False, xValid=True), Mock(contextID='context2', unitID='unit2', isNil=False, xValid=True), # Should not include because dupes Mock(contextID='context3', unitID=None, isNil=False, xValid=True), Mock(contextID='context3', unitID=None, isNil=False, xValid=True), # Should include because none units Mock(contextID='context1', unitID=None, isNil=False, xValid=True), Mock(contextID='context2', unitID=None, isNil=False, xValid=True), ] results = fact_lib.filter_duplicate_facts(facts) self.assertEqual(5, len(results)) self.assertIn(facts[0], results) self.assertIn(facts[3], results) self.assertIn(facts[4], results) self.assertIn(facts[7], results) self.assertIn(facts[8], results)
def test_filter_duplicate_facts_None_contextID(self): """ Tests to see if duplicate facts with a contextID equal to None are filtered """ facts = [ # Should be included because no duplicates Mock(contextID='context1', unitID='unit1', isNil=False, xValid=True), # Should skip because None contextID Mock(contextID=None, unitID='unit1', isNil=False, xValid=True), Mock(contextID=None, unitID=None, isNil=False, xValid=True), # Should skip because empty contextID Mock(contextID=None, unitID='unit1', isNil=False, xValid=True), Mock(contextID=None, unitID=None, isNil=False, xValid=True), ] results = fact_lib.filter_duplicate_facts(facts) self.assertEqual(1, len(results)) self.assertEqual('context1', results[0].contextID) self.assertEqual('unit1', results[0].unitID)