<div dir="ltr">Hmm,it's used to generate the ip address for validation or rule checking, Meanwhile add some randomness. Of course it's unreasonable the case you mentioned, please check the existed cases [1] and [2]<div><br></div><div>[1] <a href="https://github.com/openstack/manila/blob/master/manila_tempest_tests/tests/api/base.py#L828">https://github.com/openstack/manila/blob/master/manila_tempest_tests/tests/api/base.py#L828</a><br>[2] <a href="https://github.com/openstack/manila/blob/master/manila_tempest_tests/tests/api/test_replication.py#L76">https://github.com/openstack/manila/blob/master/manila_tempest_tests/tests/api/test_replication.py#L76</a></div><div><br><div class="gmail_quote"><div dir="ltr">Doug Hellmann <<a href="mailto:doug@doughellmann.com">doug@doughellmann.com</a>>于2016年10月18日周二 上午12:01写道:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Excerpts from TommyLike Hu's message of 2016-10-17 14:46:36 +0000:<br class="gmail_msg">
> It's used in testcase already, and basic codes is from here:<br class="gmail_msg">
> <a href="https://github.com/openstack/manila/blob/master/manila_tempest_tests/utils.py#L93" rel="noreferrer" class="gmail_msg" target="_blank">https://github.com/openstack/manila/blob/master/manila_tempest_tests/utils.py#L93</a><br class="gmail_msg">
<br class="gmail_msg">
OK, I guess the real question I had is why use *random* addresses.<br class="gmail_msg">
Because that seems like a way to end up having two tests try to use the<br class="gmail_msg">
same address at the same time. If that did happen, would it cause<br class="gmail_msg">
conflicts or race conditions for the manila tests?<br class="gmail_msg">
<br class="gmail_msg">
><br class="gmail_msg">
> Doug Hellmann <<a href="mailto:doug@doughellmann.com" class="gmail_msg" target="_blank">doug@doughellmann.com</a>>于2016年10月17日周一 下午10:13写道:<br class="gmail_msg">
><br class="gmail_msg">
> > Excerpts from TommyLike Hu's message of 2016-10-17 09:56:15 +0000:<br class="gmail_msg">
> > > When I handle some stuff related to Manila recently, I found a case which<br class="gmail_msg">
> > > may be suitable for Oslo, Anyhow I put it in the maillist so it can be<br class="gmail_msg">
> > > discussed before I put it in action.<br class="gmail_msg">
> > > In testcase, we need a function(maybe 2) to generate random ip address<br class="gmail_msg">
> > (or<br class="gmail_msg">
> > > network), also they should in the range of [1](ipv4 documentation range)<br class="gmail_msg">
> > or<br class="gmail_msg">
> > > [2](ipv6 documentation range), this is the draft code for ipv4:<br class="gmail_msg">
> > ><br class="gmail_msg">
> > > import six<br class="gmail_msg">
> > > import random<br class="gmail_msg">
> > ><br class="gmail_msg">
> > ><br class="gmail_msg">
> > > def rand_ipv4(network=False):<br class="gmail_msg">
> > >     """This uses the TEST-NET-3 range of reserved IP addresses."""<br class="gmail_msg">
> > ><br class="gmail_msg">
> > >     test_net_3 = '203.0.113.'<br class="gmail_msg">
> > >     if network:<br class="gmail_msg">
> > >         host_length = random.randint(0, 8)<br class="gmail_msg">
> > >         address_segment = random.randint(0, 8 - host_length)<br class="gmail_msg">
> > >         address_segment <<= host_length<br class="gmail_msg">
> > >         address = test_net_3 + six.text_type(address_segment)<br class="gmail_msg">
> > >         address = '/'.join((address,<br class="gmail_msg">
> > >                             six.text_type(32 - host_length)))<br class="gmail_msg">
> > >     else:<br class="gmail_msg">
> > >         address = test_net_3 + six.text_type(random.randint(0, 255))<br class="gmail_msg">
> > >     return address<br class="gmail_msg">
> > ><br class="gmail_msg">
> > > The primary use case here is writing testcases,  I am not sure whether it<br class="gmail_msg">
> > > is suitable here, or maybe I misunderstood the intention of TEST-NET-3,<br class="gmail_msg">
> > > please leave any comment you like.<br class="gmail_msg">
> > ><br class="gmail_msg">
> > ><br class="gmail_msg">
> > > [1]  <a href="https://tools.ietf.org/html/rfc5737" rel="noreferrer" class="gmail_msg" target="_blank">https://tools.ietf.org/html/rfc5737</a><br class="gmail_msg">
> > > [2]  <a href="https://tools.ietf.org/html/rfc5156" rel="noreferrer" class="gmail_msg" target="_blank">https://tools.ietf.org/html/rfc5156</a><br class="gmail_msg">
> ><br class="gmail_msg">
> > In what way are you using random addresses in tests?<br class="gmail_msg">
> ><br class="gmail_msg">
> > Doug<br class="gmail_msg">
> ><br class="gmail_msg">
> > __________________________________________________________________________<br class="gmail_msg">
> > OpenStack Development Mailing List (not for usage questions)<br class="gmail_msg">
> > Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" class="gmail_msg" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br class="gmail_msg">
> > <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" class="gmail_msg" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br class="gmail_msg">
> ><br class="gmail_msg">
<br class="gmail_msg">
__________________________________________________________________________<br class="gmail_msg">
OpenStack Development Mailing List (not for usage questions)<br class="gmail_msg">
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" class="gmail_msg" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br class="gmail_msg">
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" class="gmail_msg" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br class="gmail_msg">
</blockquote></div></div></div>