Geeks With Blogs

@onefloridacoder

News
John Smith's Blog Keeping the fun machine running one nickel at a time
Pex has had two updates, one since I first used it, and one after I finished using it.  Here’s the release notes for the latest build that dropped on 5/1/2009.  Fresh install, and rewinding back through the project I had referenced in my first post.  This time I need to build a different project that doesn’t reference my day job and also how well things work with xUnit.  imageThe install was perfect again, no issues with that so far.  Here are the release notes, and a few steps setting up a new project.  I’m just going to start a new project and start from scratch and buzz through the same examples I worked through previously.  Here’s the new project setup. 

 

Now that I’ve got a new project to work against, we can generate the Pex test project and ask Pex to get busy.  First we’ll ask Pex to create a new xUnit test project.  Right-clicking the Facade project exposes the context menu, we’ll choose “Create Parameterized Unit Test Stubs”, aka PUTs. 

 

 

 

 

 

This gives us the following dialogs to set our project properties.   I’ll leave the blanks blank, those exist to filter the namespace, type name, and method names you want to filter for the project under test. We want all of them, so they’ll be left blank. 

A variation on this is if you open the context menu inside the class file.  The filter fields are filled in for you to limit Pex’ interaction.

 imageimage 

 

 

 

 

 

 

 

 

 

 

 

Here are the settings I’ve chosen, I’m going with xUnit this time around.

image

 

 

 

 

 

 

 

imageThe “Settings…” dialog is where I tell Pex that for all unit tests created, each will have the PexTest suffix.

"Mark all test results Inconclusive by default" - This setting will add the Assert.Inconclusive() assertion at the bottom of the test method which is the default for all Visual Studio unit tests when they are generated in the IDE.

"Globally qualify all types" - This setting will prefix all fields in the test class with global qualifier.

"Use Code Patterns" - Pex utilizes many different code patterns which are beyond the scope of this document. You can find them in this document's appendix.

"Generate Stubs file for project under test" - The Stubs Framework utilized by Pex is explained by one of the authors here.

We click OK on the settings dialog.  We click OK on the main dialog, and Pex shows us the dialog pictured below.  We’re getting a unit test project called …\ProjectName.Tests (plural suffix);  now is your only chance to move this project around.  If you like to keep your unit test libraries somewhere else besides the project it’s testing move it to that place.  The MSTest dialog gives us a singular suffix.  So if you have both, this might help you keep them apart.  Hopefully they will allow us to (re)label them in future versions of Pex.

 image

Click OK.

If Pex can’t find your test runner, you’ll be prompted for the location.

image 

 

 

 

 

 

 

 

 

Here are the new pieces Pex has added.

image

 

A few things to notice here. We get one Pex class for each of our classes so the test methods are segregated neatly. The point to make here is to get everything neat before you generate the test project.  Also, notice the suffix, "PexTest". We can't rename the class library suffix, so I chose to rename the class files so I know by looking at the project members which classes are mine, and which ones were generated by Pex. Also, the stub file mentioned previously is generated for us.

image

 

 

 

 

 

 

 

 

 

Here’s what Reflector can show us about what was created as well, the crunchy layer looks pretty much identical to the Crunchy layer.

image

namespace PeanutButter.Business.Facade.Creamy
{
    /// <summary>This class contains parameterized unit tests for CreamyLayerManager</summary>
    [PexClass(typeof(CreamyLayerManager))]
    [PexAllowedExceptionFromTypeUnderTest(typeof(InvalidOperationException))]
    [PexAllowedExceptionFromTypeUnderTest(typeof(ArgumentException), AcceptExceptionSubtypes = true)]
    public partial class CreamyLayerManagerPexTest
    {
        /// <summary>Test stub for Add(!!0)</summary>
        [PexGenericArguments(typeof(int))]
        [PexMethod]
        public void Add<T>([PexAssumeUnderTest]CreamyLayerManager target, T entityToAdd)
        {
            // TODO: add assertions to method CreamyLayerManagerPexTest.Add(CreamyLayerManager, !!0)
            target.Add<T>(entityToAdd);
        }
 
