示例#1
0
 def test_onelsit_pos(self):
     # READ
     r_1, r_2 = Runner(), Runner()
     e_1, e_2 = Runner.OneList.Ldata(), Runner.OneList.Ldata()
     e_1.number = 1
     e_1.name = 'runner:onelist:ldata[' + str(e_1.number) + ']:name'
     e_2.number = 2
     e_2.name = 'runner:onelist:ldata[' + str(e_2.number) + ']:name'
     r_1.one_list.ldata.extend([e_1, e_2])
     self.crud.create(self.ncc, r_1)
     r_2 = self.crud.read(self.ncc, r_2)
     self.assertEqual(is_equal(r_1, r_2), True)
     # UPDATE
     r_1, r_2 = Runner(), Runner()
     e_1, e_2 = Runner.OneList.Ldata(), Runner.OneList.Ldata()
     e_1.number = 1
     e_1.name = 'runner:onelist:ldata[' + str(e_1.number) + ']:name'
     e_2.number = 2
     e_2.name = 'runner:onelist:ldata[' + str(e_2.number) + ']:name'
     r_1.one_list.ldata.extend([e_1, e_2])
     self.crud.update(self.ncc, r_1)
     r_2 = self.crud.read(self.ncc, r_2)
     self.assertEqual(is_equal(r_1, r_2), True)
     # DELETE
     r_1 = Runner()
     self.crud.delete(self.ncc, r_1)
     r_2 = self.crud.read(self.ncc, r_1)
     self.assertEqual(r_2._has_data(), False)
示例#2
0
    def test_identity_leaflist(self):
        runner = self._create_runner()
        runner.ytypes.built_in_t.identity_llist.append(ChildIdentityIdentity())
        runner.ytypes.built_in_t.identity_llist.append(
            ChildChildIdentityIdentity())
        self.crud.create(self.ncc, runner)

        # Read into Runner2
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        result = is_equal(runner, runner1)
        self.assertEqual(result, True)

        #DEEPCOPY
        runner_copy = copy.deepcopy(runner)
        # result = is_equal(runner, runner_copy)
        # self.assertEqual(result, True)

        self.crud.delete(self.ncc, Runner())
        self.crud.create(self.ncc, runner_copy)

        # Read into Runner2
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        result = is_equal(runner, runner1)
        self.assertEqual(result, True)
示例#3
0
 def test_aug_onelist_pos(self):
     # CREATE
     r_1, r_2 = Runner(), Runner()
     e_1 = Runner.OneList.OneAugList.Ldata()
     e_2 = Runner.OneList.OneAugList.Ldata()
     e_1.number = 1
     e_1.name = e_1._common_path
     e_2.number = 2
     e_2.name = e_2._common_path
     r_1.one_list.one_aug_list.ldata.extend([e_1, e_2])
     r_1.one_list.one_aug_list.enabled = True
     self.crud.create(self.ncc, r_1)
     r_2 = self.crud.read(self.ncc, r_2)
     self.assertEqual(is_equal(r_1, r_2), True)
     # UPDATE
     r_1, r_2 = Runner(), Runner()
     e_1 = Runner.OneList.OneAugList.Ldata()
     e_2 = Runner.OneList.OneAugList.Ldata()
     e_1.number = 1
     e_1.name = e_1._common_path.replace(':', '/')
     e_2.number = 2
     e_2.name = e_2._common_path.replace(':', '/')
     r_1.one_list.one_aug_list.ldata.extend([e_1, e_2])
     r_1.one_list.one_aug_list.enabled = True
     self.crud.update(self.ncc, r_1)
     r_2 = self.crud.read(self.ncc, r_2)
     self.assertEqual(is_equal(r_1, r_2), True)
     # DELETE
     r_1 = Runner()
     self.crud.delete(self.ncc, r_1)
     r_2 = self.crud.read(self.ncc, r_2)
     self.assertEqual(r_2._has_data(), False)
