def testReadWriteFull(self):
     ctx = UserContext(
         "Full", 
         ["user1", "user2"], 
         {"Pref1": "Super", "Pref2": "Duper"}
     )
     self.assertEquals("Full", ctx.getName())
     self.assertEquals(["Pref1", "Pref2"], ctx.getPrefKeys())
     self.assertReadWrite(ctx)
     
     #Get
     self.assertEquals("Super", ctx.getPrefValue("Pref1"))
     
     #Get missing
     self.assertIsNone(ctx.getPrefValue("NOPE"))
     self.assertEquals("MISSING", ctx.getPrefValue("StillNope", "MISSING"))
     
     #Pop missing
     self.assertIsNone(ctx.popPrefValue("NOPE"))
     self.assertEquals("MISSING", ctx.popPrefValue("StillNope", "MISSING"))
     
     #Pop and then re-pop now missing
     self.assertEquals("Duper", ctx.popPrefValue("Pref2", "WHAT?"))
     self.assertIsNone(ctx.popPrefValue("Pref2"))
     self.assertEquals("MISSING", ctx.popPrefValue("Pref2", "MISSING"))
     
     #Invasive state check
     ctx.setPrefValue("Pref1", "NewSuper")
     self.assertEquals({"Pref1": "NewSuper"}, ctx._prefs)
     self.assertEquals(["Pref1"], ctx.getPrefKeys())
Ejemplo n.º 2
0
    def testReadWriteFull(self):
        ctx = UserContext("Full", ["user1", "user2"], {
            "Pref1": "Super",
            "Pref2": "Duper"
        })
        self.assertEquals("Full", ctx.getName())
        self.assertEquals(["Pref1", "Pref2"], ctx.getPrefKeys())
        self.assertReadWrite(ctx)

        #Get
        self.assertEquals("Super", ctx.getPrefValue("Pref1"))

        #Get missing
        self.assertIsNone(ctx.getPrefValue("NOPE"))
        self.assertEquals("MISSING", ctx.getPrefValue("StillNope", "MISSING"))

        #Pop missing
        self.assertIsNone(ctx.popPrefValue("NOPE"))
        self.assertEquals("MISSING", ctx.popPrefValue("StillNope", "MISSING"))

        #Pop and then re-pop now missing
        self.assertEquals("Duper", ctx.popPrefValue("Pref2", "WHAT?"))
        self.assertIsNone(ctx.popPrefValue("Pref2"))
        self.assertEquals("MISSING", ctx.popPrefValue("Pref2", "MISSING"))

        #Invasive state check
        ctx.setPrefValue("Pref1", "NewSuper")
        self.assertEquals({"Pref1": "NewSuper"}, ctx._prefs)
        self.assertEquals(["Pref1"], ctx.getPrefKeys())