        /// <summary>Test stub for Remove(!!0)</summary>
        [PexGenericArguments(typeof(int))]
        [PexMethod]
        public void Remove<T>(
            [PexAssumeUnderTest]CreamyLayerManager target,
            T entityToRemove
        )
        {
            // TODO: add assertions to method CreamyLayerManagerPexTest.Remove(CreamyLayerManager, !!0)
            target.Remove<T>(entityToRemove);
        }
 
        /// <summary>Test stub for Update(!!0)</summary>
        [PexGenericArguments(typeof(int))]
        [PexMethod]
        public void Update<T>(
            [PexAssumeUnderTest]CreamyLayerManager target,
            T entityToUpdate
        )
        {
            // TODO: add assertions to method CreamyLayerManagerPexTest.Update(CreamyLayerManager, !!0)
            target.Update<T>(entityToUpdate);
        }
    }

 

The only Source Analysis violation are related to moving the using statements inside the namespace declaration and the adding the method arguments to the summary block. Source and Code Analysis compliance was one of the latest features added to the Pex release in use.

Notice the method decoration "[PexMethod]" This method won't be visible to the xUnit test outline since unit tests are reference by the FactAttribute. If it would have been decorated with "[Fact]" it would.  Also notice Pex methods are parameterized (PUTs) tests.  The xUnit methods will be generated from, and by, the PUTs.

The PexMethod(s) will be used during the Pex Exploration we will step through now.  Right-clicking the test project exposes the Pex Exploration menu item which starts the exploration process.

 

image

 

 

 

 

 

 

 

 

Pex Exploration finishes and the Pex Explorer tells us we have some problems - all of my methods are throwing NotImplementedExceptions” - nice.  image 

 

 

 

 

 

 

 

 

 

 

I’ll stop here, fix my code and pick-up with an Exploration exercise to allow Pex to do something meaningful with my test project.

 

Until then.

Posted on Saturday, May 16, 2009 2:37 PM | Back to top


Comments on this post: Flex Your Pex (Part 1)

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Hey John,

Thanks for the tutorial, it made things much easier for me to understand.
Left by vegetarian dishes on Nov 29, 2010 1:59 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I’ll stop here, fix my code and pick-up with an Exploration exercise to allow Pex to do something meaningful with my test project.
Left by nike air jordans on Jan 07, 2011 3:35 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks for presenting an useful tutorial. It seems very useful for us. Great post.
Left by Quick cash loans on Feb 01, 2011 12:26 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I am the frequent visitor of this website.I had already added this blog to my favorites.Thank you for sharing this!
Left by Batch PDF Converter on Feb 18, 2011 5:09 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
There is a site named pex for fun.made by microsoft. IT gives code puzles and you solve it. Its really fun. http://www.pexforfun.com/
Left by Yale Alarm on Feb 21, 2011 9:35 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
allow Pex to do something meaningful with my test project.http://www.lpdedicated.com/
Left by Dedicated Server on Feb 23, 2011 3:50 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks for sharing such a great post as it's very interesting and informative.
Left by Seo services in India on Mar 03, 2011 11:23 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks for presenting an useful tutorial. It seems very useful for us. Great post.
Left by flour mill on Mar 08, 2011 10:14 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Pex Exploration finishes and the Pex Explorer tells us we have some problems - all of my methods are throwing NotImplementedExceptions” - nice.
Left by etui cuir nokia c7 on Mar 23, 2011 12:50 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Pex generates test suites with high code coverage. It finds interesting input-output values of your methods, which you can save as a small test suite with high code coverage.
Left by Fast cash on Mar 28, 2011 1:24 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks for walking through this, I don't think i would have figured it out otherwise!
Left by pop up canopies on Apr 18, 2011 7:02 AM

# hello
Requesting Gravatar...
I have just recently found your blog and absolutely love the posts. Thank you, thank you. I am still .NET programming but can't wait to try these things in Ruby and it is a great help to see such clear examples. kids apron
Left by Kids aprons on Jul 18, 2011 5:52 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
This is a very useful post! I started to read your blog several months ago and truing to visit every single week. Thank you for sharing such a useful info.Regards,
Left by Costa Rica Real Estate on Jul 20, 2011 11:19 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks for every other wonderful article. The place else may anybody get that kind of information in such a perfect means of writing? I’ve a presentation next week, and I’m at the search for such information.
Left by free cell phone spy on May 22, 2012 3:57 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks for walking through this, I don't think i would have figured it out otherwise!
Left by all kitchenware on Jan 06, 2013 11:46 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Very nice article in this post.
Left by Laptops buy on Jan 06, 2013 11:47 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
very nice and clearly write on this blog.
Left by all home theater buy on Feb 15, 2013 8:31 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks for walking through this, I don't think i would have figured it out otherwise!
Left by Tisu Majakani on Feb 27, 2013 11:23 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Super like this information, very useful.
Suplemen Fitness
Espresso Coffee Maker
Left by Amor on Apr 18, 2013 8:30 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks! this valuable information is worth everyone's attention. When can I find out more?
harga laptop
konveksi jaket
Left by Anne on Apr 29, 2013 9:26 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I simply stumbled upon your website and wanted to say that I have really enjoyed reading your blog post.
modifikasi ninja
teknik sipil
Left by Amura on May 12, 2013 7:20 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I simply stumbled upon your website and wanted to say that I have really enjoyed reading your blog post.
control engineering
Left by Akelo on May 12, 2013 10:47 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I am really impressed by this blog!Very clear explanation of issues is given and it is open to everyone.
It contains true and fair information.
Your website is very useful Obat diabetes
Left by Obat Kuat on May 13, 2013 12:48 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Very good post. Something which is very close to our heart.
You always have a way of making it so easy to follow your thoughts and what you’re sharing with us.
Thank you very much.Obat Kuat
Left by samurai on May 13, 2013 12:49 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
This is very interesting article.
Your article affects a lot of "burning" issues in our society.
It is impossible to be indifferent to these challenges.
There are many articles on the web on this particular point,
but you have captured another side of the topic.
Obat Kuat
This post gives the light in which we are able to observe the reality.
Very professional.
Left by TRIOMAN on May 14, 2013 1:52 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Very good post. Something which is very close to our heart.
You always have a way of making it so easy to follow your thoughts and what you’re sharing with us.
Thank you very much
coffee beans wholesale ||busana muslim
Left by gantengnbangent on Jun 04, 2013 9:08 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Hi awesome blog you made some awesome points with it i will add you to my favorites. and also baju couple I like this jual lingerie post very much, You have defined it very simply for so I understand what you say, In this post your writing level is also excellent to us. hijab store thanks for taking the time to discuss this, I feel strongly about it and love learning more on this topic. If possible,This is great issue you have done on this topic really very well. how to determine baby gender | cowok terganteng
Left by babygender on Jun 04, 2013 9:09 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
nice article and article is the bast
Left by Obat Stroke on Jun 16, 2013 4:03 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Outstanding piece of work you have done. This type of posts is rarely found. This site has proved its metals in the way of giving extra ordinary information.web design jakarta
Left by babygender on Jun 20, 2013 12:03 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I simply stumbled upon your website and wanted to say that I have really enjoyed reading your blog post.
nissan semarang
Left by Akelo on Jun 22, 2013 9:26 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
impressed! Extremely useful info specifically the last part :) I care for such information a lot. I was looking for this particular information for a long time. Thank you and good luck Obat Asma Gold-G
Left by jarwokuat on Jun 30, 2013 3:12 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
very useful information .. I wait for the next article more interesting ... and do not forget to visit me also at Obat Luka Diabetes
Left by vita on Jun 30, 2013 8:24 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
nice , clearly, and great article. i like it obat tradisional diabetes
Left by obat tradisional diabetes on Jul 07, 2013 2:47 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I have added this link so that the users of your site know more about chlamydia: How do you get chlamydia