示例#4
0
 def test_twolist_pos(self):
     # READ
     r_1, r_2 = Runner(), Runner()
     e_1, e_2 = Runner.TwoList.Ldata(), Runner.TwoList.Ldata()
     e_11, e_12 = Runner.TwoList.Ldata.Subl1(), Runner.TwoList.Ldata.Subl1()
     e_1.number = 21
     e_1.name = 'runner:twolist:ldata[' + str(e_1.number) + ']:name'
     e_11.number = 211
     e_11.name = 'runner:twolist:ldata[' + str(
         e_1.number) + ']:subl1[' + str(e_11.number) + ']:name'
     e_12.number = 212
     e_12.name = 'runner:twolist:ldata[' + str(
         e_1.number) + ']:subl1[' + str(e_12.number) + ']:name'
     e_1.subl1.extend([e_11, e_12])
     e_21, e_22 = Runner.TwoList.Ldata.Subl1(), Runner.TwoList.Ldata.Subl1()
     e_2.number = 22
     e_2.name = 'runner:twolist:ldata[' + str(e_2.number) + ']:name'
     e_21.number = 221
     e_21.name = 'runner:twolist:ldata[' + str(
         e_2.number) + ']:subl1[' + str(e_21.number) + ']:name'
     e_22.number = 222
     e_22.name = 'runner:twolist:ldata[' + str(
         e_2.number) + ']:subl1[' + str(e_22.number) + ']:name'
     e_2.subl1.extend([e_21, e_22])
     r_1.two_list.ldata.extend([e_1, e_2])
     self.crud.create(self.ncc, r_1)
     r_2 = self.crud.read(self.ncc, r_2)
     self.assertEqual(is_equal(r_1, r_2), True)
     # UPDATE
     r_1, r_2 = Runner(), Runner()
     e_1, e_2 = Runner.TwoList.Ldata(), Runner.TwoList.Ldata()
     e_11, e_12 = Runner.TwoList.Ldata.Subl1(), Runner.TwoList.Ldata.Subl1()
     e_1.number = 21
     e_1.name = 'runner/twolist/ldata[' + str(e_1.number) + ']/name'
     e_11.number = 211
     e_11.name = 'runner/twolist/ldata[' + str(
         e_1.number) + ']/subl1[' + str(e_11.number) + ']/name'
     e_12.number = 212
     e_12.name = 'runner/twolist/ldata[' + str(
         e_1.number) + ']/subl1[' + str(e_12.number) + ']/name'
     e_1.subl1.extend([e_11, e_12])
     e_21, e_22 = Runner.TwoList.Ldata.Subl1(), Runner.TwoList.Ldata.Subl1()
     e_2.number = 22
     e_2.name = 'runner/twolist/ldata[' + str(e_2.number) + ']/name'
     e_21.number = 221
     e_21.name = 'runner/twolist/ldata[' + str(
         e_2.number) + ']/subl1[' + str(e_21.number) + ']/name'
     e_22.number = 222
     e_22.name = 'runner/twolist/ldata[' + str(
         e_2.number) + ']/subl1[' + str(e_22.number) + ']/name'
     e_2.subl1.extend([e_21, e_22])
     r_1.two_list.ldata.extend([e_1, e_2])
     self.crud.update(self.ncc, r_1)
     r_2 = self.crud.read(self.ncc, r_2)
     self.assertEqual(is_equal(r_1, r_2), True)
     # DELETE
     r_1 = Runner()
     self.crud.delete(self.ncc, r_1)
     r_2 = self.crud.read(self.ncc, r_1)
     self.assertEqual(r_2._has_data(), False)
示例#5
0
    def test_three_level_pos(self):
        # READ
        r_1 = self._create_runner()
        r_1.three.number, r_1.three.name, \
            r_1.three.sub1.number, r_1.three.sub1.sub2.number = 3, 'runner:three:name', 31, 311
        self.crud.create(self.ncc, r_1)
        r_2 = Runner()
        r_2 = self.crud.read(self.ncc, r_2)

        self.assertEqual(r_1, r_2)

        # UPDATE
        r_1, r_2 = Runner(), Runner()
        r_1.three.number, r_1.three.name, \
            r_1.three.sub1.number, r_1.three.sub1.sub2.number = 30, 'runner/three/name', 310, 3110
        self.crud.update(self.ncc, r_1)
        r_2 = self.crud.read(self.ncc, r_2)

        self.assertEqual(r_1, r_2)

        # DELETE
        r_1 = Runner()
        self.crud.delete(self.ncc, r_1)
        r_2 = self.crud.read(self.ncc, r_1)

        self.assertEqual(r_2, None)
