예제 #1
0
        public List <Triple> FindTriplesAffectingObjectEid(int objectEid)
        {
            var sql = _sqlQueryConstructor.FindTriplesAffectingObjectQuery(objectEid);
            var nameValueCollections = _sqLiteDatabase.ExecuteReader(sql);

            return(CreateTriples(nameValueCollections));
        }
예제 #2
0
        public void FindPredicatesAffectingObject_GetsSqlAndExecutesAsQuery()
        {
            const string sql  = "sql";
            const string path = @"C:\Temp\MYDATABASE.db";

            A.CallTo(() => _databaseBuilder.Build(path)).Returns(_sqLiteDatabase);
            _database.Connect(path);
            var nameValueData = new List <NameValueCollection>
            {
                new NameValueCollection()
                {
                    { "Subject", "1" }, { "Relationship", "0" }, { "Object", "2" }
                }
            };

            A.CallTo(() => _sqlQueryConstructor.FindTriplesAffectingObjectQuery(A <int> .Ignored)).Returns(sql);
            A.CallTo(() => _sqLiteDatabase.ExecuteReader(sql)).Returns(nameValueData);

            _database.FindTriplesAffectingObjectEid(1);

            A.CallTo(() => _sqlQueryConstructor.FindTriplesAffectingObjectQuery(1)).MustHaveHappened();
            A.CallTo(() => _sqLiteDatabase.ExecuteReader(sql)).MustHaveHappened();
        }