Cheers,
Thakkar
Left by jimmy on Jul 15, 2013 2:21 AM

# re: Flex Your Pex (Part 1) http://agenkeripik.p.ht/
Requesting Gravatar...
Infonya sangat bagus & Menarik serta Menginspirasi .

Sukses selalu
dari http://agenkeripik.p.ht/
Left by distributor keripik tempe on Aug 05, 2013 2:34 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
nice article for software Jersey bola Liverpool
Left by icih on Aug 10, 2013 12:25 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
good article and I bookmarked Jersey bola Liverpool
Left by icih on Aug 10, 2013 12:25 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
You can effectively eliminate cellulite by not buying creams and wacky massages. Listen to what the expert says about it.
Left by Anna on Aug 21, 2013 2:12 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
really nice tutorial
i will bookmark ur site as my information
jual mainan
Left by jual mainan on Aug 28, 2013 7:43 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
pleased to be visiting your website that always gives the information to be interesting. Good luck to her web.
Left by vita on Aug 29, 2013 2:02 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
The MSTest dialog gives us a singular suffix. So if you have both, this might help you keep them apart. Hopefully they will allow us to (re)label them in future versions of Pex.
ford repair huntington beach
Left by amelieadam on Sep 05, 2013 6:27 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
This is also a very good post which I really enjoyed reading. It is not everyday that I have the possibility to see something like this.. jersey bola original

