public void SearchingByNameUsingRiakSearchObjectReturnsTheObjectid()
        {
            Client.Put(new RiakObject(Bucket, RiakSearchKey, RiakSearchDoc, RiakConstants.ContentTypes.ApplicationJson));
            Client.Put(new RiakObject(Bucket, RiakSearchKey2, RiakSearchDoc2, RiakConstants.ContentTypes.ApplicationJson));

            var mr = new RiakMapReduceQuery();

            //var rspt = new RiakSearchPhraseToken {Field = "name", Term = "Al*"};
            var rspt = new RiakSearchPhraseToken("Al*");

            var mfa = new RiakModuleFunctionArgInput
            {
                Module   = "riak_search",
                Function = "mapred_search",
                Arg      = new[] { Bucket, rspt.ToString() }
            };

            mr.Inputs(mfa);

            var result = Client.MapReduce(mr);

            result.IsSuccess.ShouldBeTrue();

            var mrResult = result.Value;

            mrResult.PhaseResults.Count().ShouldEqual(1);

            mrResult.PhaseResults.ElementAt(0).Values.ShouldNotBeNull();
        }
        public void SearchingByNameReturnsTheObjectId()
        {
            Client.Put(new RiakObject(Bucket, RiakSearchKey, RiakSearchDoc, RiakConstants.ContentTypes.ApplicationJson));
            Client.Put(new RiakObject(Bucket, RiakSearchKey2, RiakSearchDoc2, RiakConstants.ContentTypes.ApplicationJson));

            var mr = new RiakMapReduceQuery();

            var modFunArg = new RiakModuleFunctionArgInput
            {
                Module   = "riak_search",
                Function = "mapred_search",
                Arg      = new[] { Bucket, "name:Al*" }
            };

            mr.Inputs(modFunArg);

            var result = Client.MapReduce(mr);

            result.IsSuccess.ShouldBeTrue();

            var mrResult = result.Value;

            mrResult.PhaseResults.Count().ShouldEqual(1);

            mrResult.PhaseResults.ElementAt(0).Values.ShouldNotBeNull();
            // TODO Add data introspection to test - need to verify the results, after all.
        }
        public void SearchingByNameReturnsTheObjectId()
        {
            Client.Put(new RiakObject(Bucket, RiakSearchKey, RiakSearchDoc, RiakConstants.ContentTypes.ApplicationJson));
            Client.Put(new RiakObject(Bucket, RiakSearchKey2, RiakSearchDoc2, RiakConstants.ContentTypes.ApplicationJson));

            var mr = new RiakMapReduceQuery();

            var token = new RiakSearchPhraseToken("Al*");
            var solr  = new SolrQuery {
                Fieldname = "name", QueryPart = token
            };

            var modFunArg = new RiakModuleFunctionArgInput
            {
                Module   = "riak_search",
                Function = "mapred_search",
                Arg      = new[] { Bucket, solr.ToString() }
            };

            mr.Inputs(modFunArg)
            .MapJs(m => m.Source(@"function(value, keydata, arg) { return [value]; }").Keep(true))
            .ReduceJs(r => r.Source(@"function(values, arg) { return values; }").Keep(true));

            var result = Client.MapReduce(mr);

            result.IsSuccess.ShouldBeTrue();

            var mrResult = result.Value;

            mrResult.PhaseResults.Count().ShouldEqual(2);

            mrResult.PhaseResults.ElementAt(0).Values.ShouldNotBeNull();
            mrResult.PhaseResults.ElementAt(1).Values.ShouldNotBeNull();
            // TODO Add data introspection to test - need to verify the results, after all.
        }
Esempio n. 4
0
        public void EnsureMFAInputWithNoArgsSeralizesCorrectly()
        {
            var input = new RiakModuleFunctionArgInput("my_mod", "my_fun", new string[] {});

            var json = Serialize(input.WriteJson);

            Assert.AreEqual("\"inputs\":{\"module\":\"my_mod\",\"function\":\"my_fun\",\"arg\":[]}", json);
        }
Esempio n. 5
0
        public void EnsureMFAInputSeralizesCorrectly()
        {
            var input = new RiakModuleFunctionArgInput("my_mod", "my_fun", new[] { "arg1", "arg2", "arg3" });

            var json = Serialize(input.WriteJson);

            Assert.AreEqual("\"inputs\":{\"module\":\"my_mod\",\"function\":\"my_fun\",\"arg\":[\"arg1\",\"arg2\",\"arg3\"]}", json);
        }
 public RiakMapReduceQuery Inputs(RiakModuleFunctionArgInput riakModFunArgsInput)
 {
     _inputs = riakModFunArgsInput;
     return(this);
 }
 /// <summary>
 /// Add an Erlang Module/Function/Arg combo to the list of inputs.
 /// </summary>
 /// <param name="riakModFunArgsInput">The <see cref="RiakModuleFunctionArgInput"/> to add to the list of inputs.</param>
 /// <returns>A reference to this updated instance, for fluent chaining.</returns>
 public RiakMapReduceQuery Inputs(RiakModuleFunctionArgInput riakModFunArgsInput)
 {
     inputs = riakModFunArgsInput;
     return this;
 }