示例#6
0
    def test_leafref_simple_pos(self):
        # change ref and original data together
        # READ
        r_1, r_2 = Runner(), Runner()
        r_1.ytypes.built_in_t.number8 = 100
        r_1.ytypes.built_in_t.leaf_ref = r_1.ytypes.built_in_t.number8
        self.crud.create(self.ncc, r_1)
        r_2 = self.crud.read(self.ncc, r_2)

        self.assertEqual(r_1, r_2)

        # UPDATE
        r_1, r_2 = Runner(), Runner()
        r_1.ytypes.built_in_t.number8 = 110
        r_1.ytypes.built_in_t.leaf_ref = r_1.ytypes.built_in_t.number8
        self.crud.update(self.ncc, r_1)
        r_2 = self.crud.read(self.ncc, r_2)

        self.assertEqual(r_1, r_2)

        # DELETE
        r_1 = Runner()
        self.crud.delete(self.ncc, r_1)
        r_2 = self.crud.read(self.ncc, r_1)

        self.assertEqual(r_2, None)
示例#7
0
    def test_aug_one_pos(self):
        # CREATE
        r_1, r_2 = Runner(), Runner()
        r_1.ydktest_sanity_one.one_aug.number = 1
        r_1.ydktest_sanity_one.one_aug.name = "r_1.ydktest_sanity_one.one_aug.name"
        self.crud.create(self.ncc, r_1)
        r_2 = self.crud.read(self.ncc, r_2)

        self.assertEqual(r_1, r_2)

        # UPDATE
        r_1, r_2 = Runner(), Runner()
        r_1.ydktest_sanity_one.one_aug.number = 10
        r_1.ydktest_sanity_one.one_aug.name = "r_1.ydktest_sanity_one.one_aug.name".replace(
            '.', ':')
        self.crud.update(self.ncc, r_1)
        r_2 = self.crud.read(self.ncc, r_2)

        self.assertEqual(r_1, r_2)

        # DELETE
        r_1 = Runner()
        self.crud.delete(self.ncc, r_1)
        r_2 = self.crud.read(self.ncc, r_1)

        self.assertEqual(r_2, None)
示例#8
0
    def test_inner_pres(self):
        runner = Runner()
        runner.outer.inner = runner.Outer.Inner()
        self.crud.create(self.ncc, runner)

        runner_read = self.crud.read(self.ncc, Runner())
        self.assertEqual(runner, runner_read)
示例#9
0
    def test_copy_config(self):
        op = self.netconf_service.copy_config(self.ncc, Datastore.candidate,
                                              Datastore.running)
        self.assertEqual(None, op)

        runner = Runner()
        runner.two.number = 2
        runner.two.name = 'runner:two:name'
        get_filter = Runner()

        op = self.netconf_service.edit_config(self.ncc, Datastore.candidate,
                                              runner)
        self.assertEqual(None, op)

        op = self.netconf_service.copy_config(self.ncc, Datastore.running,
                                              Datastore.candidate)
        self.assertEqual(None, op)

        result = self.netconf_service.get_config(self.ncc, Datastore.running,
                                                 get_filter)
        self.assertEqual(is_equal(result, runner), True)

        runner.two.name += 'modified'

        op = self.netconf_service.copy_config(self.ncc, Datastore.running,
                                              runner)
        self.assertEqual(None, op)

        result = self.netconf_service.get_config(self.ncc, Datastore.running,
                                                 get_filter)
        self.assertEqual(is_equal(result, runner), True)
示例#10
0
    def test_read_on_ref_class(self):
        r_1 = Runner()
        r_1.one.number, r_1.one.name = 1, 'runner:one:name'
        self.crud.create(self.ncc, r_1)
        r_2 = Runner()

        r_2.one = READ()
        r_2 = self.crud.read(self.ncc, r_2)
        self.assertEqual(is_equal(r_1, r_2), True)
示例#11
0
    def test_embedded_slash_list_key(self):
        r = Runner()
        t = Runner.TwoKeyList()
        t.first = "ab/c"
        t.second = 1233
        r.two_key_list.append(t)
        self.crud.create(self.ncc, r)

        runner_read = self.crud.read(self.ncc, Runner())
        self.assertEqual(r, runner_read)
