예제 #1
0
        public void Configuration(IAppBuilder app)
        {
            HttpConfiguration config = new HttpConfiguration();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
                );

            app.UseWebApi(config);

            MongoConnection.Configure("mongodb://localhost", "owinMongo");
        }
        public async void Adding_A_Product_Should_Return_The_Product()
        {
            MongoConnection.Configure("mongodb://localhost", "owinMongoTest");
            TestHelpers.DestroyAllData();

            dynamic formVars = new ExpandoObject();

            formVars.Name = "fish";

            var response = await TestHelpers.TestServerInstance.Value.HttpClient.PostAsync("/products/add", TestHelpers.DynamicToFormData(formVars));

            var result = await response.Content.ReadAsStringAsync();

            dynamic addResult = JsonConvert.DeserializeObject <ExpandoObject>(result);

            Assert.AreEqual(addResult.Name, "fish");
        }
        public async void Getting_All_Products_Should_Return_All_Products()
        {
            MongoConnection.Configure("mongodb://localhost", "owinMongoTest");
            TestHelpers.DestroyAllData();

            dynamic formVars = new ExpandoObject();

            formVars.Name = "alpha";
            await TestHelpers.TestServerInstance.Value.HttpClient.PostAsync("/products/add", TestHelpers.DynamicToFormData(formVars));

            formVars.Name = "omega";
            await TestHelpers.TestServerInstance.Value.HttpClient.PostAsync("/products/add", TestHelpers.DynamicToFormData(formVars));

            var response = await TestHelpers.TestServerInstance.Value.HttpClient.GetAsync("/products/");

            var result = await response.Content.ReadAsAsync <List <object> >();

            Assert.AreEqual(result.Count, 2);
        }