Left by belemere on Sep 13, 2013 4:47 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Greetings from me and thank you so much because you are willing to share information with me.
h2o Internasional
http://goo.gl/1h6CVL
http://h2o-internasional.info/
Left by h2o Internasional on Sep 13, 2013 1:01 PM

# re: Flex Your Pex (Part 1)

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks for a complete tutorial.. It's help a lot when we follow such a step by step tutorial like this.. Great effort Label Barcode
Left by Pusat Label on Sep 26, 2013 9:00 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thank you so much for the information you have shared with us!
I am impressed! jual jaket online keren
Left by jual jaket online keren on Oct 01, 2013 7:22 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
The first time I saw this blog I was immediately impressed because this is very good blog.. I hope you can publish useful articles again.. Very usefull information.. thx for sharing
suplemen fitness
suplemen fitness
Left by alex on Oct 15, 2013 2:59 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
very good, http://goo.gl/mR0sOC
Left by pelangsing herbal yang aman on Oct 20, 2013 3:20 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thank you for the good guide, it works so well :D

Karla - Supplier Baju
Left by Karla on Oct 20, 2013 3:35 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Just love it all totally a marvelous piece of work thanks for posting an outstanding one just love it allot. Fahruni Hijab Store This blog post really grabbed my attention. jual bros With that said I am going to subscribe. Therefore I will get more updates on what you have to say. Please keep writing as I want to learn more.
Left by Mila on Oct 30, 2013 1:04 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
With that said I am going to subscribe. Therefore I will get more updates on what you have to say. Please keep writing as I want to learn more. pashmina murah After read a couple of the articles on your website these few days, and I truly like your style of blogging. jual turban
Left by Mila on Oct 30, 2013 1:28 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I tag it to my favorites internet site list and will be checking back soon. jilbab instan Please check out my web site also and let me know what you think. lingerie warna pink
Left by Mila on Oct 30, 2013 1:30 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Is your theme custom made or did you download it from somewhere? baju couple online A design like yours with a few simple tweeks would really make my blog stand out. Please let me know where you got your design. kaos pasangan
Left by Mila on Oct 30, 2013 1:30 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I desired to thank you for this exceptional read!! I absolutely enjoyed every single small little bit of it. I’ve you bookmarked your internet site to look at out the new stuff you post. kaos couple lengan panjang I like the cut of your job :) or at least your thought process but sorry to say, I honestly think you would have fully sold me on the idea had you been able to back up your premis with a substantial bit more solid facts. kaos couple lucu
Left by Mila on Oct 30, 2013 1:33 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
The first time I saw this blog I was immediately impressed because this is very good blog.. I hope you can publish useful articles again.. Very usefull information.. thx for sharing latihan soal cpns
Left by Mila on Oct 30, 2013 1:34 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Cool guide, it works very well. Appreciate it! Supplier baju
Left by Alison Stamp on Nov 06, 2013 8:15 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Hi John, nice to visit your blog. And also thanks for your guide about Pex, keep it up! Pabrik baju
Left by Ivan on Nov 07, 2013 7:24 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Ternyata Rohto Plester Fever Patch berisiko lain.
Left by Demam on Nov 12, 2013 4:27 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
very useful information. I have bookmark your blog. I Hope you can share more useful blog like this. Tnank You
suplemen fitness
obat penumbuh rambut
Left by asd on Dec 07, 2013 7:28 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Great Share.. Thank you for sharing.. It very helpful.. I hope my comments can motivate you to make another useful blog..
baju batik
Left by asd on Dec 31, 2013 8:08 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I will post a link to this page on my blog. I am sure my visitors will locate that extremely useful...
Jual Jersey Bola
Left by dera on Dec 31, 2013 9:40 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
I was actually going through the nice helpful tips from the blog and I put respect to the writer of this post.
How To Get Rid Of Lower Back Pain On The Right
Left by Vera on Jan 01, 2014 4:41 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
thx for sharing.. veryusefull..
obat pelurus rambut
Left by albert on Jan 05, 2014 4:14 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks for your post, it's very good<br>informasi tekhnologi, spesifikasi, harga dan tips komputer
Left by rachmadp24 on Jan 13, 2014 4:21 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Woah! I’m really digging the template/theme of this blog. It’s simple, yet effective. A lot of times it’s tough to get that “perfect balance” between usability and appearance. I must say that you’ve done a amazing job with this. Additionally, the blog loads super fast for me on Chrome. Exceptional Blog Aksesoris Aquarium Jakarta
Left by winaagustin on Jan 26, 2014 2:32 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
This is a very useful post! I started to read your blog several months ago and truing to visit every single week. pashmina Thank you for sharing such a useful info.Regards, Fahruni Hijab Store
Left by jual jilbab on Jan 26, 2014 3:11 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Thanks for presenting an useful tutorial. It seems very useful for us. Great post. jual baju pasangan - gudang couple
Left by Mila on Jan 26, 2014 3:26 PM