示例#12
0
    def embedded_single_quote_list_key(self):
        r = Runner()
        t = Runner.TwoKeyList()
        t.first = "ab\'c"
        t.second = 1233
        r.two_key_list.append(t)
        self.crud.create(self.ncc, runner)

        runner_read = self.crud.read(self.ncc, Runner())
        self.assertEqual(runner, runner_read)
示例#13
0
    def test_embedded_double_quote_list_key(self):
        r = Runner()
        t = Runner.TwoKeyList()
        t.first = 'ab"c'
        t.second = 1233
        r.two_key_list.append(t)
        self.crud.create(self.ncc, r)

        runner_read = self.crud.read(self.ncc, Runner())
        self.assertEqual(r, runner_read)
示例#14
0
    def test_parent_empty(self):
        runner = Runner()
        runner.ytypes.enabled = Empty()
        runner.ytypes.built_in_t.emptee = Empty()

        self.crud.create(self.ncc, runner)

        runner_read = self.crud.read(self.ncc, Runner())

        self.assertEqual(runner, runner_read)
示例#15
0
    def test_bits(self):
        runner = Runner()
        runner.ytypes.built_in_t.bits_value['disable-nagle'] = True
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#16
0
    def test_int64(self):
        runner = Runner()
        runner.ytypes.built_in_t.number64 = -9223372036854775808
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#17
0
    def test_uint32(self):
        runner = Runner()
        runner.ytypes.built_in_t.u_number32 = 5927
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#18
0
 def test_onelist_neg_dupkey(self):
     # netsim/enxr not complaining
     r_1, r_2 = Runner(), Runner()
     e_1, e_2 = Runner.OneList.Ldata(), Runner.OneList.Ldata()
     e_1.number = 1
     e_2.name = 'foo'
     e_2.number = 1
     e_2.name = 'bar'
     r_1.one_list.ldata.extend([e_1, e_2])
     self.crud.create(self.ncc, r_1)
     r_2 = self.crud.read(self.ncc, r_2)
示例#19
0
    def test_uint64(self):
        runner = Runner()
        runner.ytypes.built_in_t.u_number64 = 18446744073709551615
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#20
0
    def test_union_complex_list(self):
        runner = Runner()
        runner.ytypes.built_in_t.younion_list.append("123:45")
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#21
0
    def test_read_only_config(self):
        r_1 = Runner()
        r_1.one.number, r_1.one.name = 1, 'runner:one:name'
        self.crud.create(self.ncc, r_1)
        r_2, r_3 = Runner(), Runner()
        r_2.one.number, r_3.one.number = READ(), READ()

        r_2 = self.crud.read(self.ncc, r_2, only_config=True)
        r_3 = self.crud.read(self.ncc, r_3)
        # ysanity only have config data, ok to compare
        self.assertEqual(is_equal(r_2, r_3), True)
示例#22
0
    def test_string_1(self):
        runner = Runner()
        runner.ytypes.built_in_t.name = 'name_str'
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#23
0
    def test_empty(self):
        runner = Runner()
        runner.ytypes.built_in_t.emptee = Empty()
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#24
0
    def test_embedded_enum(self):
        runner = Runner()
        runner.ytypes.built_in_t.embeded_enum = Runner.Ytypes.BuiltInT.EmbededEnum.zero
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#25
0
    def test_union(self):
        runner = Runner()
        runner.ytypes.built_in_t.younion = YdkEnumTest.none
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#26
0
    def test_union_int(self):
        runner = Runner()
        runner.ytypes.built_in_t.enum_int_value = 2
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#27
0
    def test_status_enum(self):
        runner = Runner()
        runner.ytypes.built_in_t.status = runner.ytypes.built_in_t.Status.not_connected
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#28
0
    def test_decimal64(self):
        runner = Runner()
        runner.ytypes.built_in_t.deci64 = Decimal64('3.14')
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#29
0
    def test_int16(self):
        runner = Runner()
        runner.ytypes.built_in_t.number16 = 126
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)
示例#30
0
    def test_union_recursive(self):
        runner = Runner()
        runner.ytypes.built_in_t.younion_recursive = 18
        self.crud.create(self.ncc, runner)

        # Read into Runner1
        runner1 = Runner()
        runner1 = self.crud.read(self.ncc, runner1)

        # Compare runners
        self.assertEqual(runner, runner1)