Esempio n. 1
0
class EncodeView(APIView):
    encoder = Encoder()

    def post(self, request):
        try:
            text = json.loads(request.body)["text"]
        except JSONDecodeError:
            return HttpResponse("Incorrect input format", status=400)
        result = self.encoder.create_encoded_response(text)
        return HttpResponse(json.dumps({"result": result}))
Esempio n. 2
0
 async def upload(self, request):
     reader = await request.multipart()
     field = await reader.next()
     assert field.name == 'file'
     with open(f'./source/{field.filename}', 'wb') as f:
         while True:
             chunk = await field.read_chunk()
             if not chunk:
                 break
             f.write(chunk)
     new_loop = asyncio.new_event_loop()
     threading.Thread(target=self.bruh, args=(Encoder(
         self.scoped_session, field.filename, self.utils, self.being_encoded), new_loop)).start()
     return web.Response(text=f"Encoded {field.filename} to HLS")
Esempio n. 3
0
from flask import Flask, request, jsonify
from elasticsearch import Elasticsearch

from app.encoder import Encoder
from app.utils import create_es_index, create_faiss_index, es_search, faiss_search

index_name = "corpus"

es = Elasticsearch(["localhost:9200"])
es_indices = create_es_index(es, index=index_name)

encoder = Encoder("small", dimension=256)
faiss_indices = create_faiss_index(encoder)

app = Flask(__name__)


@app.route("/search", methods=["POST"])
def search():
    query = request.json["query"]
    es_result = es_search(es, index_name, query)
    faiss_result = faiss_search(encoder, faiss_indices, query)
    result = {
        "elastic": es_result,
        "faiss": faiss_result,
    }
    return jsonify(result)


@app.route("/")
def index():
Esempio n. 4
0
def testEncodeNullBulkString():
    out = Encoder.encodeBulkString("")
    assert out == b'$-1\r\n'
Esempio n. 5
0
def testEncodeBulkString1():
    out = Encoder.encodeBulkString("hello")
    assert out == b'$5\r\nhello\r\n'
Esempio n. 6
0
def testEncodeSimpleString2():
    out = Encoder.encodeSimpleString("HeLLOComPUTER")
    assert out == b'+HeLLOComPUTER\r\n'
Esempio n. 7
0
def testEncodeBulkStringWithSpaces():
    out = Encoder.encodeBulkString("Hello World This is MoM")
    assert out == b'$23\r\nHello World This is MoM\r\n'
Esempio n. 8
0
def testEncodeSimpleString1():
    encoder = Encoder()
    out = Encoder.encodeSimpleString("helloWorld")
    assert out == b'+helloWorld\r\n'
Esempio n. 9
0
def testGetLengthInStr():
    out = Encoder.getLengthInStr(15)
    assert out == "15"
Esempio n. 10
0
def testEncodeBulkString2():
    out = Encoder.encodeBulkString("helloworld")
    assert out == b'$10\r\nhelloworld\r\n'
Esempio n. 11
0
 def test_when_custom_separator_returns_correct_response(self):
     original_text = 'some text for test'
     custom_separator = '--separator--'
     custom_encoder = Encoder(custom_separator)
     encoder_result = custom_encoder.create_encoded_response(original_text)
     assert custom_separator in encoder_result
Esempio n. 12
0
from django.test import TestCase

from app.decoder import Decoder, IncorrectInputException
from app.encoder import Encoder

decoder = Decoder()
encoder = Encoder()


class EncoderTestCase(TestCase):
    def test_when_encodes_returns_correct_sorted_words(self):
        original_text = 'some (text) for, test!'
        encoder_result = encoder.create_encoded_response(original_text)
        sorted_string = encoder_result.split('\n-weird-\n')[2]
        assert sorted_string == 'for some test text'

    def test_encodes_with_default_separator(self):
        original_text = 'some? text|| for, test'
        encoder_result = encoder.create_encoded_response(original_text)
        assert '\n-weird-\n' in encoder_result

    def test_when_empty_string_returns_separators(self):
        original_text = ''
        encoder_result = encoder.create_encoded_response(original_text)
        assert encoder_result == '\n-weird-\n\n-weird-\n'

    def test_when_numer_input_encodes_correctly(self):
        original_text = 123
        encoder_result = encoder.create_encoded_response(original_text)
        assert encoder_result == '\n-weird-\n123\n-weird-\n123'