# https://rebelmouse.com/yeastinfectionnomorelindaallen/
Requesting Gravatar...
I’ve been surfing online more than three hours today, yet I never found any interesting article like yours. It’s pretty worth enough for me. In my opinion, if all webmasters and bloggers made good content as you did, the web will be a lot more useful than ever before. https://rebelmouse.com/yeastinfectionnomorelindaallen/
Left by https://rebelmouse.com/yeastinfe on Jan 29, 2014 11:40 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
i am glad to read the whole content of this blog and am very excited and happy to say that the webmaster has done a very good job here to put all the information content and information at one place http://www.dewajaket.com/
Left by jua on Feb 19, 2014 3:02 AM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
As playing in the play ground in very advantageous for one person on the same side it can be dangerous too. As the surface of the playground is very rough so it can hurt your child in a bad way. Grass Mats
Left by Ahmad on Mar 04, 2014 11:31 PM

# the weight loss diets
Requesting Gravatar...
All possessed by this notion we simply ignore the underlying mechanism of these supplements to produce the muscles. Let’s first start with this aspect of growth supplements. the weight loss diets
Left by jassica on Mar 04, 2014 11:48 PM

# re: Flex Your Pex (Part 1)
Requesting Gravatar...
Nice tutorial, however, I find adding icons and cursors to the tutorial, makes it easier for the viewer to know exactly what your talking about. Like protecting a computer, you want to be secure in the knowledge that we all get it.
Left by Uchenna on May 12, 2014 11:30 AM

# cara memikat hati wanita cantik idaman anda meskipun anda jelek
Requesting Gravatar...
a Nice tutorial and very help me.. good luck
Left by jandaginda on May 25, 2014 7:36 AM

# HVAC talk
Requesting Gravatar...
By using labor force administration software program inside your company it might be appear simple for those who have just a couple workers and also have the change foundation integrated, however it might not be very easy whenever making the most of earnings in your company. For more information HVAC
Left by HVAC on Jul 01, 2014 10:54 PM

# obat tradisional kanker usus
Requesting Gravatar...
menuju hari kemenangan yang sesungguhnya.
Left by nizar on Jul 16, 2014 1:27 PM

Your comment:
 (will show your gravatar)
 


Copyright © onefloridacoder | Powered by: GeeksWithBlogs.net | Join free